// using System; using Content.Server.Database; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable namespace Content.Server.Database.Migrations.Sqlite { [DbContext(typeof(SqliteServerDbContext))] [Migration("20230725193058_AdminNotesImprovementsForeignKeys")] partial class AdminNotesImprovementsForeignKeys { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder.HasAnnotation("ProductVersion", "7.0.4"); modelBuilder.Entity("Content.Server.Database.Admin", b => { b.Property("UserId") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("user_id"); b.Property("AdminRankId") .HasColumnType("INTEGER") .HasColumnName("admin_rank_id"); b.Property("Title") .HasColumnType("TEXT") .HasColumnName("title"); b.HasKey("UserId") .HasName("PK_admin"); b.HasIndex("AdminRankId") .HasDatabaseName("IX_admin_admin_rank_id"); b.ToTable("admin", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminFlag", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("admin_flag_id"); b.Property("AdminId") .HasColumnType("TEXT") .HasColumnName("admin_id"); b.Property("Flag") .IsRequired() .HasColumnType("TEXT") .HasColumnName("flag"); b.Property("Negative") .HasColumnType("INTEGER") .HasColumnName("negative"); b.HasKey("Id") .HasName("PK_admin_flag"); b.HasIndex("AdminId") .HasDatabaseName("IX_admin_flag_admin_id"); b.HasIndex("Flag", "AdminId") .IsUnique(); b.ToTable("admin_flag", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("admin_log_id"); b.Property("RoundId") .HasColumnType("INTEGER") .HasColumnName("round_id"); b.Property("Date") .HasColumnType("TEXT") .HasColumnName("date"); b.Property("Impact") .HasColumnType("INTEGER") .HasColumnName("impact"); b.Property("Json") .IsRequired() .HasColumnType("jsonb") .HasColumnName("json"); b.Property("Message") .IsRequired() .HasColumnType("TEXT") .HasColumnName("message"); b.Property("Type") .HasColumnType("INTEGER") .HasColumnName("type"); b.HasKey("Id", "RoundId") .HasName("PK_admin_log"); b.HasIndex("Date"); b.HasIndex("RoundId") .HasDatabaseName("IX_admin_log_round_id"); b.HasIndex("Type") .HasDatabaseName("IX_admin_log_type"); b.ToTable("admin_log", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminLogEntity", b => { b.Property("Uid") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("uid"); b.Property("AdminLogId") .HasColumnType("INTEGER") .HasColumnName("admin_log_id"); b.Property("AdminLogRoundId") .HasColumnType("INTEGER") .HasColumnName("admin_log_round_id"); b.Property("Name") .HasColumnType("TEXT") .HasColumnName("name"); b.HasKey("Uid") .HasName("PK_admin_log_entity"); b.HasIndex("AdminLogId", "AdminLogRoundId") .HasDatabaseName("IX_admin_log_entity_admin_log_id_admin_log_round_id"); b.ToTable("admin_log_entity", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminLogPlayer", b => { b.Property("PlayerUserId") .HasColumnType("TEXT") .HasColumnName("player_user_id"); b.Property("LogId") .HasColumnType("INTEGER") .HasColumnName("log_id"); b.Property("RoundId") .HasColumnType("INTEGER") .HasColumnName("round_id"); b.HasKey("PlayerUserId", "LogId", "RoundId") .HasName("PK_admin_log_player"); b.HasIndex("LogId", "RoundId"); b.ToTable("admin_log_player", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminMessage", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("admin_messages_id"); b.Property("CreatedAt") .HasColumnType("TEXT") .HasColumnName("created_at"); b.Property("CreatedById") .HasColumnType("TEXT") .HasColumnName("created_by_id"); b.Property("Deleted") .HasColumnType("INTEGER") .HasColumnName("deleted"); b.Property("DeletedAt") .HasColumnType("TEXT") .HasColumnName("deleted_at"); b.Property("DeletedById") .HasColumnType("TEXT") .HasColumnName("deleted_by_id"); b.Property("ExpirationTime") .HasColumnType("TEXT") .HasColumnName("expiration_time"); b.Property("LastEditedAt") .HasColumnType("TEXT") .HasColumnName("last_edited_at"); b.Property("LastEditedById") .HasColumnType("TEXT") .HasColumnName("last_edited_by_id"); b.Property("Message") .IsRequired() .HasMaxLength(4096) .HasColumnType("TEXT") .HasColumnName("message"); b.Property("PlayerUserId") .HasColumnType("TEXT") .HasColumnName("player_user_id"); b.Property("PlaytimeAtNote") .HasColumnType("TEXT") .HasColumnName("playtime_at_note"); b.Property("RoundId") .HasColumnType("INTEGER") .HasColumnName("round_id"); b.Property("Seen") .HasColumnType("INTEGER") .HasColumnName("seen"); b.HasKey("Id") .HasName("PK_admin_messages"); b.HasIndex("CreatedById"); b.HasIndex("DeletedById"); b.HasIndex("LastEditedById"); b.HasIndex("PlayerUserId") .HasDatabaseName("IX_admin_messages_player_user_id"); b.HasIndex("RoundId") .HasDatabaseName("IX_admin_messages_round_id"); b.ToTable("admin_messages", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminNote", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("admin_notes_id"); b.Property("CreatedAt") .HasColumnType("TEXT") .HasColumnName("created_at"); b.Property("CreatedById") .HasColumnType("TEXT") .HasColumnName("created_by_id"); b.Property("Deleted") .HasColumnType("INTEGER") .HasColumnName("deleted"); b.Property("DeletedAt") .HasColumnType("TEXT") .HasColumnName("deleted_at"); b.Property("DeletedById") .HasColumnType("TEXT") .HasColumnName("deleted_by_id"); b.Property("ExpirationTime") .HasColumnType("TEXT") .HasColumnName("expiration_time"); b.Property("LastEditedAt") .IsRequired() .HasColumnType("TEXT") .HasColumnName("last_edited_at"); b.Property("LastEditedById") .HasColumnType("TEXT") .HasColumnName("last_edited_by_id"); b.Property("Message") .IsRequired() .HasMaxLength(4096) .HasColumnType("TEXT") .HasColumnName("message"); b.Property("PlayerUserId") .HasColumnType("TEXT") .HasColumnName("player_user_id"); b.Property("PlaytimeAtNote") .HasColumnType("TEXT") .HasColumnName("playtime_at_note"); b.Property("RoundId") .HasColumnType("INTEGER") .HasColumnName("round_id"); b.Property("Secret") .HasColumnType("INTEGER") .HasColumnName("secret"); b.Property("Severity") .HasColumnType("INTEGER") .HasColumnName("severity"); b.HasKey("Id") .HasName("PK_admin_notes"); b.HasIndex("CreatedById"); b.HasIndex("DeletedById"); b.HasIndex("LastEditedById"); b.HasIndex("PlayerUserId") .HasDatabaseName("IX_admin_notes_player_user_id"); b.HasIndex("RoundId") .HasDatabaseName("IX_admin_notes_round_id"); b.ToTable("admin_notes", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminRank", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("admin_rank_id"); b.Property("Name") .IsRequired() .HasColumnType("TEXT") .HasColumnName("name"); b.HasKey("Id") .HasName("PK_admin_rank"); b.ToTable("admin_rank", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminRankFlag", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("admin_rank_flag_id"); b.Property("AdminRankId") .HasColumnType("INTEGER") .HasColumnName("admin_rank_id"); b.Property("Flag") .IsRequired() .HasColumnType("TEXT") .HasColumnName("flag"); b.HasKey("Id") .HasName("PK_admin_rank_flag"); b.HasIndex("AdminRankId"); b.HasIndex("Flag", "AdminRankId") .IsUnique(); b.ToTable("admin_rank_flag", (string)null); }); modelBuilder.Entity("Content.Server.Database.AdminWatchlist", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("admin_watchlists_id"); b.Property("CreatedAt") .HasColumnType("TEXT") .HasColumnName("created_at"); b.Property("CreatedById") .HasColumnType("TEXT") .HasColumnName("created_by_id"); b.Property("Deleted") .HasColumnType("INTEGER") .HasColumnName("deleted"); b.Property("DeletedAt") .HasColumnType("TEXT") .HasColumnName("deleted_at"); b.Property("DeletedById") .HasColumnType("TEXT") .HasColumnName("deleted_by_id"); b.Property("ExpirationTime") .HasColumnType("TEXT") .HasColumnName("expiration_time"); b.Property("LastEditedAt") .IsRequired() .HasColumnType("TEXT") .HasColumnName("last_edited_at"); b.Property("LastEditedById") .HasColumnType("TEXT") .HasColumnName("last_edited_by_id"); b.Property("Message") .IsRequired() .HasMaxLength(4096) .HasColumnType("TEXT") .HasColumnName("message"); b.Property("PlayerUserId") .HasColumnType("TEXT") .HasColumnName("player_user_id"); b.Property("PlaytimeAtNote") .HasColumnType("TEXT") .HasColumnName("playtime_at_note"); b.Property("RoundId") .HasColumnType("INTEGER") .HasColumnName("round_id"); b.HasKey("Id") .HasName("PK_admin_watchlists"); b.HasIndex("CreatedById"); b.HasIndex("DeletedById"); b.HasIndex("LastEditedById"); b.HasIndex("PlayerUserId") .HasDatabaseName("IX_admin_watchlists_player_user_id"); b.HasIndex("RoundId") .HasDatabaseName("IX_admin_watchlists_round_id"); b.ToTable("admin_watchlists", (string)null); }); modelBuilder.Entity("Content.Server.Database.Antag", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("antag_id"); b.Property("AntagName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("antag_name"); b.Property("ProfileId") .HasColumnType("INTEGER") .HasColumnName("profile_id"); b.HasKey("Id") .HasName("PK_antag"); b.HasIndex("ProfileId", "AntagName") .IsUnique(); b.ToTable("antag", (string)null); }); modelBuilder.Entity("Content.Server.Database.AssignedUserId", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("assigned_user_id_id"); b.Property("UserId") .HasColumnType("TEXT") .HasColumnName("user_id"); b.Property("UserName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("user_name"); b.HasKey("Id") .HasName("PK_assigned_user_id"); b.HasIndex("UserId") .IsUnique(); b.HasIndex("UserName") .IsUnique(); b.ToTable("assigned_user_id", (string)null); }); modelBuilder.Entity("Content.Server.Database.ConnectionLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("connection_log_id"); b.Property("Address") .IsRequired() .HasColumnType("TEXT") .HasColumnName("address"); b.Property("Denied") .HasColumnType("INTEGER") .HasColumnName("denied"); b.Property("HWId") .HasColumnType("BLOB") .HasColumnName("hwid"); b.Property("Time") .HasColumnType("TEXT") .HasColumnName("time"); b.Property("UserId") .HasColumnType("TEXT") .HasColumnName("user_id"); b.Property("UserName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("user_name"); b.HasKey("Id") .HasName("PK_connection_log"); b.HasIndex("UserId"); b.ToTable("connection_log", (string)null); }); modelBuilder.Entity("Content.Server.Database.Job", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("job_id"); b.Property("JobName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("job_name"); b.Property("Priority") .HasColumnType("INTEGER") .HasColumnName("priority"); b.Property("ProfileId") .HasColumnType("INTEGER") .HasColumnName("profile_id"); b.HasKey("Id") .HasName("PK_job"); b.HasIndex("ProfileId"); b.HasIndex("ProfileId", "JobName") .IsUnique(); b.HasIndex(new[] { "ProfileId" }, "IX_job_one_high_priority") .IsUnique() .HasFilter("priority = 3"); b.ToTable("job", (string)null); }); modelBuilder.Entity("Content.Server.Database.PlayTime", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("play_time_id"); b.Property("PlayerId") .HasColumnType("TEXT") .HasColumnName("player_id"); b.Property("TimeSpent") .HasColumnType("TEXT") .HasColumnName("time_spent"); b.Property("Tracker") .IsRequired() .HasColumnType("TEXT") .HasColumnName("tracker"); b.HasKey("Id") .HasName("PK_play_time"); b.HasIndex("PlayerId", "Tracker") .IsUnique(); b.ToTable("play_time", (string)null); }); modelBuilder.Entity("Content.Server.Database.Player", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("player_id"); b.Property("FirstSeenTime") .HasColumnType("TEXT") .HasColumnName("first_seen_time"); b.Property("LastReadRules") .HasColumnType("TEXT") .HasColumnName("last_read_rules"); b.Property("LastSeenAddress") .IsRequired() .HasColumnType("TEXT") .HasColumnName("last_seen_address"); b.Property("LastSeenHWId") .HasColumnType("BLOB") .HasColumnName("last_seen_hwid"); b.Property("LastSeenTime") .HasColumnType("TEXT") .HasColumnName("last_seen_time"); b.Property("LastSeenUserName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("last_seen_user_name"); b.Property("UserId") .HasColumnType("TEXT") .HasColumnName("user_id"); b.HasKey("Id") .HasName("PK_player"); b.HasAlternateKey("UserId") .HasName("ak_player_user_id"); b.HasIndex("LastSeenUserName"); b.HasIndex("UserId") .IsUnique(); b.ToTable("player", (string)null); }); modelBuilder.Entity("Content.Server.Database.Preference", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("preference_id"); b.Property("AdminOOCColor") .IsRequired() .HasColumnType("TEXT") .HasColumnName("admin_ooc_color"); b.Property("SelectedCharacterSlot") .HasColumnType("INTEGER") .HasColumnName("selected_character_slot"); b.Property("UserId") .HasColumnType("TEXT") .HasColumnName("user_id"); b.HasKey("Id") .HasName("PK_preference"); b.HasIndex("UserId") .IsUnique(); b.ToTable("preference", (string)null); }); modelBuilder.Entity("Content.Server.Database.Profile", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("profile_id"); b.Property("Age") .HasColumnType("INTEGER") .HasColumnName("age"); b.Property("Backpack") .IsRequired() .HasColumnType("TEXT") .HasColumnName("backpack"); b.Property("CharacterName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("char_name"); b.Property("Clothing") .IsRequired() .HasColumnType("TEXT") .HasColumnName("clothing"); b.Property("EyeColor") .IsRequired() .HasColumnType("TEXT") .HasColumnName("eye_color"); b.Property("FacialHairColor") .IsRequired() .HasColumnType("TEXT") .HasColumnName("facial_hair_color"); b.Property("FacialHairName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("facial_hair_name"); b.Property("FlavorText") .IsRequired() .HasColumnType("TEXT") .HasColumnName("flavor_text"); b.Property("Gender") .IsRequired() .HasColumnType("TEXT") .HasColumnName("gender"); b.Property("HairColor") .IsRequired() .HasColumnType("TEXT") .HasColumnName("hair_color"); b.Property("HairName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("hair_name"); b.Property("Markings") .HasColumnType("jsonb") .HasColumnName("markings"); b.Property("PreferenceId") .HasColumnType("INTEGER") .HasColumnName("preference_id"); b.Property("PreferenceUnavailable") .HasColumnType("INTEGER") .HasColumnName("pref_unavailable"); b.Property("Sex") .IsRequired() .HasColumnType("TEXT") .HasColumnName("sex"); b.Property("SkinColor") .IsRequired() .HasColumnType("TEXT") .HasColumnName("skin_color"); b.Property("Slot") .HasColumnType("INTEGER") .HasColumnName("slot"); b.Property("Species") .IsRequired() .HasColumnType("TEXT") .HasColumnName("species"); b.HasKey("Id") .HasName("PK_profile"); b.HasIndex("PreferenceId") .HasDatabaseName("IX_profile_preference_id"); b.HasIndex("Slot", "PreferenceId") .IsUnique(); b.ToTable("profile", (string)null); }); modelBuilder.Entity("Content.Server.Database.Round", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("round_id"); b.Property("ServerId") .HasColumnType("INTEGER") .HasColumnName("server_id"); b.HasKey("Id") .HasName("PK_round"); b.HasIndex("ServerId") .HasDatabaseName("IX_round_server_id"); b.ToTable("round", (string)null); }); modelBuilder.Entity("Content.Server.Database.Server", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("server_id"); b.Property("Name") .IsRequired() .HasColumnType("TEXT") .HasColumnName("name"); b.HasKey("Id") .HasName("PK_server"); b.ToTable("server", (string)null); }); modelBuilder.Entity("Content.Server.Database.ServerBan", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("server_ban_id"); b.Property("Address") .HasColumnType("TEXT") .HasColumnName("address"); b.Property("AutoDelete") .HasColumnType("INTEGER") .HasColumnName("auto_delete"); b.Property("BanTime") .HasColumnType("TEXT") .HasColumnName("ban_time"); b.Property("BanningAdmin") .HasColumnType("TEXT") .HasColumnName("banning_admin"); b.Property("ExemptFlags") .HasColumnType("INTEGER") .HasColumnName("exempt_flags"); b.Property("ExpirationTime") .HasColumnType("TEXT") .HasColumnName("expiration_time"); b.Property("HWId") .HasColumnType("BLOB") .HasColumnName("hwid"); b.Property("Hidden") .HasColumnType("INTEGER") .HasColumnName("hidden"); b.Property("LastEditedAt") .HasColumnType("TEXT") .HasColumnName("last_edited_at"); b.Property("LastEditedById") .HasColumnType("TEXT") .HasColumnName("last_edited_by_id"); b.Property("PlayerUserId") .HasColumnType("TEXT") .HasColumnName("player_user_id"); b.Property("PlaytimeAtNote") .HasColumnType("TEXT") .HasColumnName("playtime_at_note"); b.Property("Reason") .IsRequired() .HasColumnType("TEXT") .HasColumnName("reason"); b.Property("RoundId") .HasColumnType("INTEGER") .HasColumnName("round_id"); b.Property("Severity") .HasColumnType("INTEGER") .HasColumnName("severity"); b.HasKey("Id") .HasName("PK_server_ban"); b.HasIndex("Address"); b.HasIndex("BanningAdmin"); b.HasIndex("LastEditedById"); b.HasIndex("PlayerUserId") .HasDatabaseName("IX_server_ban_player_user_id"); b.HasIndex("RoundId") .HasDatabaseName("IX_server_ban_round_id"); b.ToTable("server_ban", null, t => { t.HasCheckConstraint("HaveEitherAddressOrUserIdOrHWId", "address IS NOT NULL OR player_user_id IS NOT NULL OR hwid IS NOT NULL"); }); }); modelBuilder.Entity("Content.Server.Database.ServerBanExemption", b => { b.Property("UserId") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("user_id"); b.Property("Flags") .HasColumnType("INTEGER") .HasColumnName("flags"); b.HasKey("UserId") .HasName("PK_server_ban_exemption"); b.ToTable("server_ban_exemption", null, t => { t.HasCheckConstraint("FlagsNotZero", "flags != 0"); }); }); modelBuilder.Entity("Content.Server.Database.ServerBanHit", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("server_ban_hit_id"); b.Property("BanId") .HasColumnType("INTEGER") .HasColumnName("ban_id"); b.Property("ConnectionId") .HasColumnType("INTEGER") .HasColumnName("connection_id"); b.HasKey("Id") .HasName("PK_server_ban_hit"); b.HasIndex("BanId") .HasDatabaseName("IX_server_ban_hit_ban_id"); b.HasIndex("ConnectionId") .HasDatabaseName("IX_server_ban_hit_connection_id"); b.ToTable("server_ban_hit", (string)null); }); modelBuilder.Entity("Content.Server.Database.ServerRoleBan", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("server_role_ban_id"); b.Property("Address") .HasColumnType("TEXT") .HasColumnName("address"); b.Property("BanTime") .HasColumnType("TEXT") .HasColumnName("ban_time"); b.Property("BanningAdmin") .HasColumnType("TEXT") .HasColumnName("banning_admin"); b.Property("ExpirationTime") .HasColumnType("TEXT") .HasColumnName("expiration_time"); b.Property("HWId") .HasColumnType("BLOB") .HasColumnName("hwid"); b.Property("Hidden") .HasColumnType("INTEGER") .HasColumnName("hidden"); b.Property("LastEditedAt") .HasColumnType("TEXT") .HasColumnName("last_edited_at"); b.Property("LastEditedById") .HasColumnType("TEXT") .HasColumnName("last_edited_by_id"); b.Property("PlayerUserId") .HasColumnType("TEXT") .HasColumnName("player_user_id"); b.Property("PlaytimeAtNote") .HasColumnType("TEXT") .HasColumnName("playtime_at_note"); b.Property("Reason") .IsRequired() .HasColumnType("TEXT") .HasColumnName("reason"); b.Property("RoleId") .IsRequired() .HasColumnType("TEXT") .HasColumnName("role_id"); b.Property("RoundId") .HasColumnType("INTEGER") .HasColumnName("round_id"); b.Property("Severity") .HasColumnType("INTEGER") .HasColumnName("severity"); b.HasKey("Id") .HasName("PK_server_role_ban"); b.HasIndex("Address"); b.HasIndex("BanningAdmin"); b.HasIndex("LastEditedById"); b.HasIndex("PlayerUserId") .HasDatabaseName("IX_server_role_ban_player_user_id"); b.HasIndex("RoundId") .HasDatabaseName("IX_server_role_ban_round_id"); b.ToTable("server_role_ban", null, t => { t.HasCheckConstraint("HaveEitherAddressOrUserIdOrHWId", "address IS NOT NULL OR player_user_id IS NOT NULL OR hwid IS NOT NULL"); }); }); modelBuilder.Entity("Content.Server.Database.ServerRoleUnban", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("role_unban_id"); b.Property("BanId") .HasColumnType("INTEGER") .HasColumnName("ban_id"); b.Property("UnbanTime") .HasColumnType("TEXT") .HasColumnName("unban_time"); b.Property("UnbanningAdmin") .HasColumnType("TEXT") .HasColumnName("unbanning_admin"); b.HasKey("Id") .HasName("PK_server_role_unban"); b.HasIndex("BanId") .IsUnique(); b.ToTable("server_role_unban", (string)null); }); modelBuilder.Entity("Content.Server.Database.ServerUnban", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("unban_id"); b.Property("BanId") .HasColumnType("INTEGER") .HasColumnName("ban_id"); b.Property("UnbanTime") .HasColumnType("TEXT") .HasColumnName("unban_time"); b.Property("UnbanningAdmin") .HasColumnType("TEXT") .HasColumnName("unbanning_admin"); b.HasKey("Id") .HasName("PK_server_unban"); b.HasIndex("BanId") .IsUnique(); b.ToTable("server_unban", (string)null); }); modelBuilder.Entity("Content.Server.Database.Trait", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("trait_id"); b.Property("ProfileId") .HasColumnType("INTEGER") .HasColumnName("profile_id"); b.Property("TraitName") .IsRequired() .HasColumnType("TEXT") .HasColumnName("trait_name"); b.HasKey("Id") .HasName("PK_trait"); b.HasIndex("ProfileId", "TraitName") .IsUnique(); b.ToTable("trait", (string)null); }); modelBuilder.Entity("Content.Server.Database.UploadedResourceLog", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER") .HasColumnName("uploaded_resource_log_id"); b.Property("Data") .IsRequired() .HasColumnType("BLOB") .HasColumnName("data"); b.Property("Date") .HasColumnType("TEXT") .HasColumnName("date"); b.Property("Path") .IsRequired() .HasColumnType("TEXT") .HasColumnName("path"); b.Property("UserId") .HasColumnType("TEXT") .HasColumnName("user_id"); b.HasKey("Id") .HasName("PK_uploaded_resource_log"); b.ToTable("uploaded_resource_log", (string)null); }); modelBuilder.Entity("Content.Server.Database.Whitelist", b => { b.Property("UserId") .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasColumnName("user_id"); b.HasKey("UserId") .HasName("PK_whitelist"); b.ToTable("whitelist", (string)null); }); modelBuilder.Entity("PlayerRound", b => { b.Property("PlayersId") .HasColumnType("INTEGER") .HasColumnName("players_id"); b.Property("RoundsId") .HasColumnType("INTEGER") .HasColumnName("rounds_id"); b.HasKey("PlayersId", "RoundsId") .HasName("PK_player_round"); b.HasIndex("RoundsId") .HasDatabaseName("IX_player_round_rounds_id"); b.ToTable("player_round", (string)null); }); modelBuilder.Entity("Content.Server.Database.Admin", b => { b.HasOne("Content.Server.Database.AdminRank", "AdminRank") .WithMany("Admins") .HasForeignKey("AdminRankId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_admin_rank_admin_rank_id"); b.Navigation("AdminRank"); }); modelBuilder.Entity("Content.Server.Database.AdminFlag", b => { b.HasOne("Content.Server.Database.Admin", "Admin") .WithMany("Flags") .HasForeignKey("AdminId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_admin_flag_admin_admin_id"); b.Navigation("Admin"); }); modelBuilder.Entity("Content.Server.Database.AdminLog", b => { b.HasOne("Content.Server.Database.Round", "Round") .WithMany("AdminLogs") .HasForeignKey("RoundId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_admin_log_round_round_id"); b.Navigation("Round"); }); modelBuilder.Entity("Content.Server.Database.AdminLogEntity", b => { b.HasOne("Content.Server.Database.AdminLog", null) .WithMany("Entities") .HasForeignKey("AdminLogId", "AdminLogRoundId") .HasConstraintName("FK_admin_log_entity_admin_log_admin_log_id_admin_log_round_id"); }); modelBuilder.Entity("Content.Server.Database.AdminLogPlayer", b => { b.HasOne("Content.Server.Database.Player", "Player") .WithMany("AdminLogs") .HasForeignKey("PlayerUserId") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_admin_log_player_player_player_user_id"); b.HasOne("Content.Server.Database.AdminLog", "Log") .WithMany("Players") .HasForeignKey("LogId", "RoundId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_admin_log_player_admin_log_log_id_round_id"); b.Navigation("Log"); b.Navigation("Player"); }); modelBuilder.Entity("Content.Server.Database.AdminMessage", b => { b.HasOne("Content.Server.Database.Player", "CreatedBy") .WithMany("AdminMessagesCreated") .HasForeignKey("CreatedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_messages_player_created_by_id"); b.HasOne("Content.Server.Database.Player", "DeletedBy") .WithMany("AdminMessagesDeleted") .HasForeignKey("DeletedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_messages_player_deleted_by_id"); b.HasOne("Content.Server.Database.Player", "LastEditedBy") .WithMany("AdminMessagesLastEdited") .HasForeignKey("LastEditedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_messages_player_last_edited_by_id"); b.HasOne("Content.Server.Database.Player", "Player") .WithMany("AdminMessagesReceived") .HasForeignKey("PlayerUserId") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.Cascade) .HasConstraintName("FK_admin_messages_player_player_user_id"); b.HasOne("Content.Server.Database.Round", "Round") .WithMany() .HasForeignKey("RoundId") .HasConstraintName("FK_admin_messages_round_round_id"); b.Navigation("CreatedBy"); b.Navigation("DeletedBy"); b.Navigation("LastEditedBy"); b.Navigation("Player"); b.Navigation("Round"); }); modelBuilder.Entity("Content.Server.Database.AdminNote", b => { b.HasOne("Content.Server.Database.Player", "CreatedBy") .WithMany("AdminNotesCreated") .HasForeignKey("CreatedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_notes_player_created_by_id"); b.HasOne("Content.Server.Database.Player", "DeletedBy") .WithMany("AdminNotesDeleted") .HasForeignKey("DeletedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_notes_player_deleted_by_id"); b.HasOne("Content.Server.Database.Player", "LastEditedBy") .WithMany("AdminNotesLastEdited") .HasForeignKey("LastEditedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_notes_player_last_edited_by_id"); b.HasOne("Content.Server.Database.Player", "Player") .WithMany("AdminNotesReceived") .HasForeignKey("PlayerUserId") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.Cascade) .HasConstraintName("FK_admin_notes_player_player_user_id"); b.HasOne("Content.Server.Database.Round", "Round") .WithMany() .HasForeignKey("RoundId") .HasConstraintName("FK_admin_notes_round_round_id"); b.Navigation("CreatedBy"); b.Navigation("DeletedBy"); b.Navigation("LastEditedBy"); b.Navigation("Player"); b.Navigation("Round"); }); modelBuilder.Entity("Content.Server.Database.AdminRankFlag", b => { b.HasOne("Content.Server.Database.AdminRank", "Rank") .WithMany("Flags") .HasForeignKey("AdminRankId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_admin_rank_flag_admin_rank_admin_rank_id"); b.Navigation("Rank"); }); modelBuilder.Entity("Content.Server.Database.AdminWatchlist", b => { b.HasOne("Content.Server.Database.Player", "CreatedBy") .WithMany("AdminWatchlistsCreated") .HasForeignKey("CreatedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_watchlists_player_created_by_id"); b.HasOne("Content.Server.Database.Player", "DeletedBy") .WithMany("AdminWatchlistsDeleted") .HasForeignKey("DeletedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_watchlists_player_deleted_by_id"); b.HasOne("Content.Server.Database.Player", "LastEditedBy") .WithMany("AdminWatchlistsLastEdited") .HasForeignKey("LastEditedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_admin_watchlists_player_last_edited_by_id"); b.HasOne("Content.Server.Database.Player", "Player") .WithMany("AdminWatchlistsReceived") .HasForeignKey("PlayerUserId") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.Cascade) .HasConstraintName("FK_admin_watchlists_player_player_user_id"); b.HasOne("Content.Server.Database.Round", "Round") .WithMany() .HasForeignKey("RoundId") .HasConstraintName("FK_admin_watchlists_round_round_id"); b.Navigation("CreatedBy"); b.Navigation("DeletedBy"); b.Navigation("LastEditedBy"); b.Navigation("Player"); b.Navigation("Round"); }); modelBuilder.Entity("Content.Server.Database.Antag", b => { b.HasOne("Content.Server.Database.Profile", "Profile") .WithMany("Antags") .HasForeignKey("ProfileId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_antag_profile_profile_id"); b.Navigation("Profile"); }); modelBuilder.Entity("Content.Server.Database.Job", b => { b.HasOne("Content.Server.Database.Profile", "Profile") .WithMany("Jobs") .HasForeignKey("ProfileId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_job_profile_profile_id"); b.Navigation("Profile"); }); modelBuilder.Entity("Content.Server.Database.Profile", b => { b.HasOne("Content.Server.Database.Preference", "Preference") .WithMany("Profiles") .HasForeignKey("PreferenceId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_profile_preference_preference_id"); b.Navigation("Preference"); }); modelBuilder.Entity("Content.Server.Database.Round", b => { b.HasOne("Content.Server.Database.Server", "Server") .WithMany("Rounds") .HasForeignKey("ServerId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_round_server_server_id"); b.Navigation("Server"); }); modelBuilder.Entity("Content.Server.Database.ServerBan", b => { b.HasOne("Content.Server.Database.Player", "CreatedBy") .WithMany("AdminServerBansCreated") .HasForeignKey("BanningAdmin") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_server_ban_player_banning_admin"); b.HasOne("Content.Server.Database.Player", "LastEditedBy") .WithMany("AdminServerBansLastEdited") .HasForeignKey("LastEditedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_server_ban_player_last_edited_by_id"); b.HasOne("Content.Server.Database.Round", "Round") .WithMany() .HasForeignKey("RoundId") .HasConstraintName("FK_server_ban_round_round_id"); b.Navigation("CreatedBy"); b.Navigation("LastEditedBy"); b.Navigation("Round"); }); modelBuilder.Entity("Content.Server.Database.ServerBanHit", b => { b.HasOne("Content.Server.Database.ServerBan", "Ban") .WithMany("BanHits") .HasForeignKey("BanId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_server_ban_hit_server_ban_ban_id"); b.HasOne("Content.Server.Database.ConnectionLog", "Connection") .WithMany("BanHits") .HasForeignKey("ConnectionId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_server_ban_hit_connection_log_connection_id"); b.Navigation("Ban"); b.Navigation("Connection"); }); modelBuilder.Entity("Content.Server.Database.ServerRoleBan", b => { b.HasOne("Content.Server.Database.Player", "CreatedBy") .WithMany("AdminServerRoleBansCreated") .HasForeignKey("BanningAdmin") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_server_role_ban_player_banning_admin"); b.HasOne("Content.Server.Database.Player", "LastEditedBy") .WithMany("AdminServerRoleBansLastEdited") .HasForeignKey("LastEditedById") .HasPrincipalKey("UserId") .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("FK_server_role_ban_player_last_edited_by_id"); b.HasOne("Content.Server.Database.Round", "Round") .WithMany() .HasForeignKey("RoundId") .HasConstraintName("FK_server_role_ban_round_round_id"); b.Navigation("CreatedBy"); b.Navigation("LastEditedBy"); b.Navigation("Round"); }); modelBuilder.Entity("Content.Server.Database.ServerRoleUnban", b => { b.HasOne("Content.Server.Database.ServerRoleBan", "Ban") .WithOne("Unban") .HasForeignKey("Content.Server.Database.ServerRoleUnban", "BanId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_server_role_unban_server_role_ban_ban_id"); b.Navigation("Ban"); }); modelBuilder.Entity("Content.Server.Database.ServerUnban", b => { b.HasOne("Content.Server.Database.ServerBan", "Ban") .WithOne("Unban") .HasForeignKey("Content.Server.Database.ServerUnban", "BanId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_server_unban_server_ban_ban_id"); b.Navigation("Ban"); }); modelBuilder.Entity("Content.Server.Database.Trait", b => { b.HasOne("Content.Server.Database.Profile", "Profile") .WithMany("Traits") .HasForeignKey("ProfileId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_trait_profile_profile_id"); b.Navigation("Profile"); }); modelBuilder.Entity("PlayerRound", b => { b.HasOne("Content.Server.Database.Player", null) .WithMany() .HasForeignKey("PlayersId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_player_round_player_players_id"); b.HasOne("Content.Server.Database.Round", null) .WithMany() .HasForeignKey("RoundsId") .OnDelete(DeleteBehavior.Cascade) .IsRequired() .HasConstraintName("FK_player_round_round_rounds_id"); }); modelBuilder.Entity("Content.Server.Database.Admin", b => { b.Navigation("Flags"); }); modelBuilder.Entity("Content.Server.Database.AdminLog", b => { b.Navigation("Entities"); b.Navigation("Players"); }); modelBuilder.Entity("Content.Server.Database.AdminRank", b => { b.Navigation("Admins"); b.Navigation("Flags"); }); modelBuilder.Entity("Content.Server.Database.ConnectionLog", b => { b.Navigation("BanHits"); }); modelBuilder.Entity("Content.Server.Database.Player", b => { b.Navigation("AdminLogs"); b.Navigation("AdminMessagesCreated"); b.Navigation("AdminMessagesDeleted"); b.Navigation("AdminMessagesLastEdited"); b.Navigation("AdminMessagesReceived"); b.Navigation("AdminNotesCreated"); b.Navigation("AdminNotesDeleted"); b.Navigation("AdminNotesLastEdited"); b.Navigation("AdminNotesReceived"); b.Navigation("AdminServerBansCreated"); b.Navigation("AdminServerBansLastEdited"); b.Navigation("AdminServerRoleBansCreated"); b.Navigation("AdminServerRoleBansLastEdited"); b.Navigation("AdminWatchlistsCreated"); b.Navigation("AdminWatchlistsDeleted"); b.Navigation("AdminWatchlistsLastEdited"); b.Navigation("AdminWatchlistsReceived"); }); modelBuilder.Entity("Content.Server.Database.Preference", b => { b.Navigation("Profiles"); }); modelBuilder.Entity("Content.Server.Database.Profile", b => { b.Navigation("Antags"); b.Navigation("Jobs"); b.Navigation("Traits"); }); modelBuilder.Entity("Content.Server.Database.Round", b => { b.Navigation("AdminLogs"); }); modelBuilder.Entity("Content.Server.Database.Server", b => { b.Navigation("Rounds"); }); modelBuilder.Entity("Content.Server.Database.ServerBan", b => { b.Navigation("BanHits"); b.Navigation("Unban"); }); modelBuilder.Entity("Content.Server.Database.ServerRoleBan", b => { b.Navigation("Unban"); }); #pragma warning restore 612, 618 } } }