20230503001739_AdminNotesImprovement.cs 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713
  1. using System;
  2. using Microsoft.EntityFrameworkCore.Migrations;
  3. #nullable disable
  4. namespace Content.Server.Database.Migrations.Sqlite
  5. {
  6. /// <inheritdoc />
  7. public partial class AdminNotesImprovement : Migration
  8. {
  9. /// <inheritdoc />
  10. protected override void Up(MigrationBuilder migrationBuilder)
  11. {
  12. migrationBuilder.DropForeignKey(
  13. name: "FK_admin_notes_player_created_by_id",
  14. table: "admin_notes");
  15. migrationBuilder.DropForeignKey(
  16. name: "FK_admin_notes_player_deleted_by_id",
  17. table: "admin_notes");
  18. migrationBuilder.DropForeignKey(
  19. name: "FK_admin_notes_player_last_edited_by_id",
  20. table: "admin_notes");
  21. migrationBuilder.DropForeignKey(
  22. name: "FK_admin_notes_player_player_user_id",
  23. table: "admin_notes");
  24. migrationBuilder.DropCheckConstraint(
  25. name: "HaveEitherAddressOrUserIdOrHWId",
  26. table: "server_role_ban");
  27. migrationBuilder.DropCheckConstraint(
  28. name: "HaveEitherAddressOrUserIdOrHWId",
  29. table: "server_ban");
  30. migrationBuilder.RenameColumn(
  31. name: "user_id",
  32. table: "server_role_ban",
  33. newName: "player_user_id");
  34. migrationBuilder.RenameIndex(
  35. name: "IX_server_role_ban_user_id",
  36. table: "server_role_ban",
  37. newName: "IX_server_role_ban_player_user_id");
  38. migrationBuilder.RenameColumn(
  39. name: "user_id",
  40. table: "server_ban",
  41. newName: "player_user_id");
  42. migrationBuilder.RenameIndex(
  43. name: "IX_server_ban_user_id",
  44. table: "server_ban",
  45. newName: "IX_server_ban_player_user_id");
  46. migrationBuilder.RenameColumn(
  47. name: "shown_to_player",
  48. table: "admin_notes",
  49. newName: "secret");
  50. migrationBuilder.UpdateData(
  51. table: "admin_notes",
  52. keyColumn: "secret",
  53. keyValue: false,
  54. column: "secret",
  55. value: true);
  56. migrationBuilder.AddColumn<bool>(
  57. name: "hidden",
  58. table: "server_role_ban",
  59. type: "INTEGER",
  60. nullable: false,
  61. defaultValue: false);
  62. migrationBuilder.AddColumn<DateTime>(
  63. name: "last_edited_at",
  64. table: "server_role_ban",
  65. type: "TEXT",
  66. nullable: true);
  67. migrationBuilder.AddColumn<Guid>(
  68. name: "last_edited_by_id",
  69. table: "server_role_ban",
  70. type: "TEXT",
  71. nullable: true);
  72. migrationBuilder.AddColumn<TimeSpan>(
  73. name: "playtime_at_note",
  74. table: "server_role_ban",
  75. type: "TEXT",
  76. nullable: false,
  77. defaultValue: new TimeSpan(0, 0, 0, 0, 0));
  78. migrationBuilder.AddColumn<int>(
  79. name: "round_id",
  80. table: "server_role_ban",
  81. type: "INTEGER",
  82. nullable: true);
  83. migrationBuilder.AddColumn<int>(
  84. name: "severity",
  85. table: "server_role_ban",
  86. type: "INTEGER",
  87. nullable: false,
  88. defaultValue: 2);
  89. migrationBuilder.AddColumn<bool>(
  90. name: "hidden",
  91. table: "server_ban",
  92. type: "INTEGER",
  93. nullable: false,
  94. defaultValue: false);
  95. migrationBuilder.AddColumn<DateTime>(
  96. name: "last_edited_at",
  97. table: "server_ban",
  98. type: "TEXT",
  99. nullable: true);
  100. migrationBuilder.AddColumn<Guid>(
  101. name: "last_edited_by_id",
  102. table: "server_ban",
  103. type: "TEXT",
  104. nullable: true);
  105. migrationBuilder.AddColumn<TimeSpan>(
  106. name: "playtime_at_note",
  107. table: "server_ban",
  108. type: "TEXT",
  109. nullable: false,
  110. defaultValue: new TimeSpan(0, 0, 0, 0, 0));
  111. migrationBuilder.AddColumn<int>(
  112. name: "round_id",
  113. table: "server_ban",
  114. type: "INTEGER",
  115. nullable: true);
  116. migrationBuilder.AddColumn<int>(
  117. name: "severity",
  118. table: "server_ban",
  119. type: "INTEGER",
  120. nullable: false,
  121. defaultValue: 3);
  122. migrationBuilder.AlterColumn<Guid>(
  123. name: "player_user_id",
  124. table: "admin_notes",
  125. type: "TEXT",
  126. nullable: true,
  127. oldClrType: typeof(Guid),
  128. oldType: "TEXT");
  129. migrationBuilder.AlterColumn<Guid>(
  130. name: "last_edited_by_id",
  131. table: "admin_notes",
  132. type: "TEXT",
  133. nullable: true,
  134. oldClrType: typeof(Guid),
  135. oldType: "TEXT");
  136. migrationBuilder.AlterColumn<Guid>(
  137. name: "created_by_id",
  138. table: "admin_notes",
  139. type: "TEXT",
  140. nullable: true,
  141. oldClrType: typeof(Guid),
  142. oldType: "TEXT");
  143. migrationBuilder.AddColumn<DateTime>(
  144. name: "expiration_time",
  145. table: "admin_notes",
  146. type: "TEXT",
  147. nullable: true);
  148. migrationBuilder.AddColumn<int>(
  149. name: "severity",
  150. table: "admin_notes",
  151. type: "INTEGER",
  152. nullable: false,
  153. defaultValue: 1);
  154. migrationBuilder.AddColumn<TimeSpan>(
  155. name: "playtime_at_note",
  156. table: "admin_notes",
  157. type: "TEXT",
  158. nullable: false,
  159. defaultValue: new TimeSpan(0, 0, 0, 0, 0));
  160. migrationBuilder.CreateTable(
  161. name: "admin_messages",
  162. columns: table => new
  163. {
  164. admin_messages_id = table.Column<int>(type: "INTEGER", nullable: false)
  165. .Annotation("Sqlite:Autoincrement", true),
  166. round_id = table.Column<int>(type: "INTEGER", nullable: true),
  167. player_user_id = table.Column<Guid>(type: "TEXT", nullable: true),
  168. playtime_at_note = table.Column<TimeSpan>(type: "TEXT", nullable: false),
  169. message = table.Column<string>(type: "TEXT", maxLength: 4096, nullable: false),
  170. created_by_id = table.Column<Guid>(type: "TEXT", nullable: true),
  171. created_at = table.Column<DateTime>(type: "TEXT", nullable: false),
  172. last_edited_by_id = table.Column<Guid>(type: "TEXT", nullable: true),
  173. last_edited_at = table.Column<DateTime>(type: "TEXT", nullable: true),
  174. expiration_time = table.Column<DateTime>(type: "TEXT", nullable: true),
  175. deleted = table.Column<bool>(type: "INTEGER", nullable: false),
  176. deleted_by_id = table.Column<Guid>(type: "TEXT", nullable: true),
  177. deleted_at = table.Column<DateTime>(type: "TEXT", nullable: true),
  178. seen = table.Column<bool>(type: "INTEGER", nullable: false)
  179. },
  180. constraints: table =>
  181. {
  182. table.PrimaryKey("PK_admin_messages", x => x.admin_messages_id);
  183. table.ForeignKey(
  184. name: "FK_admin_messages_player_created_by_id",
  185. column: x => x.created_by_id,
  186. principalTable: "player",
  187. principalColumn: "user_id",
  188. onDelete: ReferentialAction.SetNull);
  189. table.ForeignKey(
  190. name: "FK_admin_messages_player_deleted_by_id",
  191. column: x => x.deleted_by_id,
  192. principalTable: "player",
  193. principalColumn: "user_id",
  194. onDelete: ReferentialAction.SetNull);
  195. table.ForeignKey(
  196. name: "FK_admin_messages_player_last_edited_by_id",
  197. column: x => x.last_edited_by_id,
  198. principalTable: "player",
  199. principalColumn: "user_id",
  200. onDelete: ReferentialAction.SetNull);
  201. table.ForeignKey(
  202. name: "FK_admin_messages_player_player_user_id",
  203. column: x => x.player_user_id,
  204. principalTable: "player",
  205. principalColumn: "user_id",
  206. onDelete: ReferentialAction.SetNull);
  207. table.ForeignKey(
  208. name: "FK_admin_messages_round_round_id",
  209. column: x => x.round_id,
  210. principalTable: "round",
  211. principalColumn: "round_id");
  212. });
  213. migrationBuilder.CreateTable(
  214. name: "admin_watchlists",
  215. columns: table => new
  216. {
  217. admin_watchlists_id = table.Column<int>(type: "INTEGER", nullable: false)
  218. .Annotation("Sqlite:Autoincrement", true),
  219. round_id = table.Column<int>(type: "INTEGER", nullable: true),
  220. player_user_id = table.Column<Guid>(type: "TEXT", nullable: true),
  221. playtime_at_note = table.Column<TimeSpan>(type: "TEXT", nullable: false),
  222. message = table.Column<string>(type: "TEXT", maxLength: 4096, nullable: false),
  223. created_by_id = table.Column<Guid>(type: "TEXT", nullable: true),
  224. created_at = table.Column<DateTime>(type: "TEXT", nullable: false),
  225. last_edited_by_id = table.Column<Guid>(type: "TEXT", nullable: true),
  226. last_edited_at = table.Column<DateTime>(type: "TEXT", nullable: false),
  227. expiration_time = table.Column<DateTime>(type: "TEXT", nullable: true),
  228. deleted = table.Column<bool>(type: "INTEGER", nullable: false),
  229. deleted_by_id = table.Column<Guid>(type: "TEXT", nullable: true),
  230. deleted_at = table.Column<DateTime>(type: "TEXT", nullable: true)
  231. },
  232. constraints: table =>
  233. {
  234. table.PrimaryKey("PK_admin_watchlists", x => x.admin_watchlists_id);
  235. table.ForeignKey(
  236. name: "FK_admin_watchlists_player_created_by_id",
  237. column: x => x.created_by_id,
  238. principalTable: "player",
  239. principalColumn: "user_id",
  240. onDelete: ReferentialAction.SetNull);
  241. table.ForeignKey(
  242. name: "FK_admin_watchlists_player_deleted_by_id",
  243. column: x => x.deleted_by_id,
  244. principalTable: "player",
  245. principalColumn: "user_id",
  246. onDelete: ReferentialAction.SetNull);
  247. table.ForeignKey(
  248. name: "FK_admin_watchlists_player_last_edited_by_id",
  249. column: x => x.last_edited_by_id,
  250. principalTable: "player",
  251. principalColumn: "user_id",
  252. onDelete: ReferentialAction.SetNull);
  253. table.ForeignKey(
  254. name: "FK_admin_watchlists_player_player_user_id",
  255. column: x => x.player_user_id,
  256. principalTable: "player",
  257. principalColumn: "user_id",
  258. onDelete: ReferentialAction.SetNull);
  259. table.ForeignKey(
  260. name: "FK_admin_watchlists_round_round_id",
  261. column: x => x.round_id,
  262. principalTable: "round",
  263. principalColumn: "round_id");
  264. });
  265. migrationBuilder.CreateIndex(
  266. name: "IX_server_role_ban_banning_admin",
  267. table: "server_role_ban",
  268. column: "banning_admin");
  269. migrationBuilder.CreateIndex(
  270. name: "IX_server_role_ban_last_edited_by_id",
  271. table: "server_role_ban",
  272. column: "last_edited_by_id");
  273. migrationBuilder.CreateIndex(
  274. name: "IX_server_role_ban_round_id",
  275. table: "server_role_ban",
  276. column: "round_id");
  277. migrationBuilder.AddCheckConstraint(
  278. name: "HaveEitherAddressOrUserIdOrHWId",
  279. table: "server_role_ban",
  280. sql: "address IS NOT NULL OR player_user_id IS NOT NULL OR hwid IS NOT NULL");
  281. migrationBuilder.CreateIndex(
  282. name: "IX_server_ban_banning_admin",
  283. table: "server_ban",
  284. column: "banning_admin");
  285. migrationBuilder.CreateIndex(
  286. name: "IX_server_ban_last_edited_by_id",
  287. table: "server_ban",
  288. column: "last_edited_by_id");
  289. migrationBuilder.CreateIndex(
  290. name: "IX_server_ban_round_id",
  291. table: "server_ban",
  292. column: "round_id");
  293. migrationBuilder.AddCheckConstraint(
  294. name: "HaveEitherAddressOrUserIdOrHWId",
  295. table: "server_ban",
  296. sql: "address IS NOT NULL OR player_user_id IS NOT NULL OR hwid IS NOT NULL");
  297. migrationBuilder.CreateIndex(
  298. name: "IX_admin_messages_created_by_id",
  299. table: "admin_messages",
  300. column: "created_by_id");
  301. migrationBuilder.CreateIndex(
  302. name: "IX_admin_messages_deleted_by_id",
  303. table: "admin_messages",
  304. column: "deleted_by_id");
  305. migrationBuilder.CreateIndex(
  306. name: "IX_admin_messages_last_edited_by_id",
  307. table: "admin_messages",
  308. column: "last_edited_by_id");
  309. migrationBuilder.CreateIndex(
  310. name: "IX_admin_messages_player_user_id",
  311. table: "admin_messages",
  312. column: "player_user_id");
  313. migrationBuilder.CreateIndex(
  314. name: "IX_admin_messages_round_id",
  315. table: "admin_messages",
  316. column: "round_id");
  317. migrationBuilder.CreateIndex(
  318. name: "IX_admin_watchlists_created_by_id",
  319. table: "admin_watchlists",
  320. column: "created_by_id");
  321. migrationBuilder.CreateIndex(
  322. name: "IX_admin_watchlists_deleted_by_id",
  323. table: "admin_watchlists",
  324. column: "deleted_by_id");
  325. migrationBuilder.CreateIndex(
  326. name: "IX_admin_watchlists_last_edited_by_id",
  327. table: "admin_watchlists",
  328. column: "last_edited_by_id");
  329. migrationBuilder.CreateIndex(
  330. name: "IX_admin_watchlists_player_user_id",
  331. table: "admin_watchlists",
  332. column: "player_user_id");
  333. migrationBuilder.CreateIndex(
  334. name: "IX_admin_watchlists_round_id",
  335. table: "admin_watchlists",
  336. column: "round_id");
  337. migrationBuilder.AddForeignKey(
  338. name: "FK_admin_notes_player_created_by_id",
  339. table: "admin_notes",
  340. column: "created_by_id",
  341. principalTable: "player",
  342. principalColumn: "user_id",
  343. onDelete: ReferentialAction.SetNull);
  344. migrationBuilder.AddForeignKey(
  345. name: "FK_admin_notes_player_deleted_by_id",
  346. table: "admin_notes",
  347. column: "deleted_by_id",
  348. principalTable: "player",
  349. principalColumn: "user_id",
  350. onDelete: ReferentialAction.SetNull);
  351. migrationBuilder.AddForeignKey(
  352. name: "FK_admin_notes_player_last_edited_by_id",
  353. table: "admin_notes",
  354. column: "last_edited_by_id",
  355. principalTable: "player",
  356. principalColumn: "user_id",
  357. onDelete: ReferentialAction.SetNull);
  358. migrationBuilder.AddForeignKey(
  359. name: "FK_admin_notes_player_player_user_id",
  360. table: "admin_notes",
  361. column: "player_user_id",
  362. principalTable: "player",
  363. principalColumn: "user_id",
  364. onDelete: ReferentialAction.SetNull);
  365. migrationBuilder.AddForeignKey(
  366. name: "FK_server_ban_player_banning_admin",
  367. table: "server_ban",
  368. column: "banning_admin",
  369. principalTable: "player",
  370. principalColumn: "user_id",
  371. onDelete: ReferentialAction.SetNull);
  372. migrationBuilder.AddForeignKey(
  373. name: "FK_server_ban_player_last_edited_by_id",
  374. table: "server_ban",
  375. column: "last_edited_by_id",
  376. principalTable: "player",
  377. principalColumn: "user_id",
  378. onDelete: ReferentialAction.SetNull);
  379. migrationBuilder.AddForeignKey(
  380. name: "FK_server_ban_round_round_id",
  381. table: "server_ban",
  382. column: "round_id",
  383. principalTable: "round",
  384. principalColumn: "round_id");
  385. migrationBuilder.AddForeignKey(
  386. name: "FK_server_role_ban_player_banning_admin",
  387. table: "server_role_ban",
  388. column: "banning_admin",
  389. principalTable: "player",
  390. principalColumn: "user_id",
  391. onDelete: ReferentialAction.SetNull);
  392. migrationBuilder.AddForeignKey(
  393. name: "FK_server_role_ban_player_last_edited_by_id",
  394. table: "server_role_ban",
  395. column: "last_edited_by_id",
  396. principalTable: "player",
  397. principalColumn: "user_id",
  398. onDelete: ReferentialAction.SetNull);
  399. migrationBuilder.AddForeignKey(
  400. name: "FK_server_role_ban_round_round_id",
  401. table: "server_role_ban",
  402. column: "round_id",
  403. principalTable: "round",
  404. principalColumn: "round_id");
  405. }
  406. /// <inheritdoc />
  407. protected override void Down(MigrationBuilder migrationBuilder)
  408. {
  409. migrationBuilder.DropForeignKey(
  410. name: "FK_admin_notes_player_created_by_id",
  411. table: "admin_notes");
  412. migrationBuilder.DropForeignKey(
  413. name: "FK_admin_notes_player_deleted_by_id",
  414. table: "admin_notes");
  415. migrationBuilder.DropForeignKey(
  416. name: "FK_admin_notes_player_last_edited_by_id",
  417. table: "admin_notes");
  418. migrationBuilder.DropForeignKey(
  419. name: "FK_admin_notes_player_player_user_id",
  420. table: "admin_notes");
  421. migrationBuilder.DropForeignKey(
  422. name: "FK_server_ban_player_banning_admin",
  423. table: "server_ban");
  424. migrationBuilder.DropForeignKey(
  425. name: "FK_server_ban_player_last_edited_by_id",
  426. table: "server_ban");
  427. migrationBuilder.DropForeignKey(
  428. name: "FK_server_ban_round_round_id",
  429. table: "server_ban");
  430. migrationBuilder.DropForeignKey(
  431. name: "FK_server_role_ban_player_banning_admin",
  432. table: "server_role_ban");
  433. migrationBuilder.DropForeignKey(
  434. name: "FK_server_role_ban_player_last_edited_by_id",
  435. table: "server_role_ban");
  436. migrationBuilder.DropForeignKey(
  437. name: "FK_server_role_ban_round_round_id",
  438. table: "server_role_ban");
  439. migrationBuilder.DropTable(
  440. name: "admin_messages");
  441. migrationBuilder.DropTable(
  442. name: "admin_watchlists");
  443. migrationBuilder.DropIndex(
  444. name: "IX_server_role_ban_banning_admin",
  445. table: "server_role_ban");
  446. migrationBuilder.DropIndex(
  447. name: "IX_server_role_ban_last_edited_by_id",
  448. table: "server_role_ban");
  449. migrationBuilder.DropIndex(
  450. name: "IX_server_role_ban_round_id",
  451. table: "server_role_ban");
  452. migrationBuilder.DropCheckConstraint(
  453. name: "HaveEitherAddressOrUserIdOrHWId",
  454. table: "server_role_ban");
  455. migrationBuilder.DropIndex(
  456. name: "IX_server_ban_banning_admin",
  457. table: "server_ban");
  458. migrationBuilder.DropIndex(
  459. name: "IX_server_ban_last_edited_by_id",
  460. table: "server_ban");
  461. migrationBuilder.DropIndex(
  462. name: "IX_server_ban_round_id",
  463. table: "server_ban");
  464. migrationBuilder.DropCheckConstraint(
  465. name: "HaveEitherAddressOrUserIdOrHWId",
  466. table: "server_ban");
  467. migrationBuilder.DropColumn(
  468. name: "hidden",
  469. table: "server_role_ban");
  470. migrationBuilder.DropColumn(
  471. name: "last_edited_at",
  472. table: "server_role_ban");
  473. migrationBuilder.DropColumn(
  474. name: "last_edited_by_id",
  475. table: "server_role_ban");
  476. migrationBuilder.DropColumn(
  477. name: "playtime_at_note",
  478. table: "server_role_ban");
  479. migrationBuilder.DropColumn(
  480. name: "round_id",
  481. table: "server_role_ban");
  482. migrationBuilder.DropColumn(
  483. name: "severity",
  484. table: "server_role_ban");
  485. migrationBuilder.DropColumn(
  486. name: "hidden",
  487. table: "server_ban");
  488. migrationBuilder.DropColumn(
  489. name: "last_edited_at",
  490. table: "server_ban");
  491. migrationBuilder.DropColumn(
  492. name: "last_edited_by_id",
  493. table: "server_ban");
  494. migrationBuilder.DropColumn(
  495. name: "playtime_at_note",
  496. table: "server_ban");
  497. migrationBuilder.DropColumn(
  498. name: "round_id",
  499. table: "server_ban");
  500. migrationBuilder.DropColumn(
  501. name: "severity",
  502. table: "server_ban");
  503. migrationBuilder.DropColumn(
  504. name: "expiration_time",
  505. table: "admin_notes");
  506. migrationBuilder.DropColumn(
  507. name: "severity",
  508. table: "admin_notes");
  509. migrationBuilder.DropColumn(
  510. name: "playtime_at_note",
  511. table: "admin_notes");
  512. migrationBuilder.RenameColumn(
  513. name: "player_user_id",
  514. table: "server_role_ban",
  515. newName: "user_id");
  516. migrationBuilder.RenameIndex(
  517. name: "IX_server_role_ban_player_user_id",
  518. table: "server_role_ban",
  519. newName: "IX_server_role_ban_user_id");
  520. migrationBuilder.RenameColumn(
  521. name: "player_user_id",
  522. table: "server_ban",
  523. newName: "user_id");
  524. migrationBuilder.RenameIndex(
  525. name: "IX_server_ban_player_user_id",
  526. table: "server_ban",
  527. newName: "IX_server_ban_user_id");
  528. migrationBuilder.RenameColumn(
  529. name: "secret",
  530. table: "admin_notes",
  531. newName: "shown_to_player");
  532. migrationBuilder.UpdateData(
  533. table: "admin_notes",
  534. keyColumn: "shown_to_player",
  535. keyValue: true,
  536. column: "shown_to_player",
  537. value: false);
  538. migrationBuilder.AlterColumn<Guid>(
  539. name: "player_user_id",
  540. table: "admin_notes",
  541. type: "TEXT",
  542. nullable: false,
  543. defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
  544. oldClrType: typeof(Guid),
  545. oldType: "TEXT",
  546. oldNullable: true);
  547. migrationBuilder.AlterColumn<Guid>(
  548. name: "last_edited_by_id",
  549. table: "admin_notes",
  550. type: "TEXT",
  551. nullable: false,
  552. defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
  553. oldClrType: typeof(Guid),
  554. oldType: "TEXT",
  555. oldNullable: true);
  556. migrationBuilder.AlterColumn<Guid>(
  557. name: "created_by_id",
  558. table: "admin_notes",
  559. type: "TEXT",
  560. nullable: false,
  561. defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
  562. oldClrType: typeof(Guid),
  563. oldType: "TEXT",
  564. oldNullable: true);
  565. migrationBuilder.AddCheckConstraint(
  566. name: "HaveEitherAddressOrUserIdOrHWId",
  567. table: "server_role_ban",
  568. sql: "address IS NOT NULL OR user_id IS NOT NULL OR hwid IS NOT NULL");
  569. migrationBuilder.AddCheckConstraint(
  570. name: "HaveEitherAddressOrUserIdOrHWId",
  571. table: "server_ban",
  572. sql: "address IS NOT NULL OR user_id IS NOT NULL OR hwid IS NOT NULL");
  573. migrationBuilder.AddForeignKey(
  574. name: "FK_admin_notes_player_created_by_id",
  575. table: "admin_notes",
  576. column: "created_by_id",
  577. principalTable: "player",
  578. principalColumn: "user_id",
  579. onDelete: ReferentialAction.Cascade);
  580. migrationBuilder.AddForeignKey(
  581. name: "FK_admin_notes_player_deleted_by_id",
  582. table: "admin_notes",
  583. column: "deleted_by_id",
  584. principalTable: "player",
  585. principalColumn: "user_id");
  586. migrationBuilder.AddForeignKey(
  587. name: "FK_admin_notes_player_last_edited_by_id",
  588. table: "admin_notes",
  589. column: "last_edited_by_id",
  590. principalTable: "player",
  591. principalColumn: "user_id",
  592. onDelete: ReferentialAction.Cascade);
  593. migrationBuilder.AddForeignKey(
  594. name: "FK_admin_notes_player_player_user_id",
  595. table: "admin_notes",
  596. column: "player_user_id",
  597. principalTable: "player",
  598. principalColumn: "user_id",
  599. onDelete: ReferentialAction.Cascade);
  600. }
  601. }
  602. }