using System; using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.Migrations; #nullable disable #pragma warning disable CA1814 // Prefer jagged arrays over multidimensional namespace Cowain.TestProject.Migrations { /// public partial class init : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.AlterDatabase() .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "alarm_group", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), Name = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4") }, constraints: table => { table.PrimaryKey("PK_alarm_group", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "alarm_history", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), TagId = table.Column(type: "int", nullable: false), Desc = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Group = table.Column(type: "int", nullable: false), Level = table.Column(type: "int", nullable: false), Status = table.Column(type: "tinyint(1)", nullable: false), StartTime = table.Column(type: "datetime(6)", nullable: false), StopTime = table.Column(type: "datetime(6)", nullable: true) }, constraints: table => { table.PrimaryKey("PK_alarm_history", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "alarm_level", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), Name = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Color = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4") }, constraints: table => { table.PrimaryKey("PK_alarm_level", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "baking_info", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), BindingId = table.Column(type: "int", nullable: false), TagId = table.Column(type: "int", nullable: false), DataValue = table.Column(type: "varchar(200)", maxLength: 200, nullable: true) .Annotation("MySql:CharSet", "utf8mb4"), CreateTime = table.Column(type: "datetime(6)", nullable: true) }, constraints: table => { table.PrimaryKey("PK_baking_info", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "baking_variable", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), StationId = table.Column(type: "int", nullable: false), TagId = table.Column(type: "int", nullable: false) }, constraints: table => { table.PrimaryKey("PK_baking_variable", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "battery_info", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), Code = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), PalletId = table.Column(type: "int", nullable: false), Row = table.Column(type: "int", nullable: false), Col = table.Column(type: "int", nullable: false), IsWaterBattery = table.Column(type: "tinyint(1)", nullable: false), WaterValue = table.Column(type: "varchar(200)", maxLength: 200, nullable: true) .Annotation("MySql:CharSet", "utf8mb4"), Status = table.Column(type: "varchar(200)", maxLength: 200, nullable: true) .Annotation("MySql:CharSet", "utf8mb4"), ScanTime = table.Column(type: "datetime(6)", nullable: true) }, constraints: table => { table.PrimaryKey("PK_battery_info", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "device", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), DeviceName = table.Column(type: "varchar(50)", maxLength: 50, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), DriverName = table.Column(type: "varchar(50)", maxLength: 50, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), DeviceType = table.Column(type: "varchar(20)", maxLength: 20, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Param = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Desc = table.Column(type: "longtext", nullable: true) .Annotation("MySql:CharSet", "utf8mb4"), Enable = table.Column(type: "tinyint(1)", nullable: false), CreateTime = table.Column(type: "datetime(6)", nullable: false), UpdateTime = table.Column(type: "datetime(6)", nullable: false) }, constraints: table => { table.PrimaryKey("PK_device", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "pallet_binding", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), PalletId = table.Column(type: "int", nullable: false), CreateTime = table.Column(type: "datetime(6)", nullable: false) }, constraints: table => { table.PrimaryKey("PK_pallet_binding", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "pallet_info", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), BindingId = table.Column(type: "int", nullable: false), Code = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), PalletStatus = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), StationId = table.Column(type: "int", nullable: false), BakingCount = table.Column(type: "int", nullable: false), LoadingStartTime = table.Column(type: "datetime(6)", nullable: true), LoadingEndTime = table.Column(type: "datetime(6)", nullable: true), BakingStartTime = table.Column(type: "datetime(6)", nullable: true), BakingEndTime = table.Column(type: "datetime(6)", nullable: true), UnLoadingTime = table.Column(type: "datetime(6)", nullable: true), UpdateTime = table.Column(type: "datetime(6)", nullable: true), WaterValue = table.Column(type: "varchar(200)", maxLength: 200, nullable: true) .Annotation("MySql:CharSet", "utf8mb4") }, constraints: table => { table.PrimaryKey("PK_pallet_info", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "pallet_info_history", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), Code = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), BindingId = table.Column(type: "int", nullable: false), PalletStatus = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), StationId = table.Column(type: "int", nullable: false), BakingCount = table.Column(type: "int", nullable: false), LoadingStartTime = table.Column(type: "datetime(6)", nullable: true), LoadingEndTime = table.Column(type: "datetime(6)", nullable: true), BakingStartTime = table.Column(type: "datetime(6)", nullable: true), BakingEndTime = table.Column(type: "datetime(6)", nullable: true), UnLoadingTime = table.Column(type: "datetime(6)", nullable: true), WaterValue = table.Column(type: "varchar(200)", maxLength: 200, nullable: true) .Annotation("MySql:CharSet", "utf8mb4"), HistoryTime = table.Column(type: "datetime(6)", maxLength: 200, nullable: false) }, constraints: table => { table.PrimaryKey("PK_pallet_info_history", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "station_info", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), Name = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), StationCode = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), LayOutX = table.Column(type: "int", nullable: false), LayOutY = table.Column(type: "int", nullable: false), Height = table.Column(type: "int", nullable: false), Width = table.Column(type: "int", nullable: false), Enable = table.Column(type: "tinyint(1)", nullable: false) }, constraints: table => { table.PrimaryKey("PK_station_info", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "tag_address", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), DeviceId = table.Column(type: "int", nullable: false), Name = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Address = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Desc = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), DataType = table.Column(type: "varchar(50)", maxLength: 50, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), ArrayCount = table.Column(type: "int", nullable: false), OperMode = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), AlarmEnable = table.Column(type: "tinyint(1)", nullable: false), AlarmValue = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), AlarmGroup = table.Column(type: "int", nullable: false), AlarmLevel = table.Column(type: "int", nullable: false), AlarmMsg = table.Column(type: "varchar(1000)", maxLength: 1000, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Json = table.Column(type: "varchar(1000)", maxLength: 1000, nullable: false) .Annotation("MySql:CharSet", "utf8mb4") }, constraints: table => { table.PrimaryKey("PK_tag_address", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "user", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), Name = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), UserNumber = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Phone = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), RoleId = table.Column(type: "int", nullable: false), Sex = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Password = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), IsValid = table.Column(type: "tinyint(1)", nullable: false), CreateTime = table.Column(type: "datetime(6)", nullable: false), UpdateTime = table.Column(type: "datetime(6)", nullable: false) }, constraints: table => { table.PrimaryKey("PK_user", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "user_role", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), RoleName = table.Column(type: "longtext", nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), CreateTime = table.Column(type: "datetime(6)", nullable: false), UpdateTime = table.Column(type: "datetime(6)", nullable: false), IsValid = table.Column(type: "tinyint(1)", nullable: false) }, constraints: table => { table.PrimaryKey("PK_user_role", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "user_role_menu", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), RoleId = table.Column(type: "int", nullable: false), MenuKey = table.Column(type: "longtext", nullable: true) .Annotation("MySql:CharSet", "utf8mb4"), MenuActions = table.Column(type: "longtext", nullable: true) .Annotation("MySql:CharSet", "utf8mb4") }, constraints: table => { table.PrimaryKey("PK_user_role_menu", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.CreateTable( name: "var_action", columns: table => new { Id = table.Column(type: "int", nullable: false) .Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), DeviceId = table.Column(type: "int", nullable: false), TagId = table.Column(type: "int", nullable: false), ActionName = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Param = table.Column(type: "varchar(1000)", maxLength: 1000, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Desc = table.Column(type: "varchar(500)", maxLength: 500, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), ActionValue = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4"), Condition = table.Column(type: "varchar(200)", maxLength: 200, nullable: false) .Annotation("MySql:CharSet", "utf8mb4") }, constraints: table => { table.PrimaryKey("PK_var_action", x => x.Id); }) .Annotation("MySql:CharSet", "utf8mb4"); migrationBuilder.InsertData( table: "alarm_group", columns: new[] { "Id", "Name" }, values: new object[] { 1, "系统" }); migrationBuilder.InsertData( table: "alarm_level", columns: new[] { "Id", "Color", "Name" }, values: new object[,] { { 1, "Red", "报警" }, { 2, "Yellow", "警告" } }); migrationBuilder.InsertData( table: "tag_address", columns: new[] { "Id", "Address", "AlarmEnable", "AlarmGroup", "AlarmLevel", "AlarmMsg", "AlarmValue", "ArrayCount", "DataType", "Desc", "DeviceId", "Json", "Name", "OperMode" }, values: new object[,] { { 1, "ns=4;s=L1RSTemp_Output1[0]", false, 0, 0, "", "", 1, "Int16", "Tag1", 1, "", "Tag1", "Read" }, { 2, "ns=4;s=L1RSTemp_Output1[1]", false, 0, 0, "", "", 1, "Int16", "Tag2", 1, "", "Tag2", "Read" } }); migrationBuilder.InsertData( table: "user", columns: new[] { "Id", "CreateTime", "IsValid", "Name", "Password", "Phone", "RoleId", "Sex", "UpdateTime", "UserNumber" }, values: new object[] { 1, new DateTime(2026, 3, 2, 9, 47, 14, 393, DateTimeKind.Local).AddTicks(8647), true, "admin", "F44DDAC49CE7A95D", "17625760609", 1, "Male", new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), "CWA4483" }); migrationBuilder.InsertData( table: "user_role", columns: new[] { "Id", "CreateTime", "IsValid", "RoleName", "UpdateTime" }, values: new object[] { 1, new DateTime(2026, 3, 2, 9, 47, 14, 401, DateTimeKind.Local).AddTicks(47), true, "管理员", new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified) }); migrationBuilder.InsertData( table: "user_role_menu", columns: new[] { "Id", "MenuActions", "MenuKey", "RoleId" }, values: new object[,] { { 1, "[]", "Home", 1 }, { 2, "[ \"add\", \"edit\", \"delete\"]", "UserRoleSetting", 1 }, { 3, "[ \"edit\", \"delete\"]", "RoleMenuSetting", 1 }, { 4, "[ \"add\", \"edit\", \"delete\"]", "UserManagement", 1 } }); } /// protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable( name: "alarm_group"); migrationBuilder.DropTable( name: "alarm_history"); migrationBuilder.DropTable( name: "alarm_level"); migrationBuilder.DropTable( name: "baking_info"); migrationBuilder.DropTable( name: "baking_variable"); migrationBuilder.DropTable( name: "battery_info"); migrationBuilder.DropTable( name: "device"); migrationBuilder.DropTable( name: "pallet_binding"); migrationBuilder.DropTable( name: "pallet_info"); migrationBuilder.DropTable( name: "pallet_info_history"); migrationBuilder.DropTable( name: "station_info"); migrationBuilder.DropTable( name: "tag_address"); migrationBuilder.DropTable( name: "user"); migrationBuilder.DropTable( name: "user_role"); migrationBuilder.DropTable( name: "user_role_menu"); migrationBuilder.DropTable( name: "var_action"); } } }