diff --git a/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/ShopLogic.cs b/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/ShopLogic.cs
index 4d2ccae..7c9e389 100644
--- a/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/ShopLogic.cs
+++ b/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/ShopLogic.cs
@@ -211,36 +211,24 @@ namespace BlacksmithWorkshopBusinessLogic.BusinessLogic
foreach (var shop in _shopStorage.GetFullList())
{
- int _Sum = shop.MaxCountManufactures - shop.ShopManufactures.Select(x => x.Value.Item2).Sum();
-
- if(_Sum <= 0)
- {
- continue;
- }
-
- if (_Sum < count)
+ if (shop.MaxCountManufactures - shop.ShopManufactures.Select(x => x.Value.Item2).Sum() < count)
{
if (!AddManufacture(new() { Id = shop.Id }, model, shop.MaxCountManufactures - shop.ShopManufactures.Select(x => x.Value.Item2).Sum()))
{
- _logger.LogWarning("AddManufactures operation failed.");
-
+ _logger.LogWarning("AddIceCreams operation failed.");
return false;
}
-
count -= shop.MaxCountManufactures - shop.ShopManufactures.Select(x => x.Value.Item2).Sum();
}
else
{
if (!AddManufacture(new() { Id = shop.Id }, model, count))
{
- _logger.LogWarning("AddManufactures operation failed.");
-
+ _logger.LogWarning("AddIceCreams operation failed.");
return false;
}
-
count -= count;
}
-
if (count == 0)
{
return true;
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/WorkModeling.cs b/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/WorkModeling.cs
index daf8b0a..cf3419a 100644
--- a/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/WorkModeling.cs
+++ b/BlacksmithWorkshop/BlacksmithWorkshopBusinessLogic/BusinessLogic/WorkModeling.cs
@@ -37,37 +37,14 @@ namespace BlacksmithWorkshopBusinessLogic.BusinessLogic
return;
}
- var orders = _orderLogic.ReadList(new OrderSearchModel
- {
- Status = OrderStatus.Принят
- });
+ var orders = _orderLogic.ReadList(new() { Status = OrderStatus.Принят });
+ if (orders == null)
+ {
+ _logger.LogWarning("DoWork. Orders is null or empty");
+ return;
+ }
- if (orders == null || orders.Count == 0)
- {
- var secondCheckOrders = _orderLogic.ReadList(new OrderSearchModel
- {
- Status = OrderStatus.Ожидание
- });
-
- if (secondCheckOrders == null || orders.Count == 0)
- {
-
- var thirdCheckOrders = _orderLogic.ReadList(new OrderSearchModel
- {
- Status = OrderStatus.Выполняется
- });
-
- if (thirdCheckOrders == null || orders.Count == 0)
- {
-
- _logger.LogWarning("All orders is done.");
-
- return;
- }
- }
- }
-
- _logger.LogDebug("DoWork for {Count} orders", orders.Count);
+ _logger.LogDebug("DoWork for {Count} orders", orders.Count);
foreach (var implementer in implementers)
{
@@ -83,11 +60,11 @@ namespace BlacksmithWorkshopBusinessLogic.BusinessLogic
return;
}
- await Task.Run(() =>
- {
+ await Task.Run(() =>
+ {
try
{
- var runOrder = _orderLogic.ReadElement(new OrderSearchModel
+ var runOrder = _orderLogic.ReadList(new OrderSearchModel
{
ImplementerId = implementer.Id,
Status = OrderStatus.Ожидание
@@ -98,15 +75,16 @@ namespace BlacksmithWorkshopBusinessLogic.BusinessLogic
return;
}
- _logger.LogDebug("DoWork. Worker {Id} finish order {Order}", implementer.Id, runOrder.Id);
-
- _orderLogic.FinishOrder(new OrderBindingModel
+ foreach(var order in runOrder)
{
- Id = runOrder.Id
- });
-
- // отдыхаем
- Thread.Sleep(implementer.Qualification * _rnd.Next(10, 100));
+ _logger.LogDebug("DoWork. Worker {Id} finish order {Order}", implementer.Id, order.Id);
+ _orderLogic.FinishOrder(new OrderBindingModel
+ {
+ Id = order.Id
+ });
+ // отдыхаем
+ //Thread.Sleep(implementer.Qualification * _rnd.Next(10, 100));
+ }
}
// заказа может не быть, просто игнорируем ошибку
catch (InvalidOperationException ex)
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/OrderSearchModel.cs b/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/OrderSearchModel.cs
index b2e4851..3337e2e 100644
--- a/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/OrderSearchModel.cs
+++ b/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/OrderSearchModel.cs
@@ -25,5 +25,5 @@ namespace BlacksmithWorkshopContracts.SearchModels
public DateTime? DateTo { get; set; }
public OrderStatus? Status { get; set; }
- }
+ }
}
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/ShopSearchModel.cs b/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/ShopSearchModel.cs
index 18e9323..9e1f2ab 100644
--- a/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/ShopSearchModel.cs
+++ b/BlacksmithWorkshop/BlacksmithWorkshopContracts/SearchModels/ShopSearchModel.cs
@@ -1,4 +1,5 @@
-using System;
+using BlacksmithWorkshopDataModels.Enums;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Implements/OrderStorage.cs b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Implements/OrderStorage.cs
index bc002f2..ffab329 100644
--- a/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Implements/OrderStorage.cs
+++ b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Implements/OrderStorage.cs
@@ -42,20 +42,34 @@ namespace BlacksmithWorkshopDatabaseImplement.Implements
public OrderViewModel? GetElement(OrderSearchModel model)
{
+ using var context = new BlacksmithWorkshopDatabase();
+ if (model.ImplementerId.HasValue && model.Status.HasValue)
+ {
+ return context.Orders
+ .Include(x => x.Manufacture)
+ .Include(x => x.Client)
+ .Include(x => x.Implementer)
+ .FirstOrDefault(x => x.ImplementerId == model.ImplementerId && x.Status == model.Status)
+ ?.GetViewModel;
+ }
+ if (model.ImplementerId.HasValue)
+ {
+ return context.Orders
+ .Include(x => x.Manufacture)
+ .Include(x => x.Client)
+ .Include(x => x.Implementer)
+ .FirstOrDefault(x => x.ImplementerId == model.ImplementerId)
+ ?.GetViewModel;
+ }
if (!model.Id.HasValue)
{
return null;
}
-
- using var context = new BlacksmithWorkshopDatabase();
-
return context.Orders
.Include(x => x.Manufacture)
- .Include(x => x.Client)
- .Include(x => x.Implementer)
- .FirstOrDefault(x => (model.Status == null || model.Status != null && model.Status == x.Status) &&
- model.ImplementerId.HasValue && x.ImplementerId == model.ImplementerId ||
- model.Id.HasValue && x.Id == model.Id)
+ .Include(x => x.Client)
+ .Include(x => x.Implementer)
+ .FirstOrDefault(x => model.Id.HasValue && x.Id == model.Id)
?.GetViewModel;
}
@@ -104,7 +118,7 @@ namespace BlacksmithWorkshopDatabaseImplement.Implements
.ToList();
}
- return context.Orders
+ return context.Orders
.Include(x => x.Manufacture)
.Include(x => x.Client)
.Include(x => x.Implementer)
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425091225_CLearTwo.Designer.cs b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425091225_CLearTwo.Designer.cs
new file mode 100644
index 0000000..fc6318d
--- /dev/null
+++ b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425091225_CLearTwo.Designer.cs
@@ -0,0 +1,336 @@
+//
+using System;
+using BlacksmithWorkshopDatabaseImplement;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace BlacksmithWorkshopDatabaseImplement.Migrations
+{
+ [DbContext(typeof(BlacksmithWorkshopDatabase))]
+ [Migration("20230425091225_CLearTwo")]
+ partial class CLearTwo
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "7.0.4")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+ SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Client", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ClientFIO")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Clients");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Implementer", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ImplementerFIO")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Qualification")
+ .HasColumnType("int");
+
+ b.Property("WorkExperience")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("Implementers");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ManufactureName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Price")
+ .HasColumnType("float");
+
+ b.HasKey("Id");
+
+ b.ToTable("Manufactures");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ManufactureWorkPiece", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Count")
+ .HasColumnType("int");
+
+ b.Property("ManufactureId")
+ .HasColumnType("int");
+
+ b.Property("WorkPieceId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ManufactureId");
+
+ b.HasIndex("WorkPieceId");
+
+ b.ToTable("ManufactureWorkPieces");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Order", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ClientId")
+ .HasColumnType("int");
+
+ b.Property("Count")
+ .HasColumnType("int");
+
+ b.Property("DateCreate")
+ .HasColumnType("datetime2");
+
+ b.Property("DateImplement")
+ .HasColumnType("datetime2");
+
+ b.Property("ImplementerId")
+ .HasColumnType("int");
+
+ b.Property("ManufactureId")
+ .HasColumnType("int");
+
+ b.Property("Status")
+ .HasColumnType("int");
+
+ b.Property("Sum")
+ .HasColumnType("float");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ClientId");
+
+ b.HasIndex("ImplementerId");
+
+ b.HasIndex("ManufactureId");
+
+ b.ToTable("Orders");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Shop", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Address")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DateOpen")
+ .HasColumnType("datetime2");
+
+ b.Property("MaxCountManufactures")
+ .HasColumnType("int");
+
+ b.Property("ShopName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Shops");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ShopManufacture", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Count")
+ .HasColumnType("int");
+
+ b.Property("ManufactureId")
+ .HasColumnType("int");
+
+ b.Property("ShopId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ManufactureId");
+
+ b.HasIndex("ShopId");
+
+ b.ToTable("ShopManufactures");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.WorkPiece", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Cost")
+ .HasColumnType("float");
+
+ b.Property("WorkPieceName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("WorkPieces");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ManufactureWorkPiece", b =>
+ {
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", "Manufacture")
+ .WithMany("WorkPieces")
+ .HasForeignKey("ManufactureId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.WorkPiece", "WorkPiece")
+ .WithMany("ManufactureWorkPieces")
+ .HasForeignKey("WorkPieceId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Manufacture");
+
+ b.Navigation("WorkPiece");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Order", b =>
+ {
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Client", "Client")
+ .WithMany("Orders")
+ .HasForeignKey("ClientId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Implementer", "Implementer")
+ .WithMany("Orders")
+ .HasForeignKey("ImplementerId");
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", "Manufacture")
+ .WithMany("Orders")
+ .HasForeignKey("ManufactureId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Client");
+
+ b.Navigation("Implementer");
+
+ b.Navigation("Manufacture");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ShopManufacture", b =>
+ {
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", "Manufacture")
+ .WithMany("Shops")
+ .HasForeignKey("ManufactureId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Shop", "Shop")
+ .WithMany("Manufactures")
+ .HasForeignKey("ShopId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Manufacture");
+
+ b.Navigation("Shop");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Client", b =>
+ {
+ b.Navigation("Orders");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Implementer", b =>
+ {
+ b.Navigation("Orders");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", b =>
+ {
+ b.Navigation("Orders");
+
+ b.Navigation("Shops");
+
+ b.Navigation("WorkPieces");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Shop", b =>
+ {
+ b.Navigation("Manufactures");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.WorkPiece", b =>
+ {
+ b.Navigation("ManufactureWorkPieces");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425091225_CLearTwo.cs b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425091225_CLearTwo.cs
new file mode 100644
index 0000000..5e17230
--- /dev/null
+++ b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425091225_CLearTwo.cs
@@ -0,0 +1,22 @@
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace BlacksmithWorkshopDatabaseImplement.Migrations
+{
+ ///
+ public partial class CLearTwo : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.Sql("DELETE FROM [dbo].[Orders]");
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+
+ }
+ }
+}
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425094433_CLearThree.Designer.cs b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425094433_CLearThree.Designer.cs
new file mode 100644
index 0000000..3d63c2d
--- /dev/null
+++ b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425094433_CLearThree.Designer.cs
@@ -0,0 +1,336 @@
+//
+using System;
+using BlacksmithWorkshopDatabaseImplement;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace BlacksmithWorkshopDatabaseImplement.Migrations
+{
+ [DbContext(typeof(BlacksmithWorkshopDatabase))]
+ [Migration("20230425094433_CLearThree")]
+ partial class CLearThree
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "7.0.4")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+ SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Client", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ClientFIO")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Email")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Clients");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Implementer", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ImplementerFIO")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Password")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Qualification")
+ .HasColumnType("int");
+
+ b.Property("WorkExperience")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.ToTable("Implementers");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ManufactureName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Price")
+ .HasColumnType("float");
+
+ b.HasKey("Id");
+
+ b.ToTable("Manufactures");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ManufactureWorkPiece", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Count")
+ .HasColumnType("int");
+
+ b.Property("ManufactureId")
+ .HasColumnType("int");
+
+ b.Property("WorkPieceId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ManufactureId");
+
+ b.HasIndex("WorkPieceId");
+
+ b.ToTable("ManufactureWorkPieces");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Order", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("ClientId")
+ .HasColumnType("int");
+
+ b.Property("Count")
+ .HasColumnType("int");
+
+ b.Property("DateCreate")
+ .HasColumnType("datetime2");
+
+ b.Property("DateImplement")
+ .HasColumnType("datetime2");
+
+ b.Property("ImplementerId")
+ .HasColumnType("int");
+
+ b.Property("ManufactureId")
+ .HasColumnType("int");
+
+ b.Property("Status")
+ .HasColumnType("int");
+
+ b.Property("Sum")
+ .HasColumnType("float");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ClientId");
+
+ b.HasIndex("ImplementerId");
+
+ b.HasIndex("ManufactureId");
+
+ b.ToTable("Orders");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Shop", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Address")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("DateOpen")
+ .HasColumnType("datetime2");
+
+ b.Property("MaxCountManufactures")
+ .HasColumnType("int");
+
+ b.Property("ShopName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("Shops");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ShopManufacture", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Count")
+ .HasColumnType("int");
+
+ b.Property("ManufactureId")
+ .HasColumnType("int");
+
+ b.Property("ShopId")
+ .HasColumnType("int");
+
+ b.HasKey("Id");
+
+ b.HasIndex("ManufactureId");
+
+ b.HasIndex("ShopId");
+
+ b.ToTable("ShopManufactures");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.WorkPiece", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Cost")
+ .HasColumnType("float");
+
+ b.Property("WorkPieceName")
+ .IsRequired()
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("WorkPieces");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ManufactureWorkPiece", b =>
+ {
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", "Manufacture")
+ .WithMany("WorkPieces")
+ .HasForeignKey("ManufactureId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.WorkPiece", "WorkPiece")
+ .WithMany("ManufactureWorkPieces")
+ .HasForeignKey("WorkPieceId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Manufacture");
+
+ b.Navigation("WorkPiece");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Order", b =>
+ {
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Client", "Client")
+ .WithMany("Orders")
+ .HasForeignKey("ClientId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Implementer", "Implementer")
+ .WithMany("Orders")
+ .HasForeignKey("ImplementerId");
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", "Manufacture")
+ .WithMany("Orders")
+ .HasForeignKey("ManufactureId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Client");
+
+ b.Navigation("Implementer");
+
+ b.Navigation("Manufacture");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.ShopManufacture", b =>
+ {
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", "Manufacture")
+ .WithMany("Shops")
+ .HasForeignKey("ManufactureId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("BlacksmithWorkshopDatabaseImplement.Models.Shop", "Shop")
+ .WithMany("Manufactures")
+ .HasForeignKey("ShopId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Manufacture");
+
+ b.Navigation("Shop");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Client", b =>
+ {
+ b.Navigation("Orders");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Implementer", b =>
+ {
+ b.Navigation("Orders");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Manufacture", b =>
+ {
+ b.Navigation("Orders");
+
+ b.Navigation("Shops");
+
+ b.Navigation("WorkPieces");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.Shop", b =>
+ {
+ b.Navigation("Manufactures");
+ });
+
+ modelBuilder.Entity("BlacksmithWorkshopDatabaseImplement.Models.WorkPiece", b =>
+ {
+ b.Navigation("ManufactureWorkPieces");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425094433_CLearThree.cs b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425094433_CLearThree.cs
new file mode 100644
index 0000000..02f5bdd
--- /dev/null
+++ b/BlacksmithWorkshop/BlacksmithWorkshopDatabaseImplement/Migrations/20230425094433_CLearThree.cs
@@ -0,0 +1,22 @@
+using Microsoft.EntityFrameworkCore.Migrations;
+
+#nullable disable
+
+namespace BlacksmithWorkshopDatabaseImplement.Migrations
+{
+ ///
+ public partial class CLearThree : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.Sql("DELETE FROM [dbo].[Orders]");
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+
+ }
+ }
+}