20230208095319_init.cs 60 KB

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