From ecc4cfcfaceebe47cd8f9138d73c936cc3b828f7 Mon Sep 17 00:00:00 2001 From: dasha Date: Sat, 1 Apr 2023 17:48:07 +0400 Subject: [PATCH] =?UTF-8?q?=D0=98=D1=81=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D1=81=D0=BE=D1=81=D1=82=D0=B0=D0=B2?= =?UTF-8?q?=D0=BD=D0=BE=D0=B3=D0=BE=20=D0=BA=D0=BB=D1=8E=D1=87=D0=B0=20?= =?UTF-8?q?=D0=B2=20=D0=BC=D0=BE=D0=B4=D0=B5=D0=BB=D1=8F=D1=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../HardwareShopDatabase.cs | 1 + .../20230401141253_init1.Designer.cs | 409 ------------------ .../Migrations/20230401141253_init1.cs | 319 -------------- .../HardwareShopDatabaseModelSnapshot.cs | 406 ----------------- .../Models/ManyToMany/GoodComponent.cs | 6 - 5 files changed, 1 insertion(+), 1140 deletions(-) delete mode 100644 HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.Designer.cs delete mode 100644 HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.cs delete mode 100644 HardwareShop/HardwareShopDatabaseImplement/Migrations/HardwareShopDatabaseModelSnapshot.cs diff --git a/HardwareShop/HardwareShopDatabaseImplement/HardwareShopDatabase.cs b/HardwareShop/HardwareShopDatabaseImplement/HardwareShopDatabase.cs index b62d5e5..23cc40e 100644 --- a/HardwareShop/HardwareShopDatabaseImplement/HardwareShopDatabase.cs +++ b/HardwareShop/HardwareShopDatabaseImplement/HardwareShopDatabase.cs @@ -18,6 +18,7 @@ namespace HardwareShopDatabaseImplement modelBuilder.Entity().HasKey(x => new { x.ComponentId, x.BuildId }); modelBuilder.Entity().HasKey(x => new { x.PurchaseId, x.BuildId }); modelBuilder.Entity().HasKey(x => new { x.PurchaseId, x.GoodId }); + modelBuilder.Entity().HasKey(x => new { x.GoodId, x.ComponentId }); } public virtual DbSet Builds { set; get; } diff --git a/HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.Designer.cs b/HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.Designer.cs deleted file mode 100644 index 72cc5f2..0000000 --- a/HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.Designer.cs +++ /dev/null @@ -1,409 +0,0 @@ -// -using System; -using HardwareShopDatabaseImplement; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Migrations; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace HardwareShopDatabaseImplement.Migrations -{ - [DbContext(typeof(HardwareShopDatabase))] - [Migration("20230401141253_init1")] - partial class init1 - { - /// - protected override void BuildTargetModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "7.0.4") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.BuildComponent", b => - { - b.Property("ComponentId") - .HasColumnType("integer"); - - b.Property("BuildId") - .HasColumnType("integer"); - - b.Property("Count") - .HasColumnType("integer"); - - b.HasKey("ComponentId", "BuildId"); - - b.HasIndex("BuildId"); - - b.ToTable("BuildsComponents"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseBuild", b => - { - b.Property("PurchaseId") - .HasColumnType("integer"); - - b.Property("BuildId") - .HasColumnType("integer"); - - b.Property("Count") - .HasColumnType("integer"); - - b.HasKey("PurchaseId", "BuildId"); - - b.HasIndex("BuildId"); - - b.ToTable("PurchasesBuilds"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseGood", b => - { - b.Property("PurchaseId") - .HasColumnType("integer"); - - b.Property("GoodId") - .HasColumnType("integer"); - - b.Property("Count") - .HasColumnType("integer"); - - b.HasKey("PurchaseId", "GoodId"); - - b.HasIndex("GoodId"); - - b.ToTable("PurchasesGoods"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Component", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Components"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Good", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Goods"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Order", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Orders"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("Email") - .IsRequired() - .HasColumnType("text"); - - b.Property("Login") - .IsRequired() - .HasColumnType("text"); - - b.Property("Password") - .IsRequired() - .HasColumnType("text"); - - b.Property("Role") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.ToTable("Users"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Build", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("BuildName") - .IsRequired() - .HasColumnType("text"); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.Property("Price") - .HasColumnType("numeric"); - - b.Property("UserId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Builds"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Comment", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("BuildId") - .HasColumnType("integer"); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.Property("Text") - .IsRequired() - .HasColumnType("text"); - - b.HasKey("Id"); - - b.HasIndex("BuildId"); - - b.HasIndex("ClientId"); - - b.ToTable("Comments"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Purchase", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.Property("DatePurchase") - .HasColumnType("timestamp with time zone"); - - b.Property("PurchaseStatus") - .HasColumnType("integer"); - - b.Property("Sum") - .HasColumnType("numeric"); - - b.Property("UserId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Purchases"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.BuildComponent", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Build", "Build") - .WithMany("Components") - .HasForeignKey("BuildId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.Storekeeper.Component", "Component") - .WithMany() - .HasForeignKey("ComponentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Build"); - - b.Navigation("Component"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseBuild", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Build", "Build") - .WithMany("Purchases") - .HasForeignKey("BuildId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Purchase", "Purchase") - .WithMany("Builds") - .HasForeignKey("PurchaseId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Build"); - - b.Navigation("Purchase"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseGood", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Storekeeper.Good", "Good") - .WithMany() - .HasForeignKey("GoodId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Purchase", "Purchase") - .WithMany("Goods") - .HasForeignKey("PurchaseId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Good"); - - b.Navigation("Purchase"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Component", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Components") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Good", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Goods") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Order", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Orders") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Build", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Builds") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Comment", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Build", "Build") - .WithMany("Comments") - .HasForeignKey("BuildId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.User", null) - .WithMany("Comments") - .HasForeignKey("ClientId"); - - b.Navigation("Build"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Purchase", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Purchases") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.User", b => - { - b.Navigation("Builds"); - - b.Navigation("Comments"); - - b.Navigation("Components"); - - b.Navigation("Goods"); - - b.Navigation("Orders"); - - b.Navigation("Purchases"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Build", b => - { - b.Navigation("Comments"); - - b.Navigation("Components"); - - b.Navigation("Purchases"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Purchase", b => - { - b.Navigation("Builds"); - - b.Navigation("Goods"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.cs b/HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.cs deleted file mode 100644 index 2c92685..0000000 --- a/HardwareShop/HardwareShopDatabaseImplement/Migrations/20230401141253_init1.cs +++ /dev/null @@ -1,319 +0,0 @@ -using System; -using Microsoft.EntityFrameworkCore.Migrations; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace HardwareShopDatabaseImplement.Migrations -{ - /// - public partial class init1 : Migration - { - /// - protected override void Up(MigrationBuilder migrationBuilder) - { - migrationBuilder.CreateTable( - name: "Users", - columns: table => new - { - Id = table.Column(type: "integer", nullable: false) - .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), - Login = table.Column(type: "text", nullable: false), - Email = table.Column(type: "text", nullable: false), - Password = table.Column(type: "text", nullable: false), - Role = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_Users", x => x.Id); - }); - - migrationBuilder.CreateTable( - name: "Builds", - columns: table => new - { - Id = table.Column(type: "integer", nullable: false) - .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), - Price = table.Column(type: "numeric", nullable: false), - BuildName = table.Column(type: "text", nullable: false), - UserId = table.Column(type: "integer", nullable: false), - ClientId = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_Builds", x => x.Id); - table.ForeignKey( - name: "FK_Builds_Users_ClientId", - column: x => x.ClientId, - principalTable: "Users", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "Components", - columns: table => new - { - Id = table.Column(type: "integer", nullable: false) - .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), - ClientId = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_Components", x => x.Id); - table.ForeignKey( - name: "FK_Components_Users_ClientId", - column: x => x.ClientId, - principalTable: "Users", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "Goods", - columns: table => new - { - Id = table.Column(type: "integer", nullable: false) - .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), - ClientId = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_Goods", x => x.Id); - table.ForeignKey( - name: "FK_Goods_Users_ClientId", - column: x => x.ClientId, - principalTable: "Users", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "Orders", - columns: table => new - { - Id = table.Column(type: "integer", nullable: false) - .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), - ClientId = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_Orders", x => x.Id); - table.ForeignKey( - name: "FK_Orders_Users_ClientId", - column: x => x.ClientId, - principalTable: "Users", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "Purchases", - columns: table => new - { - Id = table.Column(type: "integer", nullable: false) - .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), - Sum = table.Column(type: "numeric", nullable: false), - PurchaseStatus = table.Column(type: "integer", nullable: false), - DatePurchase = table.Column(type: "timestamp with time zone", nullable: true), - UserId = table.Column(type: "integer", nullable: false), - ClientId = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_Purchases", x => x.Id); - table.ForeignKey( - name: "FK_Purchases_Users_ClientId", - column: x => x.ClientId, - principalTable: "Users", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "Comments", - columns: table => new - { - Id = table.Column(type: "integer", nullable: false) - .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), - Text = table.Column(type: "text", nullable: false), - BuildId = table.Column(type: "integer", nullable: false), - ClientId = table.Column(type: "integer", nullable: true) - }, - constraints: table => - { - table.PrimaryKey("PK_Comments", x => x.Id); - table.ForeignKey( - name: "FK_Comments_Builds_BuildId", - column: x => x.BuildId, - principalTable: "Builds", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "FK_Comments_Users_ClientId", - column: x => x.ClientId, - principalTable: "Users", - principalColumn: "Id"); - }); - - migrationBuilder.CreateTable( - name: "BuildsComponents", - columns: table => new - { - BuildId = table.Column(type: "integer", nullable: false), - ComponentId = table.Column(type: "integer", nullable: false), - Count = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_BuildsComponents", x => new { x.ComponentId, x.BuildId }); - table.ForeignKey( - name: "FK_BuildsComponents_Builds_BuildId", - column: x => x.BuildId, - principalTable: "Builds", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "FK_BuildsComponents_Components_ComponentId", - column: x => x.ComponentId, - principalTable: "Components", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "PurchasesBuilds", - columns: table => new - { - BuildId = table.Column(type: "integer", nullable: false), - PurchaseId = table.Column(type: "integer", nullable: false), - Count = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_PurchasesBuilds", x => new { x.PurchaseId, x.BuildId }); - table.ForeignKey( - name: "FK_PurchasesBuilds_Builds_BuildId", - column: x => x.BuildId, - principalTable: "Builds", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "FK_PurchasesBuilds_Purchases_PurchaseId", - column: x => x.PurchaseId, - principalTable: "Purchases", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateTable( - name: "PurchasesGoods", - columns: table => new - { - PurchaseId = table.Column(type: "integer", nullable: false), - GoodId = table.Column(type: "integer", nullable: false), - Count = table.Column(type: "integer", nullable: false) - }, - constraints: table => - { - table.PrimaryKey("PK_PurchasesGoods", x => new { x.PurchaseId, x.GoodId }); - table.ForeignKey( - name: "FK_PurchasesGoods_Goods_GoodId", - column: x => x.GoodId, - principalTable: "Goods", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - table.ForeignKey( - name: "FK_PurchasesGoods_Purchases_PurchaseId", - column: x => x.PurchaseId, - principalTable: "Purchases", - principalColumn: "Id", - onDelete: ReferentialAction.Cascade); - }); - - migrationBuilder.CreateIndex( - name: "IX_Builds_ClientId", - table: "Builds", - column: "ClientId"); - - migrationBuilder.CreateIndex( - name: "IX_BuildsComponents_BuildId", - table: "BuildsComponents", - column: "BuildId"); - - migrationBuilder.CreateIndex( - name: "IX_Comments_BuildId", - table: "Comments", - column: "BuildId"); - - migrationBuilder.CreateIndex( - name: "IX_Comments_ClientId", - table: "Comments", - column: "ClientId"); - - migrationBuilder.CreateIndex( - name: "IX_Components_ClientId", - table: "Components", - column: "ClientId"); - - migrationBuilder.CreateIndex( - name: "IX_Goods_ClientId", - table: "Goods", - column: "ClientId"); - - migrationBuilder.CreateIndex( - name: "IX_Orders_ClientId", - table: "Orders", - column: "ClientId"); - - migrationBuilder.CreateIndex( - name: "IX_Purchases_ClientId", - table: "Purchases", - column: "ClientId"); - - migrationBuilder.CreateIndex( - name: "IX_PurchasesBuilds_BuildId", - table: "PurchasesBuilds", - column: "BuildId"); - - migrationBuilder.CreateIndex( - name: "IX_PurchasesGoods_GoodId", - table: "PurchasesGoods", - column: "GoodId"); - } - - /// - protected override void Down(MigrationBuilder migrationBuilder) - { - migrationBuilder.DropTable( - name: "BuildsComponents"); - - migrationBuilder.DropTable( - name: "Comments"); - - migrationBuilder.DropTable( - name: "Orders"); - - migrationBuilder.DropTable( - name: "PurchasesBuilds"); - - migrationBuilder.DropTable( - name: "PurchasesGoods"); - - migrationBuilder.DropTable( - name: "Components"); - - migrationBuilder.DropTable( - name: "Builds"); - - migrationBuilder.DropTable( - name: "Goods"); - - migrationBuilder.DropTable( - name: "Purchases"); - - migrationBuilder.DropTable( - name: "Users"); - } - } -} diff --git a/HardwareShop/HardwareShopDatabaseImplement/Migrations/HardwareShopDatabaseModelSnapshot.cs b/HardwareShop/HardwareShopDatabaseImplement/Migrations/HardwareShopDatabaseModelSnapshot.cs deleted file mode 100644 index a4fe60b..0000000 --- a/HardwareShop/HardwareShopDatabaseImplement/Migrations/HardwareShopDatabaseModelSnapshot.cs +++ /dev/null @@ -1,406 +0,0 @@ -// -using System; -using HardwareShopDatabaseImplement; -using Microsoft.EntityFrameworkCore; -using Microsoft.EntityFrameworkCore.Infrastructure; -using Microsoft.EntityFrameworkCore.Storage.ValueConversion; -using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; - -#nullable disable - -namespace HardwareShopDatabaseImplement.Migrations -{ - [DbContext(typeof(HardwareShopDatabase))] - partial class HardwareShopDatabaseModelSnapshot : ModelSnapshot - { - protected override void BuildModel(ModelBuilder modelBuilder) - { -#pragma warning disable 612, 618 - modelBuilder - .HasAnnotation("ProductVersion", "7.0.4") - .HasAnnotation("Relational:MaxIdentifierLength", 63); - - NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.BuildComponent", b => - { - b.Property("ComponentId") - .HasColumnType("integer"); - - b.Property("BuildId") - .HasColumnType("integer"); - - b.Property("Count") - .HasColumnType("integer"); - - b.HasKey("ComponentId", "BuildId"); - - b.HasIndex("BuildId"); - - b.ToTable("BuildsComponents"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseBuild", b => - { - b.Property("PurchaseId") - .HasColumnType("integer"); - - b.Property("BuildId") - .HasColumnType("integer"); - - b.Property("Count") - .HasColumnType("integer"); - - b.HasKey("PurchaseId", "BuildId"); - - b.HasIndex("BuildId"); - - b.ToTable("PurchasesBuilds"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseGood", b => - { - b.Property("PurchaseId") - .HasColumnType("integer"); - - b.Property("GoodId") - .HasColumnType("integer"); - - b.Property("Count") - .HasColumnType("integer"); - - b.HasKey("PurchaseId", "GoodId"); - - b.HasIndex("GoodId"); - - b.ToTable("PurchasesGoods"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Component", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Components"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Good", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Goods"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Order", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Orders"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.User", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("Email") - .IsRequired() - .HasColumnType("text"); - - b.Property("Login") - .IsRequired() - .HasColumnType("text"); - - b.Property("Password") - .IsRequired() - .HasColumnType("text"); - - b.Property("Role") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.ToTable("Users"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Build", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("BuildName") - .IsRequired() - .HasColumnType("text"); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.Property("Price") - .HasColumnType("numeric"); - - b.Property("UserId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Builds"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Comment", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("BuildId") - .HasColumnType("integer"); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.Property("Text") - .IsRequired() - .HasColumnType("text"); - - b.HasKey("Id"); - - b.HasIndex("BuildId"); - - b.HasIndex("ClientId"); - - b.ToTable("Comments"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Purchase", b => - { - b.Property("Id") - .ValueGeneratedOnAdd() - .HasColumnType("integer"); - - NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("Id")); - - b.Property("ClientId") - .HasColumnType("integer"); - - b.Property("DatePurchase") - .HasColumnType("timestamp with time zone"); - - b.Property("PurchaseStatus") - .HasColumnType("integer"); - - b.Property("Sum") - .HasColumnType("numeric"); - - b.Property("UserId") - .HasColumnType("integer"); - - b.HasKey("Id"); - - b.HasIndex("ClientId"); - - b.ToTable("Purchases"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.BuildComponent", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Build", "Build") - .WithMany("Components") - .HasForeignKey("BuildId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.Storekeeper.Component", "Component") - .WithMany() - .HasForeignKey("ComponentId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Build"); - - b.Navigation("Component"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseBuild", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Build", "Build") - .WithMany("Purchases") - .HasForeignKey("BuildId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Purchase", "Purchase") - .WithMany("Builds") - .HasForeignKey("PurchaseId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Build"); - - b.Navigation("Purchase"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.ManyToMany.PurchaseGood", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Storekeeper.Good", "Good") - .WithMany() - .HasForeignKey("GoodId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Purchase", "Purchase") - .WithMany("Goods") - .HasForeignKey("PurchaseId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("Good"); - - b.Navigation("Purchase"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Component", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Components") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Good", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Goods") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Storekeeper.Order", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Orders") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Build", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Builds") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Comment", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.Worker.Build", "Build") - .WithMany("Comments") - .HasForeignKey("BuildId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.HasOne("HardwareShopDatabaseImplement.Models.User", null) - .WithMany("Comments") - .HasForeignKey("ClientId"); - - b.Navigation("Build"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Purchase", b => - { - b.HasOne("HardwareShopDatabaseImplement.Models.User", "User") - .WithMany("Purchases") - .HasForeignKey("ClientId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - - b.Navigation("User"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.User", b => - { - b.Navigation("Builds"); - - b.Navigation("Comments"); - - b.Navigation("Components"); - - b.Navigation("Goods"); - - b.Navigation("Orders"); - - b.Navigation("Purchases"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Build", b => - { - b.Navigation("Comments"); - - b.Navigation("Components"); - - b.Navigation("Purchases"); - }); - - modelBuilder.Entity("HardwareShopDatabaseImplement.Models.Worker.Purchase", b => - { - b.Navigation("Builds"); - - b.Navigation("Goods"); - }); -#pragma warning restore 612, 618 - } - } -} diff --git a/HardwareShop/HardwareShopDatabaseImplement/Models/ManyToMany/GoodComponent.cs b/HardwareShop/HardwareShopDatabaseImplement/Models/ManyToMany/GoodComponent.cs index bbd3224..f51783b 100644 --- a/HardwareShop/HardwareShopDatabaseImplement/Models/ManyToMany/GoodComponent.cs +++ b/HardwareShop/HardwareShopDatabaseImplement/Models/ManyToMany/GoodComponent.cs @@ -6,14 +6,8 @@ namespace HardwareShopDatabaseImplement.Models.ManyToMany { public class GoodComponent { - [Key] - [Column(Order = 1)] - [Required] public int GoodId { get; set; } - [Key] - [Column(Order = 2)] - [Required] public int ComponentId { get; set; } [Required]