20230208134610_init.cs 63 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126
  1. using System;
  2. using Microsoft.EntityFrameworkCore.Migrations;
  3. #nullable disable
  4. namespace BaseService.Migrations
  5. {
  6. /// <inheritdoc />
  7. public partial class init : Migration
  8. {
  9. /// <inheritdoc />
  10. protected override void Up(MigrationBuilder migrationBuilder)
  11. {
  12. migrationBuilder.AlterDatabase()
  13. .Annotation("MySql:CharSet", "utf8mb4");
  14. migrationBuilder.CreateTable(
  15. name: "AbpAuditLogs",
  16. columns: table => new
  17. {
  18. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  19. ApplicationName = table.Column<string>(type: "varchar(96)", maxLength: 96, nullable: true)
  20. .Annotation("MySql:CharSet", "utf8mb4"),
  21. UserId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  22. UserName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  23. .Annotation("MySql:CharSet", "utf8mb4"),
  24. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  25. TenantName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  26. .Annotation("MySql:CharSet", "utf8mb4"),
  27. ImpersonatorUserId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  28. ImpersonatorUserName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  29. .Annotation("MySql:CharSet", "utf8mb4"),
  30. ImpersonatorTenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  31. ImpersonatorTenantName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  32. .Annotation("MySql:CharSet", "utf8mb4"),
  33. ExecutionTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  34. ExecutionDuration = table.Column<int>(type: "int", nullable: false),
  35. ClientIpAddress = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  36. .Annotation("MySql:CharSet", "utf8mb4"),
  37. ClientName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true)
  38. .Annotation("MySql:CharSet", "utf8mb4"),
  39. ClientId = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  40. .Annotation("MySql:CharSet", "utf8mb4"),
  41. CorrelationId = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  42. .Annotation("MySql:CharSet", "utf8mb4"),
  43. BrowserInfo = table.Column<string>(type: "varchar(512)", maxLength: 512, nullable: true)
  44. .Annotation("MySql:CharSet", "utf8mb4"),
  45. HttpMethod = table.Column<string>(type: "varchar(16)", maxLength: 16, nullable: true)
  46. .Annotation("MySql:CharSet", "utf8mb4"),
  47. Url = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  48. .Annotation("MySql:CharSet", "utf8mb4"),
  49. Exceptions = table.Column<string>(type: "longtext", nullable: true)
  50. .Annotation("MySql:CharSet", "utf8mb4"),
  51. Comments = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  52. .Annotation("MySql:CharSet", "utf8mb4"),
  53. HttpStatusCode = table.Column<int>(type: "int", nullable: true),
  54. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  55. .Annotation("MySql:CharSet", "utf8mb4"),
  56. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  57. .Annotation("MySql:CharSet", "utf8mb4")
  58. },
  59. constraints: table =>
  60. {
  61. table.PrimaryKey("PK_AbpAuditLogs", x => x.Id);
  62. })
  63. .Annotation("MySql:CharSet", "utf8mb4");
  64. migrationBuilder.CreateTable(
  65. name: "AbpClaimTypes",
  66. columns: table => new
  67. {
  68. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  69. Name = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  70. .Annotation("MySql:CharSet", "utf8mb4"),
  71. Required = table.Column<bool>(type: "tinyint(1)", nullable: false),
  72. IsStatic = table.Column<bool>(type: "tinyint(1)", nullable: false),
  73. Regex = table.Column<string>(type: "varchar(512)", maxLength: 512, nullable: true)
  74. .Annotation("MySql:CharSet", "utf8mb4"),
  75. RegexDescription = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true)
  76. .Annotation("MySql:CharSet", "utf8mb4"),
  77. Description = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  78. .Annotation("MySql:CharSet", "utf8mb4"),
  79. ValueType = table.Column<int>(type: "int", nullable: false),
  80. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  81. .Annotation("MySql:CharSet", "utf8mb4"),
  82. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  83. .Annotation("MySql:CharSet", "utf8mb4")
  84. },
  85. constraints: table =>
  86. {
  87. table.PrimaryKey("PK_AbpClaimTypes", x => x.Id);
  88. })
  89. .Annotation("MySql:CharSet", "utf8mb4");
  90. migrationBuilder.CreateTable(
  91. name: "AbpLinkUsers",
  92. columns: table => new
  93. {
  94. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  95. SourceUserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  96. SourceTenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  97. TargetUserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  98. TargetTenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  99. },
  100. constraints: table =>
  101. {
  102. table.PrimaryKey("PK_AbpLinkUsers", x => x.Id);
  103. })
  104. .Annotation("MySql:CharSet", "utf8mb4");
  105. migrationBuilder.CreateTable(
  106. name: "AbpOrganizationUnits",
  107. columns: table => new
  108. {
  109. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  110. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  111. ParentId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  112. Code = table.Column<string>(type: "varchar(95)", maxLength: 95, nullable: false)
  113. .Annotation("MySql:CharSet", "utf8mb4"),
  114. DisplayName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  115. .Annotation("MySql:CharSet", "utf8mb4"),
  116. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  117. .Annotation("MySql:CharSet", "utf8mb4"),
  118. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  119. .Annotation("MySql:CharSet", "utf8mb4"),
  120. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  121. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  122. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  123. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  124. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  125. DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  126. DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true)
  127. },
  128. constraints: table =>
  129. {
  130. table.PrimaryKey("PK_AbpOrganizationUnits", x => x.Id);
  131. table.ForeignKey(
  132. name: "FK_AbpOrganizationUnits_AbpOrganizationUnits_ParentId",
  133. column: x => x.ParentId,
  134. principalTable: "AbpOrganizationUnits",
  135. principalColumn: "Id");
  136. })
  137. .Annotation("MySql:CharSet", "utf8mb4");
  138. migrationBuilder.CreateTable(
  139. name: "AbpPermissionGrants",
  140. columns: table => new
  141. {
  142. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  143. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  144. Name = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  145. .Annotation("MySql:CharSet", "utf8mb4"),
  146. ProviderName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false)
  147. .Annotation("MySql:CharSet", "utf8mb4"),
  148. ProviderKey = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false)
  149. .Annotation("MySql:CharSet", "utf8mb4")
  150. },
  151. constraints: table =>
  152. {
  153. table.PrimaryKey("PK_AbpPermissionGrants", x => x.Id);
  154. })
  155. .Annotation("MySql:CharSet", "utf8mb4");
  156. migrationBuilder.CreateTable(
  157. name: "AbpPermissionGroups",
  158. columns: table => new
  159. {
  160. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  161. Name = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  162. .Annotation("MySql:CharSet", "utf8mb4"),
  163. DisplayName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  164. .Annotation("MySql:CharSet", "utf8mb4"),
  165. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  166. .Annotation("MySql:CharSet", "utf8mb4")
  167. },
  168. constraints: table =>
  169. {
  170. table.PrimaryKey("PK_AbpPermissionGroups", x => x.Id);
  171. })
  172. .Annotation("MySql:CharSet", "utf8mb4");
  173. migrationBuilder.CreateTable(
  174. name: "AbpPermissions",
  175. columns: table => new
  176. {
  177. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  178. GroupName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  179. .Annotation("MySql:CharSet", "utf8mb4"),
  180. Name = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  181. .Annotation("MySql:CharSet", "utf8mb4"),
  182. ParentName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true)
  183. .Annotation("MySql:CharSet", "utf8mb4"),
  184. DisplayName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  185. .Annotation("MySql:CharSet", "utf8mb4"),
  186. IsEnabled = table.Column<bool>(type: "tinyint(1)", nullable: false),
  187. MultiTenancySide = table.Column<byte>(type: "tinyint unsigned", nullable: false),
  188. Providers = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true)
  189. .Annotation("MySql:CharSet", "utf8mb4"),
  190. StateCheckers = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  191. .Annotation("MySql:CharSet", "utf8mb4"),
  192. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  193. .Annotation("MySql:CharSet", "utf8mb4")
  194. },
  195. constraints: table =>
  196. {
  197. table.PrimaryKey("PK_AbpPermissions", x => x.Id);
  198. })
  199. .Annotation("MySql:CharSet", "utf8mb4");
  200. migrationBuilder.CreateTable(
  201. name: "AbpRoles",
  202. columns: table => new
  203. {
  204. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  205. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  206. Name = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  207. .Annotation("MySql:CharSet", "utf8mb4"),
  208. NormalizedName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  209. .Annotation("MySql:CharSet", "utf8mb4"),
  210. IsDefault = table.Column<bool>(type: "tinyint(1)", nullable: false),
  211. IsStatic = table.Column<bool>(type: "tinyint(1)", nullable: false),
  212. IsPublic = table.Column<bool>(type: "tinyint(1)", nullable: false),
  213. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  214. .Annotation("MySql:CharSet", "utf8mb4"),
  215. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  216. .Annotation("MySql:CharSet", "utf8mb4")
  217. },
  218. constraints: table =>
  219. {
  220. table.PrimaryKey("PK_AbpRoles", x => x.Id);
  221. })
  222. .Annotation("MySql:CharSet", "utf8mb4");
  223. migrationBuilder.CreateTable(
  224. name: "AbpSecurityLogs",
  225. columns: table => new
  226. {
  227. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  228. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  229. ApplicationName = table.Column<string>(type: "varchar(96)", maxLength: 96, nullable: true)
  230. .Annotation("MySql:CharSet", "utf8mb4"),
  231. Identity = table.Column<string>(type: "varchar(96)", maxLength: 96, nullable: true)
  232. .Annotation("MySql:CharSet", "utf8mb4"),
  233. Action = table.Column<string>(type: "varchar(96)", maxLength: 96, nullable: true)
  234. .Annotation("MySql:CharSet", "utf8mb4"),
  235. UserId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  236. UserName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  237. .Annotation("MySql:CharSet", "utf8mb4"),
  238. TenantName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  239. .Annotation("MySql:CharSet", "utf8mb4"),
  240. ClientId = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  241. .Annotation("MySql:CharSet", "utf8mb4"),
  242. CorrelationId = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  243. .Annotation("MySql:CharSet", "utf8mb4"),
  244. ClientIpAddress = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  245. .Annotation("MySql:CharSet", "utf8mb4"),
  246. BrowserInfo = table.Column<string>(type: "varchar(512)", maxLength: 512, nullable: true)
  247. .Annotation("MySql:CharSet", "utf8mb4"),
  248. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  249. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  250. .Annotation("MySql:CharSet", "utf8mb4"),
  251. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  252. .Annotation("MySql:CharSet", "utf8mb4")
  253. },
  254. constraints: table =>
  255. {
  256. table.PrimaryKey("PK_AbpSecurityLogs", x => x.Id);
  257. })
  258. .Annotation("MySql:CharSet", "utf8mb4");
  259. migrationBuilder.CreateTable(
  260. name: "AbpSettings",
  261. columns: table => new
  262. {
  263. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  264. Name = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  265. .Annotation("MySql:CharSet", "utf8mb4"),
  266. Value = table.Column<string>(type: "varchar(2048)", maxLength: 2048, nullable: false)
  267. .Annotation("MySql:CharSet", "utf8mb4"),
  268. ProviderName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  269. .Annotation("MySql:CharSet", "utf8mb4"),
  270. ProviderKey = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  271. .Annotation("MySql:CharSet", "utf8mb4")
  272. },
  273. constraints: table =>
  274. {
  275. table.PrimaryKey("PK_AbpSettings", x => x.Id);
  276. })
  277. .Annotation("MySql:CharSet", "utf8mb4");
  278. migrationBuilder.CreateTable(
  279. name: "AbpTenants",
  280. columns: table => new
  281. {
  282. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  283. Name = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false)
  284. .Annotation("MySql:CharSet", "utf8mb4"),
  285. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  286. .Annotation("MySql:CharSet", "utf8mb4"),
  287. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  288. .Annotation("MySql:CharSet", "utf8mb4"),
  289. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  290. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  291. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  292. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  293. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  294. DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  295. DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true)
  296. },
  297. constraints: table =>
  298. {
  299. table.PrimaryKey("PK_AbpTenants", x => x.Id);
  300. })
  301. .Annotation("MySql:CharSet", "utf8mb4");
  302. migrationBuilder.CreateTable(
  303. name: "AbpUsers",
  304. columns: table => new
  305. {
  306. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  307. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  308. UserName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  309. .Annotation("MySql:CharSet", "utf8mb4"),
  310. NormalizedUserName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  311. .Annotation("MySql:CharSet", "utf8mb4"),
  312. Name = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  313. .Annotation("MySql:CharSet", "utf8mb4"),
  314. Surname = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true)
  315. .Annotation("MySql:CharSet", "utf8mb4"),
  316. Email = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  317. .Annotation("MySql:CharSet", "utf8mb4"),
  318. NormalizedEmail = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  319. .Annotation("MySql:CharSet", "utf8mb4"),
  320. EmailConfirmed = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  321. PasswordHash = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  322. .Annotation("MySql:CharSet", "utf8mb4"),
  323. SecurityStamp = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  324. .Annotation("MySql:CharSet", "utf8mb4"),
  325. IsExternal = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  326. PhoneNumber = table.Column<string>(type: "varchar(16)", maxLength: 16, nullable: true)
  327. .Annotation("MySql:CharSet", "utf8mb4"),
  328. PhoneNumberConfirmed = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  329. IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
  330. TwoFactorEnabled = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  331. LockoutEnd = table.Column<DateTimeOffset>(type: "datetime(6)", nullable: true),
  332. LockoutEnabled = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  333. AccessFailedCount = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
  334. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  335. .Annotation("MySql:CharSet", "utf8mb4"),
  336. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  337. .Annotation("MySql:CharSet", "utf8mb4"),
  338. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  339. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  340. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  341. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  342. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  343. DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  344. DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true)
  345. },
  346. constraints: table =>
  347. {
  348. table.PrimaryKey("PK_AbpUsers", x => x.Id);
  349. })
  350. .Annotation("MySql:CharSet", "utf8mb4");
  351. migrationBuilder.CreateTable(
  352. name: "base_dict",
  353. columns: table => new
  354. {
  355. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  356. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  357. Name = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: false)
  358. .Annotation("MySql:CharSet", "utf8mb4"),
  359. Description = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  360. .Annotation("MySql:CharSet", "utf8mb4"),
  361. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  362. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  363. .Annotation("MySql:CharSet", "utf8mb4"),
  364. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  365. .Annotation("MySql:CharSet", "utf8mb4"),
  366. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  367. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  368. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  369. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  370. },
  371. constraints: table =>
  372. {
  373. table.PrimaryKey("PK_base_dict", x => x.Id);
  374. })
  375. .Annotation("MySql:CharSet", "utf8mb4");
  376. migrationBuilder.CreateTable(
  377. name: "base_dict_details",
  378. columns: table => new
  379. {
  380. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  381. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  382. Pid = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  383. Label = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: false)
  384. .Annotation("MySql:CharSet", "utf8mb4"),
  385. Value = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  386. .Annotation("MySql:CharSet", "utf8mb4"),
  387. Sort = table.Column<short>(type: "smallint", nullable: false),
  388. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  389. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  390. .Annotation("MySql:CharSet", "utf8mb4"),
  391. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  392. .Annotation("MySql:CharSet", "utf8mb4"),
  393. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  394. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  395. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  396. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  397. },
  398. constraints: table =>
  399. {
  400. table.PrimaryKey("PK_base_dict_details", x => x.Id);
  401. })
  402. .Annotation("MySql:CharSet", "utf8mb4");
  403. migrationBuilder.CreateTable(
  404. name: "base_jobs",
  405. columns: table => new
  406. {
  407. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  408. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  409. Name = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: false)
  410. .Annotation("MySql:CharSet", "utf8mb4"),
  411. Enabled = table.Column<bool>(type: "tinyint(1)", nullable: false),
  412. Sort = table.Column<int>(type: "int", nullable: false),
  413. Description = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  414. .Annotation("MySql:CharSet", "utf8mb4"),
  415. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  416. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  417. .Annotation("MySql:CharSet", "utf8mb4"),
  418. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  419. .Annotation("MySql:CharSet", "utf8mb4"),
  420. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  421. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  422. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  423. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  424. },
  425. constraints: table =>
  426. {
  427. table.PrimaryKey("PK_base_jobs", x => x.Id);
  428. })
  429. .Annotation("MySql:CharSet", "utf8mb4");
  430. migrationBuilder.CreateTable(
  431. name: "base_menu",
  432. columns: table => new
  433. {
  434. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  435. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  436. FormId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  437. Pid = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  438. CategoryId = table.Column<int>(type: "int", nullable: false),
  439. Name = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: false)
  440. .Annotation("MySql:CharSet", "utf8mb4"),
  441. Label = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  442. .Annotation("MySql:CharSet", "utf8mb4"),
  443. Sort = table.Column<int>(type: "int", nullable: false),
  444. Path = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  445. .Annotation("MySql:CharSet", "utf8mb4"),
  446. Component = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  447. .Annotation("MySql:CharSet", "utf8mb4"),
  448. Permission = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  449. .Annotation("MySql:CharSet", "utf8mb4"),
  450. Icon = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true)
  451. .Annotation("MySql:CharSet", "utf8mb4"),
  452. Hidden = table.Column<bool>(type: "tinyint(1)", nullable: false),
  453. AlwaysShow = table.Column<bool>(type: "tinyint(1)", nullable: false),
  454. IsHost = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  455. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  456. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  457. .Annotation("MySql:CharSet", "utf8mb4"),
  458. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  459. .Annotation("MySql:CharSet", "utf8mb4"),
  460. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  461. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  462. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  463. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  464. },
  465. constraints: table =>
  466. {
  467. table.PrimaryKey("PK_base_menu", x => x.Id);
  468. })
  469. .Annotation("MySql:CharSet", "utf8mb4");
  470. migrationBuilder.CreateTable(
  471. name: "base_orgs",
  472. columns: table => new
  473. {
  474. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  475. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  476. CategoryId = table.Column<short>(type: "smallint", nullable: false),
  477. Pid = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  478. Name = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: false)
  479. .Annotation("MySql:CharSet", "utf8mb4"),
  480. FullName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  481. .Annotation("MySql:CharSet", "utf8mb4"),
  482. Sort = table.Column<int>(type: "int", nullable: false),
  483. Leaf = table.Column<bool>(type: "tinyint(1)", nullable: false),
  484. CascadeId = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  485. .Annotation("MySql:CharSet", "utf8mb4"),
  486. Enabled = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  487. IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false),
  488. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  489. .Annotation("MySql:CharSet", "utf8mb4"),
  490. ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true)
  491. .Annotation("MySql:CharSet", "utf8mb4"),
  492. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  493. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  494. LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true),
  495. LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  496. },
  497. constraints: table =>
  498. {
  499. table.PrimaryKey("PK_base_orgs", x => x.Id);
  500. })
  501. .Annotation("MySql:CharSet", "utf8mb4");
  502. migrationBuilder.CreateTable(
  503. name: "base_role_menu",
  504. columns: table => new
  505. {
  506. RoleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  507. MenuId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  508. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  509. },
  510. constraints: table =>
  511. {
  512. table.PrimaryKey("PK_base_role_menu", x => new { x.RoleId, x.MenuId });
  513. })
  514. .Annotation("MySql:CharSet", "utf8mb4");
  515. migrationBuilder.CreateTable(
  516. name: "base_user_jobs",
  517. columns: table => new
  518. {
  519. UserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  520. JobId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  521. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  522. },
  523. constraints: table =>
  524. {
  525. table.PrimaryKey("PK_base_user_jobs", x => new { x.UserId, x.JobId });
  526. })
  527. .Annotation("MySql:CharSet", "utf8mb4");
  528. migrationBuilder.CreateTable(
  529. name: "base_user_orgs",
  530. columns: table => new
  531. {
  532. UserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  533. OrganizationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  534. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  535. },
  536. constraints: table =>
  537. {
  538. table.PrimaryKey("PK_base_user_orgs", x => new { x.UserId, x.OrganizationId });
  539. })
  540. .Annotation("MySql:CharSet", "utf8mb4");
  541. migrationBuilder.CreateTable(
  542. name: "AbpAuditLogActions",
  543. columns: table => new
  544. {
  545. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  546. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  547. AuditLogId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  548. ServiceName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true)
  549. .Annotation("MySql:CharSet", "utf8mb4"),
  550. MethodName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true)
  551. .Annotation("MySql:CharSet", "utf8mb4"),
  552. Parameters = table.Column<string>(type: "varchar(2000)", maxLength: 2000, nullable: true)
  553. .Annotation("MySql:CharSet", "utf8mb4"),
  554. ExecutionTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  555. ExecutionDuration = table.Column<int>(type: "int", nullable: false),
  556. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  557. .Annotation("MySql:CharSet", "utf8mb4")
  558. },
  559. constraints: table =>
  560. {
  561. table.PrimaryKey("PK_AbpAuditLogActions", x => x.Id);
  562. table.ForeignKey(
  563. name: "FK_AbpAuditLogActions_AbpAuditLogs_AuditLogId",
  564. column: x => x.AuditLogId,
  565. principalTable: "AbpAuditLogs",
  566. principalColumn: "Id",
  567. onDelete: ReferentialAction.Cascade);
  568. })
  569. .Annotation("MySql:CharSet", "utf8mb4");
  570. migrationBuilder.CreateTable(
  571. name: "AbpEntityChanges",
  572. columns: table => new
  573. {
  574. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  575. AuditLogId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  576. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  577. ChangeTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  578. ChangeType = table.Column<byte>(type: "tinyint unsigned", nullable: false),
  579. EntityTenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  580. EntityId = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  581. .Annotation("MySql:CharSet", "utf8mb4"),
  582. EntityTypeFullName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  583. .Annotation("MySql:CharSet", "utf8mb4"),
  584. ExtraProperties = table.Column<string>(type: "longtext", nullable: true)
  585. .Annotation("MySql:CharSet", "utf8mb4")
  586. },
  587. constraints: table =>
  588. {
  589. table.PrimaryKey("PK_AbpEntityChanges", x => x.Id);
  590. table.ForeignKey(
  591. name: "FK_AbpEntityChanges_AbpAuditLogs_AuditLogId",
  592. column: x => x.AuditLogId,
  593. principalTable: "AbpAuditLogs",
  594. principalColumn: "Id",
  595. onDelete: ReferentialAction.Cascade);
  596. })
  597. .Annotation("MySql:CharSet", "utf8mb4");
  598. migrationBuilder.CreateTable(
  599. name: "AbpOrganizationUnitRoles",
  600. columns: table => new
  601. {
  602. RoleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  603. OrganizationUnitId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  604. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  605. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  606. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  607. },
  608. constraints: table =>
  609. {
  610. table.PrimaryKey("PK_AbpOrganizationUnitRoles", x => new { x.OrganizationUnitId, x.RoleId });
  611. table.ForeignKey(
  612. name: "FK_AbpOrganizationUnitRoles_AbpOrganizationUnits_OrganizationUn~",
  613. column: x => x.OrganizationUnitId,
  614. principalTable: "AbpOrganizationUnits",
  615. principalColumn: "Id",
  616. onDelete: ReferentialAction.Cascade);
  617. table.ForeignKey(
  618. name: "FK_AbpOrganizationUnitRoles_AbpRoles_RoleId",
  619. column: x => x.RoleId,
  620. principalTable: "AbpRoles",
  621. principalColumn: "Id",
  622. onDelete: ReferentialAction.Cascade);
  623. })
  624. .Annotation("MySql:CharSet", "utf8mb4");
  625. migrationBuilder.CreateTable(
  626. name: "AbpRoleClaims",
  627. columns: table => new
  628. {
  629. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  630. RoleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  631. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  632. ClaimType = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  633. .Annotation("MySql:CharSet", "utf8mb4"),
  634. ClaimValue = table.Column<string>(type: "varchar(1024)", maxLength: 1024, nullable: true)
  635. .Annotation("MySql:CharSet", "utf8mb4")
  636. },
  637. constraints: table =>
  638. {
  639. table.PrimaryKey("PK_AbpRoleClaims", x => x.Id);
  640. table.ForeignKey(
  641. name: "FK_AbpRoleClaims_AbpRoles_RoleId",
  642. column: x => x.RoleId,
  643. principalTable: "AbpRoles",
  644. principalColumn: "Id",
  645. onDelete: ReferentialAction.Cascade);
  646. })
  647. .Annotation("MySql:CharSet", "utf8mb4");
  648. migrationBuilder.CreateTable(
  649. name: "AbpTenantConnectionStrings",
  650. columns: table => new
  651. {
  652. TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  653. Name = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false)
  654. .Annotation("MySql:CharSet", "utf8mb4"),
  655. Value = table.Column<string>(type: "varchar(1024)", maxLength: 1024, nullable: false)
  656. .Annotation("MySql:CharSet", "utf8mb4")
  657. },
  658. constraints: table =>
  659. {
  660. table.PrimaryKey("PK_AbpTenantConnectionStrings", x => new { x.TenantId, x.Name });
  661. table.ForeignKey(
  662. name: "FK_AbpTenantConnectionStrings_AbpTenants_TenantId",
  663. column: x => x.TenantId,
  664. principalTable: "AbpTenants",
  665. principalColumn: "Id",
  666. onDelete: ReferentialAction.Cascade);
  667. })
  668. .Annotation("MySql:CharSet", "utf8mb4");
  669. migrationBuilder.CreateTable(
  670. name: "AbpUserClaims",
  671. columns: table => new
  672. {
  673. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  674. UserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  675. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  676. ClaimType = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false)
  677. .Annotation("MySql:CharSet", "utf8mb4"),
  678. ClaimValue = table.Column<string>(type: "varchar(1024)", maxLength: 1024, nullable: true)
  679. .Annotation("MySql:CharSet", "utf8mb4")
  680. },
  681. constraints: table =>
  682. {
  683. table.PrimaryKey("PK_AbpUserClaims", x => x.Id);
  684. table.ForeignKey(
  685. name: "FK_AbpUserClaims_AbpUsers_UserId",
  686. column: x => x.UserId,
  687. principalTable: "AbpUsers",
  688. principalColumn: "Id",
  689. onDelete: ReferentialAction.Cascade);
  690. })
  691. .Annotation("MySql:CharSet", "utf8mb4");
  692. migrationBuilder.CreateTable(
  693. name: "AbpUserLogins",
  694. columns: table => new
  695. {
  696. UserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  697. LoginProvider = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false)
  698. .Annotation("MySql:CharSet", "utf8mb4"),
  699. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  700. ProviderKey = table.Column<string>(type: "varchar(196)", maxLength: 196, nullable: false)
  701. .Annotation("MySql:CharSet", "utf8mb4"),
  702. ProviderDisplayName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true)
  703. .Annotation("MySql:CharSet", "utf8mb4")
  704. },
  705. constraints: table =>
  706. {
  707. table.PrimaryKey("PK_AbpUserLogins", x => new { x.UserId, x.LoginProvider });
  708. table.ForeignKey(
  709. name: "FK_AbpUserLogins_AbpUsers_UserId",
  710. column: x => x.UserId,
  711. principalTable: "AbpUsers",
  712. principalColumn: "Id",
  713. onDelete: ReferentialAction.Cascade);
  714. })
  715. .Annotation("MySql:CharSet", "utf8mb4");
  716. migrationBuilder.CreateTable(
  717. name: "AbpUserOrganizationUnits",
  718. columns: table => new
  719. {
  720. UserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  721. OrganizationUnitId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  722. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  723. CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false),
  724. CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  725. },
  726. constraints: table =>
  727. {
  728. table.PrimaryKey("PK_AbpUserOrganizationUnits", x => new { x.OrganizationUnitId, x.UserId });
  729. table.ForeignKey(
  730. name: "FK_AbpUserOrganizationUnits_AbpOrganizationUnits_OrganizationUn~",
  731. column: x => x.OrganizationUnitId,
  732. principalTable: "AbpOrganizationUnits",
  733. principalColumn: "Id",
  734. onDelete: ReferentialAction.Cascade);
  735. table.ForeignKey(
  736. name: "FK_AbpUserOrganizationUnits_AbpUsers_UserId",
  737. column: x => x.UserId,
  738. principalTable: "AbpUsers",
  739. principalColumn: "Id",
  740. onDelete: ReferentialAction.Cascade);
  741. })
  742. .Annotation("MySql:CharSet", "utf8mb4");
  743. migrationBuilder.CreateTable(
  744. name: "AbpUserRoles",
  745. columns: table => new
  746. {
  747. UserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  748. RoleId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  749. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci")
  750. },
  751. constraints: table =>
  752. {
  753. table.PrimaryKey("PK_AbpUserRoles", x => new { x.UserId, x.RoleId });
  754. table.ForeignKey(
  755. name: "FK_AbpUserRoles_AbpRoles_RoleId",
  756. column: x => x.RoleId,
  757. principalTable: "AbpRoles",
  758. principalColumn: "Id",
  759. onDelete: ReferentialAction.Cascade);
  760. table.ForeignKey(
  761. name: "FK_AbpUserRoles_AbpUsers_UserId",
  762. column: x => x.UserId,
  763. principalTable: "AbpUsers",
  764. principalColumn: "Id",
  765. onDelete: ReferentialAction.Cascade);
  766. })
  767. .Annotation("MySql:CharSet", "utf8mb4");
  768. migrationBuilder.CreateTable(
  769. name: "AbpUserTokens",
  770. columns: table => new
  771. {
  772. UserId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  773. LoginProvider = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false)
  774. .Annotation("MySql:CharSet", "utf8mb4"),
  775. Name = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  776. .Annotation("MySql:CharSet", "utf8mb4"),
  777. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  778. Value = table.Column<string>(type: "longtext", nullable: true)
  779. .Annotation("MySql:CharSet", "utf8mb4")
  780. },
  781. constraints: table =>
  782. {
  783. table.PrimaryKey("PK_AbpUserTokens", x => new { x.UserId, x.LoginProvider, x.Name });
  784. table.ForeignKey(
  785. name: "FK_AbpUserTokens_AbpUsers_UserId",
  786. column: x => x.UserId,
  787. principalTable: "AbpUsers",
  788. principalColumn: "Id",
  789. onDelete: ReferentialAction.Cascade);
  790. })
  791. .Annotation("MySql:CharSet", "utf8mb4");
  792. migrationBuilder.CreateTable(
  793. name: "AbpEntityPropertyChanges",
  794. columns: table => new
  795. {
  796. Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  797. TenantId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
  798. EntityChangeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
  799. NewValue = table.Column<string>(type: "varchar(512)", maxLength: 512, nullable: true)
  800. .Annotation("MySql:CharSet", "utf8mb4"),
  801. OriginalValue = table.Column<string>(type: "varchar(512)", maxLength: 512, nullable: true)
  802. .Annotation("MySql:CharSet", "utf8mb4"),
  803. PropertyName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false)
  804. .Annotation("MySql:CharSet", "utf8mb4"),
  805. PropertyTypeFullName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false)
  806. .Annotation("MySql:CharSet", "utf8mb4")
  807. },
  808. constraints: table =>
  809. {
  810. table.PrimaryKey("PK_AbpEntityPropertyChanges", x => x.Id);
  811. table.ForeignKey(
  812. name: "FK_AbpEntityPropertyChanges_AbpEntityChanges_EntityChangeId",
  813. column: x => x.EntityChangeId,
  814. principalTable: "AbpEntityChanges",
  815. principalColumn: "Id",
  816. onDelete: ReferentialAction.Cascade);
  817. })
  818. .Annotation("MySql:CharSet", "utf8mb4");
  819. migrationBuilder.CreateIndex(
  820. name: "IX_AbpAuditLogActions_AuditLogId",
  821. table: "AbpAuditLogActions",
  822. column: "AuditLogId");
  823. migrationBuilder.CreateIndex(
  824. name: "IX_AbpAuditLogActions_TenantId_ServiceName_MethodName_Execution~",
  825. table: "AbpAuditLogActions",
  826. columns: new[] { "TenantId", "ServiceName", "MethodName", "ExecutionTime" });
  827. migrationBuilder.CreateIndex(
  828. name: "IX_AbpAuditLogs_TenantId_ExecutionTime",
  829. table: "AbpAuditLogs",
  830. columns: new[] { "TenantId", "ExecutionTime" });
  831. migrationBuilder.CreateIndex(
  832. name: "IX_AbpAuditLogs_TenantId_UserId_ExecutionTime",
  833. table: "AbpAuditLogs",
  834. columns: new[] { "TenantId", "UserId", "ExecutionTime" });
  835. migrationBuilder.CreateIndex(
  836. name: "IX_AbpEntityChanges_AuditLogId",
  837. table: "AbpEntityChanges",
  838. column: "AuditLogId");
  839. migrationBuilder.CreateIndex(
  840. name: "IX_AbpEntityChanges_TenantId_EntityTypeFullName_EntityId",
  841. table: "AbpEntityChanges",
  842. columns: new[] { "TenantId", "EntityTypeFullName", "EntityId" });
  843. migrationBuilder.CreateIndex(
  844. name: "IX_AbpEntityPropertyChanges_EntityChangeId",
  845. table: "AbpEntityPropertyChanges",
  846. column: "EntityChangeId");
  847. migrationBuilder.CreateIndex(
  848. name: "IX_AbpLinkUsers_SourceUserId_SourceTenantId_TargetUserId_Target~",
  849. table: "AbpLinkUsers",
  850. columns: new[] { "SourceUserId", "SourceTenantId", "TargetUserId", "TargetTenantId" },
  851. unique: true);
  852. migrationBuilder.CreateIndex(
  853. name: "IX_AbpOrganizationUnitRoles_RoleId_OrganizationUnitId",
  854. table: "AbpOrganizationUnitRoles",
  855. columns: new[] { "RoleId", "OrganizationUnitId" });
  856. migrationBuilder.CreateIndex(
  857. name: "IX_AbpOrganizationUnits_Code",
  858. table: "AbpOrganizationUnits",
  859. column: "Code");
  860. migrationBuilder.CreateIndex(
  861. name: "IX_AbpOrganizationUnits_ParentId",
  862. table: "AbpOrganizationUnits",
  863. column: "ParentId");
  864. migrationBuilder.CreateIndex(
  865. name: "IX_AbpPermissionGrants_TenantId_Name_ProviderName_ProviderKey",
  866. table: "AbpPermissionGrants",
  867. columns: new[] { "TenantId", "Name", "ProviderName", "ProviderKey" },
  868. unique: true);
  869. migrationBuilder.CreateIndex(
  870. name: "IX_AbpPermissionGroups_Name",
  871. table: "AbpPermissionGroups",
  872. column: "Name",
  873. unique: true);
  874. migrationBuilder.CreateIndex(
  875. name: "IX_AbpPermissions_GroupName",
  876. table: "AbpPermissions",
  877. column: "GroupName");
  878. migrationBuilder.CreateIndex(
  879. name: "IX_AbpPermissions_Name",
  880. table: "AbpPermissions",
  881. column: "Name",
  882. unique: true);
  883. migrationBuilder.CreateIndex(
  884. name: "IX_AbpRoleClaims_RoleId",
  885. table: "AbpRoleClaims",
  886. column: "RoleId");
  887. migrationBuilder.CreateIndex(
  888. name: "IX_AbpRoles_NormalizedName",
  889. table: "AbpRoles",
  890. column: "NormalizedName");
  891. migrationBuilder.CreateIndex(
  892. name: "IX_AbpSecurityLogs_TenantId_Action",
  893. table: "AbpSecurityLogs",
  894. columns: new[] { "TenantId", "Action" });
  895. migrationBuilder.CreateIndex(
  896. name: "IX_AbpSecurityLogs_TenantId_ApplicationName",
  897. table: "AbpSecurityLogs",
  898. columns: new[] { "TenantId", "ApplicationName" });
  899. migrationBuilder.CreateIndex(
  900. name: "IX_AbpSecurityLogs_TenantId_Identity",
  901. table: "AbpSecurityLogs",
  902. columns: new[] { "TenantId", "Identity" });
  903. migrationBuilder.CreateIndex(
  904. name: "IX_AbpSecurityLogs_TenantId_UserId",
  905. table: "AbpSecurityLogs",
  906. columns: new[] { "TenantId", "UserId" });
  907. migrationBuilder.CreateIndex(
  908. name: "IX_AbpSettings_Name_ProviderName_ProviderKey",
  909. table: "AbpSettings",
  910. columns: new[] { "Name", "ProviderName", "ProviderKey" },
  911. unique: true);
  912. migrationBuilder.CreateIndex(
  913. name: "IX_AbpTenants_Name",
  914. table: "AbpTenants",
  915. column: "Name");
  916. migrationBuilder.CreateIndex(
  917. name: "IX_AbpUserClaims_UserId",
  918. table: "AbpUserClaims",
  919. column: "UserId");
  920. migrationBuilder.CreateIndex(
  921. name: "IX_AbpUserLogins_LoginProvider_ProviderKey",
  922. table: "AbpUserLogins",
  923. columns: new[] { "LoginProvider", "ProviderKey" });
  924. migrationBuilder.CreateIndex(
  925. name: "IX_AbpUserOrganizationUnits_UserId_OrganizationUnitId",
  926. table: "AbpUserOrganizationUnits",
  927. columns: new[] { "UserId", "OrganizationUnitId" });
  928. migrationBuilder.CreateIndex(
  929. name: "IX_AbpUserRoles_RoleId_UserId",
  930. table: "AbpUserRoles",
  931. columns: new[] { "RoleId", "UserId" });
  932. migrationBuilder.CreateIndex(
  933. name: "IX_AbpUsers_Email",
  934. table: "AbpUsers",
  935. column: "Email");
  936. migrationBuilder.CreateIndex(
  937. name: "IX_AbpUsers_NormalizedEmail",
  938. table: "AbpUsers",
  939. column: "NormalizedEmail");
  940. migrationBuilder.CreateIndex(
  941. name: "IX_AbpUsers_NormalizedUserName",
  942. table: "AbpUsers",
  943. column: "NormalizedUserName");
  944. migrationBuilder.CreateIndex(
  945. name: "IX_AbpUsers_UserName",
  946. table: "AbpUsers",
  947. column: "UserName");
  948. migrationBuilder.CreateIndex(
  949. name: "IX_base_dict_Name",
  950. table: "base_dict",
  951. column: "Name");
  952. migrationBuilder.CreateIndex(
  953. name: "IX_base_dict_details_Pid",
  954. table: "base_dict_details",
  955. column: "Pid");
  956. migrationBuilder.CreateIndex(
  957. name: "IX_base_orgs_Pid",
  958. table: "base_orgs",
  959. column: "Pid");
  960. }
  961. /// <inheritdoc />
  962. protected override void Down(MigrationBuilder migrationBuilder)
  963. {
  964. migrationBuilder.DropTable(
  965. name: "AbpAuditLogActions");
  966. migrationBuilder.DropTable(
  967. name: "AbpClaimTypes");
  968. migrationBuilder.DropTable(
  969. name: "AbpEntityPropertyChanges");
  970. migrationBuilder.DropTable(
  971. name: "AbpLinkUsers");
  972. migrationBuilder.DropTable(
  973. name: "AbpOrganizationUnitRoles");
  974. migrationBuilder.DropTable(
  975. name: "AbpPermissionGrants");
  976. migrationBuilder.DropTable(
  977. name: "AbpPermissionGroups");
  978. migrationBuilder.DropTable(
  979. name: "AbpPermissions");
  980. migrationBuilder.DropTable(
  981. name: "AbpRoleClaims");
  982. migrationBuilder.DropTable(
  983. name: "AbpSecurityLogs");
  984. migrationBuilder.DropTable(
  985. name: "AbpSettings");
  986. migrationBuilder.DropTable(
  987. name: "AbpTenantConnectionStrings");
  988. migrationBuilder.DropTable(
  989. name: "AbpUserClaims");
  990. migrationBuilder.DropTable(
  991. name: "AbpUserLogins");
  992. migrationBuilder.DropTable(
  993. name: "AbpUserOrganizationUnits");
  994. migrationBuilder.DropTable(
  995. name: "AbpUserRoles");
  996. migrationBuilder.DropTable(
  997. name: "AbpUserTokens");
  998. migrationBuilder.DropTable(
  999. name: "base_dict");
  1000. migrationBuilder.DropTable(
  1001. name: "base_dict_details");
  1002. migrationBuilder.DropTable(
  1003. name: "base_jobs");
  1004. migrationBuilder.DropTable(
  1005. name: "base_menu");
  1006. migrationBuilder.DropTable(
  1007. name: "base_orgs");
  1008. migrationBuilder.DropTable(
  1009. name: "base_role_menu");
  1010. migrationBuilder.DropTable(
  1011. name: "base_user_jobs");
  1012. migrationBuilder.DropTable(
  1013. name: "base_user_orgs");
  1014. migrationBuilder.DropTable(
  1015. name: "AbpEntityChanges");
  1016. migrationBuilder.DropTable(
  1017. name: "AbpTenants");
  1018. migrationBuilder.DropTable(
  1019. name: "AbpOrganizationUnits");
  1020. migrationBuilder.DropTable(
  1021. name: "AbpRoles");
  1022. migrationBuilder.DropTable(
  1023. name: "AbpUsers");
  1024. migrationBuilder.DropTable(
  1025. name: "AbpAuditLogs");
  1026. }
  1027. }
  1028. }