using Microsoft.EntityFrameworkCore.Migrations; namespace Data.Migrations { public partial class IntialMigration : Migration { protected override void Up(MigrationBuilder migrationBuilder) { migrationBuilder.CreateTable( name: "Permission", columns: table => new { Id = table.Column(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Name = table.Column(nullable: true) }, constraints: table => { table.PrimaryKey("PK_Permission", x => x.Id); }); migrationBuilder.CreateTable( name: "Product", columns: table => new { Id = table.Column(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Name = table.Column(nullable: true), Price = table.Column(nullable: false), AmountInStock = table.Column(nullable: false) }, constraints: table => { table.PrimaryKey("PK_Product", x => x.Id); }); migrationBuilder.CreateTable( name: "Role", columns: table => new { Id = table.Column(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Name = table.Column(nullable: true), PermissionId = table.Column(nullable: true) }, constraints: table => { table.PrimaryKey("PK_Role", x => x.Id); table.ForeignKey( name: "FK_Role_Permission_PermissionId", column: x => x.PermissionId, principalTable: "Permission", principalColumn: "Id", onDelete: ReferentialAction.Restrict); }); migrationBuilder.CreateTable( name: "User", columns: table => new { Id = table.Column(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), Name = table.Column(nullable: true), Passcode = table.Column(nullable: true), UsersRolesId = table.Column(nullable: true) }, constraints: table => { table.PrimaryKey("PK_User", x => x.Id); table.ForeignKey( name: "FK_User_Role_UsersRolesId", column: x => x.UsersRolesId, principalTable: "Role", principalColumn: "Id", onDelete: ReferentialAction.Restrict); }); migrationBuilder.CreateTable( name: "Deal", columns: table => new { Id = table.Column(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), UserId = table.Column(nullable: true), Amount = table.Column(nullable: false), ProductId = table.Column(nullable: true) }, constraints: table => { table.PrimaryKey("PK_Deal", x => x.Id); table.ForeignKey( name: "FK_Deal_Product_ProductId", column: x => x.ProductId, principalTable: "Product", principalColumn: "Id", onDelete: ReferentialAction.Restrict); table.ForeignKey( name: "FK_Deal_User_UserId", column: x => x.UserId, principalTable: "User", principalColumn: "Id", onDelete: ReferentialAction.Restrict); }); migrationBuilder.CreateTable( name: "Stock", columns: table => new { Id = table.Column(nullable: false) .Annotation("SqlServer:Identity", "1, 1"), UserId = table.Column(nullable: true), Amount = table.Column(nullable: false), ProductId = table.Column(nullable: true) }, constraints: table => { table.PrimaryKey("PK_Stock", x => x.Id); table.ForeignKey( name: "FK_Stock_Product_ProductId", column: x => x.ProductId, principalTable: "Product", principalColumn: "Id", onDelete: ReferentialAction.Restrict); table.ForeignKey( name: "FK_Stock_User_UserId", column: x => x.UserId, principalTable: "User", principalColumn: "Id", onDelete: ReferentialAction.Restrict); }); migrationBuilder.CreateIndex( name: "IX_Deal_ProductId", table: "Deal", column: "ProductId"); migrationBuilder.CreateIndex( name: "IX_Deal_UserId", table: "Deal", column: "UserId"); migrationBuilder.CreateIndex( name: "IX_Role_PermissionId", table: "Role", column: "PermissionId"); migrationBuilder.CreateIndex( name: "IX_Stock_ProductId", table: "Stock", column: "ProductId"); migrationBuilder.CreateIndex( name: "IX_Stock_UserId", table: "Stock", column: "UserId"); migrationBuilder.CreateIndex( name: "IX_User_UsersRolesId", table: "User", column: "UsersRolesId"); } protected override void Down(MigrationBuilder migrationBuilder) { migrationBuilder.DropTable( name: "Deal"); migrationBuilder.DropTable( name: "Stock"); migrationBuilder.DropTable( name: "Product"); migrationBuilder.DropTable( name: "User"); migrationBuilder.DropTable( name: "Role"); migrationBuilder.DropTable( name: "Permission"); } } }