// using System; using Data; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable namespace Data.Migrations { [DbContext(typeof(AppDbContext))] [Migration("20260120024048_AddTeamMeetingHistory")] partial class AddTeamMeetingHistory { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder.HasAnnotation("ProductVersion", "9.0.8"); modelBuilder.Entity("CareerEventDefinition", b => { b.Property("EventDefinitionId") .HasColumnType("INTEGER"); b.Property("RelatedCareersId") .HasColumnType("INTEGER"); b.HasKey("EventDefinitionId", "RelatedCareersId"); b.HasIndex("RelatedCareersId"); b.ToTable("EventDefinitionCareers", (string)null); }); modelBuilder.Entity("Core.Entities.Career", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Name") .IsRequired() .HasMaxLength(200) .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("Name") .IsUnique(); b.ToTable("Careers"); }); modelBuilder.Entity("Core.Entities.EventDefinition", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("ChapterEligibilityCountRegionals") .HasColumnType("INTEGER"); b.Property("ChapterEligibilityCountState") .HasColumnType("INTEGER"); b.Property("Description") .HasMaxLength(1000) .HasColumnType("TEXT"); b.Property("Documentation") .HasMaxLength(500) .HasColumnType("TEXT"); b.Property("Eligibility") .IsRequired() .HasMaxLength(200) .HasColumnType("TEXT"); b.Property("EventFormat") .IsRequired() .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("LevelOfEffort") .HasColumnType("INTEGER"); b.Property("MaxTeamSize") .HasColumnType("INTEGER"); b.Property("MinTeamSize") .HasColumnType("INTEGER"); b.Property("Name") .IsRequired() .HasMaxLength(128) .HasColumnType("TEXT"); b.Property("Notes") .HasMaxLength(1024) .HasColumnType("TEXT"); b.Property("OnSiteActivity") .HasColumnType("INTEGER"); b.Property("Presubmission") .HasColumnType("INTEGER"); b.Property("SemifinalistActivity") .HasMaxLength(500) .HasColumnType("TEXT"); b.Property("ShortName") .IsRequired() .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("Theme") .HasMaxLength(500) .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("EventFormat"); b.HasIndex("Name") .IsUnique(); b.ToTable("Events"); }); modelBuilder.Entity("Core.Entities.EventOccurrence", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Date") .IsRequired() .HasMaxLength(100) .HasColumnType("TEXT"); b.Property("EndTime") .HasColumnType("TEXT"); b.Property("EventDefinitionId") .HasColumnType("INTEGER"); b.Property("Location") .HasMaxLength(500) .HasColumnType("TEXT"); b.Property("Name") .IsRequired() .HasMaxLength(200) .HasColumnType("TEXT"); b.Property("SpecialEventType") .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("StartTime") .HasColumnType("TEXT"); b.Property("Time") .IsRequired() .HasMaxLength(100) .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("EventDefinitionId"); b.HasIndex("SpecialEventType"); b.HasIndex("StartTime"); b.ToTable("EventOccurrences"); }); modelBuilder.Entity("Core.Entities.Note", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Content") .HasColumnType("TEXT"); b.Property("CreatedAt") .HasColumnType("TEXT"); b.Property("CreatedBy") .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("IsDeleted") .HasColumnType("INTEGER"); b.Property("IsPinned") .HasColumnType("INTEGER"); b.Property("LastModifiedBy") .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("Title") .IsRequired() .HasMaxLength(200) .HasColumnType("TEXT"); b.Property("UpdatedAt") .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("CreatedAt"); b.HasIndex("IsDeleted"); b.HasIndex("IsPinned"); b.HasIndex("Title"); b.ToTable("Notes"); }); modelBuilder.Entity("Core.Entities.NoteHistory", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("ChangeType") .IsRequired() .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("Content") .HasColumnType("TEXT"); b.Property("ModifiedAt") .HasColumnType("TEXT"); b.Property("ModifiedBy") .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("NoteId") .HasColumnType("INTEGER"); b.Property("Title") .IsRequired() .HasMaxLength(200) .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("ModifiedAt"); b.HasIndex("NoteId"); b.HasIndex("NoteId", "ModifiedAt"); b.ToTable("NoteHistories"); }); modelBuilder.Entity("Core.Entities.Student", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Email") .HasMaxLength(255) .HasColumnType("TEXT"); b.Property("FirstName") .IsRequired() .HasMaxLength(100) .HasColumnType("TEXT"); b.Property("Grade") .HasColumnType("INTEGER"); b.Property("LastName") .IsRequired() .HasMaxLength(100) .HasColumnType("TEXT"); b.Property("NationalId") .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("OfficerRole") .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("PhoneNumber") .HasMaxLength(20) .HasColumnType("TEXT"); b.Property("RegionalId") .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("StateId") .HasMaxLength(50) .HasColumnType("TEXT"); b.Property("TsaYear") .HasColumnType("INTEGER"); b.HasKey("Id"); b.HasIndex("Email"); b.HasIndex("Grade"); b.HasIndex("FirstName", "LastName"); b.ToTable("Students"); }); modelBuilder.Entity("Core.Entities.StudentEventRanking", b => { b.Property("StudentId") .HasColumnType("INTEGER"); b.Property("EventDefinitionId") .HasColumnType("INTEGER"); b.Property("Rank") .HasColumnType("INTEGER"); b.HasKey("StudentId", "EventDefinitionId"); b.HasIndex("EventDefinitionId"); b.HasIndex("Rank"); b.HasIndex("StudentId"); b.ToTable("StudentEventRanking"); }); modelBuilder.Entity("Core.Entities.Team", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("CaptainId") .HasColumnType("INTEGER"); b.Property("EventId") .HasColumnType("INTEGER"); b.Property("Identifier") .HasMaxLength(50) .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("CaptainId"); b.HasIndex("EventId"); b.HasIndex("EventId", "Identifier"); b.ToTable("Teams"); }); modelBuilder.Entity("Core.Entities.TeamMeetingHistory", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("MeetingDate") .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("MeetingDate"); b.ToTable("TeamMeetingHistories"); }); modelBuilder.Entity("StudentTeam", b => { b.Property("StudentsId") .HasColumnType("INTEGER"); b.Property("TeamsId") .HasColumnType("INTEGER"); b.HasKey("StudentsId", "TeamsId"); b.HasIndex("TeamsId"); b.ToTable("TeamStudents", (string)null); }); modelBuilder.Entity("StudentTeamMeetingHistory", b => { b.Property("StudentsId") .HasColumnType("INTEGER"); b.Property("TeamMeetingHistoryId") .HasColumnType("INTEGER"); b.HasKey("StudentsId", "TeamMeetingHistoryId"); b.HasIndex("TeamMeetingHistoryId"); b.ToTable("TeamMeetingHistoryStudents", (string)null); }); modelBuilder.Entity("TeamTeamMeetingHistory", b => { b.Property("TeamMeetingHistoryId") .HasColumnType("INTEGER"); b.Property("TeamsId") .HasColumnType("INTEGER"); b.HasKey("TeamMeetingHistoryId", "TeamsId"); b.HasIndex("TeamsId"); b.ToTable("TeamMeetingHistoryTeams", (string)null); }); modelBuilder.Entity("CareerEventDefinition", b => { b.HasOne("Core.Entities.EventDefinition", null) .WithMany() .HasForeignKey("EventDefinitionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Core.Entities.Career", null) .WithMany() .HasForeignKey("RelatedCareersId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Core.Entities.EventOccurrence", b => { b.HasOne("Core.Entities.EventDefinition", "EventDefinition") .WithMany() .HasForeignKey("EventDefinitionId") .OnDelete(DeleteBehavior.Restrict); b.Navigation("EventDefinition"); }); modelBuilder.Entity("Core.Entities.NoteHistory", b => { b.HasOne("Core.Entities.Note", "Note") .WithMany("NoteHistories") .HasForeignKey("NoteId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Note"); }); modelBuilder.Entity("Core.Entities.StudentEventRanking", b => { b.HasOne("Core.Entities.EventDefinition", "EventDefinition") .WithMany() .HasForeignKey("EventDefinitionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Core.Entities.Student", "Student") .WithMany("EventRankings") .HasForeignKey("StudentId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("EventDefinition"); b.Navigation("Student"); }); modelBuilder.Entity("Core.Entities.Team", b => { b.HasOne("Core.Entities.Student", "Captain") .WithMany() .HasForeignKey("CaptainId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("Core.Entities.EventDefinition", "Event") .WithMany() .HasForeignKey("EventId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Captain"); b.Navigation("Event"); }); modelBuilder.Entity("StudentTeam", b => { b.HasOne("Core.Entities.Student", null) .WithMany() .HasForeignKey("StudentsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Core.Entities.Team", null) .WithMany() .HasForeignKey("TeamsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("StudentTeamMeetingHistory", b => { b.HasOne("Core.Entities.Student", null) .WithMany() .HasForeignKey("StudentsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Core.Entities.TeamMeetingHistory", null) .WithMany() .HasForeignKey("TeamMeetingHistoryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("TeamTeamMeetingHistory", b => { b.HasOne("Core.Entities.TeamMeetingHistory", null) .WithMany() .HasForeignKey("TeamMeetingHistoryId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("Core.Entities.Team", null) .WithMany() .HasForeignKey("TeamsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); }); modelBuilder.Entity("Core.Entities.Note", b => { b.Navigation("NoteHistories"); }); modelBuilder.Entity("Core.Entities.Student", b => { b.Navigation("EventRankings"); }); #pragma warning restore 612, 618 } } }