20201028210616_Admins.cs 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. using System;
  2. using Microsoft.EntityFrameworkCore.Migrations;
  3. namespace Content.Server.Database.Migrations.Sqlite
  4. {
  5. public partial class Admins : Migration
  6. {
  7. protected override void Up(MigrationBuilder migrationBuilder)
  8. {
  9. migrationBuilder.CreateTable(
  10. name: "admin_rank",
  11. columns: table => new
  12. {
  13. admin_rank_id = table.Column<int>(nullable: false)
  14. .Annotation("Sqlite:Autoincrement", true),
  15. name = table.Column<string>(nullable: false)
  16. },
  17. constraints: table =>
  18. {
  19. table.PrimaryKey("PK_admin_rank", x => x.admin_rank_id);
  20. });
  21. migrationBuilder.CreateTable(
  22. name: "admin",
  23. columns: table => new
  24. {
  25. user_id = table.Column<Guid>(nullable: false),
  26. title = table.Column<string>(nullable: true),
  27. admin_rank_id = table.Column<int>(nullable: true)
  28. },
  29. constraints: table =>
  30. {
  31. table.PrimaryKey("PK_admin", x => x.user_id);
  32. table.ForeignKey(
  33. name: "FK_admin_admin_rank_admin_rank_id",
  34. column: x => x.admin_rank_id,
  35. principalTable: "admin_rank",
  36. principalColumn: "admin_rank_id",
  37. onDelete: ReferentialAction.SetNull);
  38. });
  39. migrationBuilder.CreateTable(
  40. name: "admin_rank_flag",
  41. columns: table => new
  42. {
  43. admin_rank_flag_id = table.Column<int>(nullable: false)
  44. .Annotation("Sqlite:Autoincrement", true),
  45. flag = table.Column<string>(nullable: false),
  46. admin_rank_id = table.Column<int>(nullable: false)
  47. },
  48. constraints: table =>
  49. {
  50. table.PrimaryKey("PK_admin_rank_flag", x => x.admin_rank_flag_id);
  51. table.ForeignKey(
  52. name: "FK_admin_rank_flag_admin_rank_admin_rank_id",
  53. column: x => x.admin_rank_id,
  54. principalTable: "admin_rank",
  55. principalColumn: "admin_rank_id",
  56. onDelete: ReferentialAction.Cascade);
  57. });
  58. migrationBuilder.CreateTable(
  59. name: "admin_flag",
  60. columns: table => new
  61. {
  62. admin_flag_id = table.Column<int>(nullable: false)
  63. .Annotation("Sqlite:Autoincrement", true),
  64. flag = table.Column<string>(nullable: false),
  65. negative = table.Column<bool>(nullable: false),
  66. admin_id = table.Column<Guid>(nullable: false)
  67. },
  68. constraints: table =>
  69. {
  70. table.PrimaryKey("PK_admin_flag", x => x.admin_flag_id);
  71. table.ForeignKey(
  72. name: "FK_admin_flag_admin_admin_id",
  73. column: x => x.admin_id,
  74. principalTable: "admin",
  75. principalColumn: "user_id",
  76. onDelete: ReferentialAction.Cascade);
  77. });
  78. migrationBuilder.CreateIndex(
  79. name: "IX_admin_admin_rank_id",
  80. table: "admin",
  81. column: "admin_rank_id");
  82. migrationBuilder.CreateIndex(
  83. name: "IX_admin_flag_admin_id",
  84. table: "admin_flag",
  85. column: "admin_id");
  86. migrationBuilder.CreateIndex(
  87. name: "IX_admin_rank_flag_admin_rank_id",
  88. table: "admin_rank_flag",
  89. column: "admin_rank_id");
  90. }
  91. protected override void Down(MigrationBuilder migrationBuilder)
  92. {
  93. migrationBuilder.DropTable(
  94. name: "admin_flag");
  95. migrationBuilder.DropTable(
  96. name: "admin_rank_flag");
  97. migrationBuilder.DropTable(
  98. name: "admin");
  99. migrationBuilder.DropTable(
  100. name: "admin_rank");
  101. }
  102. }
  103. }