405 lines
18 KiB
C#
405 lines
18 KiB
C#
using System;
|
|
using Microsoft.EntityFrameworkCore.Migrations;
|
|
using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
|
|
|
|
#nullable disable
|
|
|
|
namespace FurnitureAssemblyDatabaseImplement.Migrations
|
|
{
|
|
/// <inheritdoc />
|
|
public partial class Init : Migration
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.CreateTable(
|
|
name: "Roles",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
Name = table.Column<string>(type: "text", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Roles", x => x.Id);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Scopes",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
Name = table.Column<string>(type: "text", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Scopes", x => x.Id);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Users",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
Login = table.Column<string>(type: "text", nullable: false),
|
|
Password = table.Column<string>(type: "text", nullable: false),
|
|
Name = table.Column<string>(type: "text", nullable: false),
|
|
RoleId = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Users", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Users_Roles_RoleId",
|
|
column: x => x.RoleId,
|
|
principalTable: "Roles",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "FurnitureModules",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
Name = table.Column<string>(type: "text", nullable: false),
|
|
Cost = table.Column<double>(type: "double precision", nullable: false),
|
|
DateCreate = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
|
|
UserId = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_FurnitureModules", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_FurnitureModules_Users_UserId",
|
|
column: x => x.UserId,
|
|
principalTable: "Users",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Furnitures",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
Name = table.Column<string>(type: "text", nullable: false),
|
|
Cost = table.Column<double>(type: "double precision", nullable: false),
|
|
DateCreate = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
|
|
UserId = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Furnitures", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Furnitures_Users_UserId",
|
|
column: x => x.UserId,
|
|
principalTable: "Users",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Materials",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
Name = table.Column<string>(type: "text", nullable: false),
|
|
Cost = table.Column<double>(type: "double precision", nullable: false),
|
|
ScopeId = table.Column<int>(type: "integer", nullable: false),
|
|
UserId = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Materials", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Materials_Scopes_ScopeId",
|
|
column: x => x.ScopeId,
|
|
principalTable: "Scopes",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_Materials_Users_UserId",
|
|
column: x => x.UserId,
|
|
principalTable: "Users",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "OrderInfos",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
CustomerName = table.Column<string>(type: "text", nullable: false),
|
|
PaymentType = table.Column<int>(type: "integer", nullable: false),
|
|
DateCreate = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
|
|
Sum = table.Column<double>(type: "double precision", nullable: false),
|
|
UserId = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_OrderInfos", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_OrderInfos_Users_UserId",
|
|
column: x => x.UserId,
|
|
principalTable: "Users",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Sets",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
Name = table.Column<string>(type: "text", nullable: false),
|
|
Cost = table.Column<double>(type: "double precision", nullable: false),
|
|
DateCreate = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
|
|
UserId = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Sets", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Sets_Users_UserId",
|
|
column: x => x.UserId,
|
|
principalTable: "Users",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "FurnitureModuleFurnitures",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
FurnitureModuleId = table.Column<int>(type: "integer", nullable: false),
|
|
FurnitureId = table.Column<int>(type: "integer", nullable: false),
|
|
Count = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_FurnitureModuleFurnitures", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_FurnitureModuleFurnitures_FurnitureModules_FurnitureModuleId",
|
|
column: x => x.FurnitureModuleId,
|
|
principalTable: "FurnitureModules",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_FurnitureModuleFurnitures_Furnitures_FurnitureId",
|
|
column: x => x.FurnitureId,
|
|
principalTable: "Furnitures",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "FurnitureMaterials",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
FurnitureId = table.Column<int>(type: "integer", nullable: false),
|
|
MaterialId = table.Column<int>(type: "integer", nullable: false),
|
|
Count = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_FurnitureMaterials", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_FurnitureMaterials_Furnitures_FurnitureId",
|
|
column: x => x.FurnitureId,
|
|
principalTable: "Furnitures",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_FurnitureMaterials_Materials_MaterialId",
|
|
column: x => x.MaterialId,
|
|
principalTable: "Materials",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "Orders",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
SetId = table.Column<int>(type: "integer", nullable: false),
|
|
Count = table.Column<int>(type: "integer", nullable: false),
|
|
OrderInfoId = table.Column<int>(type: "integer", nullable: false),
|
|
UserId = table.Column<int>(type: "integer", nullable: true)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_Orders", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_Orders_Sets_SetId",
|
|
column: x => x.SetId,
|
|
principalTable: "Sets",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_Orders_Users_UserId",
|
|
column: x => x.UserId,
|
|
principalTable: "Users",
|
|
principalColumn: "Id");
|
|
});
|
|
|
|
migrationBuilder.CreateTable(
|
|
name: "SetFurnitureModules",
|
|
columns: table => new
|
|
{
|
|
Id = table.Column<int>(type: "integer", nullable: false)
|
|
.Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
|
|
SetId = table.Column<int>(type: "integer", nullable: false),
|
|
FurnitureModuleId = table.Column<int>(type: "integer", nullable: false),
|
|
Count = table.Column<int>(type: "integer", nullable: false)
|
|
},
|
|
constraints: table =>
|
|
{
|
|
table.PrimaryKey("PK_SetFurnitureModules", x => x.Id);
|
|
table.ForeignKey(
|
|
name: "FK_SetFurnitureModules_FurnitureModules_FurnitureModuleId",
|
|
column: x => x.FurnitureModuleId,
|
|
principalTable: "FurnitureModules",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
table.ForeignKey(
|
|
name: "FK_SetFurnitureModules_Sets_SetId",
|
|
column: x => x.SetId,
|
|
principalTable: "Sets",
|
|
principalColumn: "Id",
|
|
onDelete: ReferentialAction.Cascade);
|
|
});
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_FurnitureMaterials_FurnitureId",
|
|
table: "FurnitureMaterials",
|
|
column: "FurnitureId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_FurnitureMaterials_MaterialId",
|
|
table: "FurnitureMaterials",
|
|
column: "MaterialId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_FurnitureModuleFurnitures_FurnitureId",
|
|
table: "FurnitureModuleFurnitures",
|
|
column: "FurnitureId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_FurnitureModuleFurnitures_FurnitureModuleId",
|
|
table: "FurnitureModuleFurnitures",
|
|
column: "FurnitureModuleId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_FurnitureModules_UserId",
|
|
table: "FurnitureModules",
|
|
column: "UserId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Furnitures_UserId",
|
|
table: "Furnitures",
|
|
column: "UserId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Materials_ScopeId",
|
|
table: "Materials",
|
|
column: "ScopeId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Materials_UserId",
|
|
table: "Materials",
|
|
column: "UserId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_OrderInfos_UserId",
|
|
table: "OrderInfos",
|
|
column: "UserId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Orders_SetId",
|
|
table: "Orders",
|
|
column: "SetId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Orders_UserId",
|
|
table: "Orders",
|
|
column: "UserId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_SetFurnitureModules_FurnitureModuleId",
|
|
table: "SetFurnitureModules",
|
|
column: "FurnitureModuleId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_SetFurnitureModules_SetId",
|
|
table: "SetFurnitureModules",
|
|
column: "SetId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Sets_UserId",
|
|
table: "Sets",
|
|
column: "UserId");
|
|
|
|
migrationBuilder.CreateIndex(
|
|
name: "IX_Users_RoleId",
|
|
table: "Users",
|
|
column: "RoleId");
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.DropTable(
|
|
name: "FurnitureMaterials");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "FurnitureModuleFurnitures");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "OrderInfos");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Orders");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "SetFurnitureModules");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Materials");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Furnitures");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "FurnitureModules");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Sets");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Scopes");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Users");
|
|
|
|
migrationBuilder.DropTable(
|
|
name: "Roles");
|
|
}
|
|
}
|
|
}
|