6 усложненная
This commit is contained in:
parent
e8c530921a
commit
6043650fbe
@ -15,16 +15,11 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
private readonly ILogger _logger;
|
private readonly ILogger _logger;
|
||||||
|
|
||||||
private readonly IOrderStorage _orderStorage;
|
private readonly IOrderStorage _orderStorage;
|
||||||
<<<<<<< HEAD
|
|
||||||
private readonly IShopStorage _shopStorage;
|
private readonly IShopStorage _shopStorage;
|
||||||
private readonly IWorkStorage _workStorage;
|
private readonly IWorkStorage _workStorage;
|
||||||
private readonly IShopLogic _shopLogic;
|
private readonly IShopLogic _shopLogic;
|
||||||
public OrderLogic(ILogger<OrderLogic> logger, IOrderStorage orderStorage, IShopStorage shopStorage, IWorkStorage workStorage, IShopLogic shopLogic)
|
static readonly object _locker = new object();
|
||||||
=======
|
public OrderLogic(ILogger<OrderLogic> logger, IOrderStorage orderStorage, IShopStorage shopStorage, IWorkStorage workStorage, IShopLogic shopLogic)
|
||||||
private readonly object _locker =new();
|
|
||||||
|
|
||||||
public OrderLogic(ILogger<OrderLogic> logger, IOrderStorage orderStorage)
|
|
||||||
>>>>>>> lab_6
|
|
||||||
{
|
{
|
||||||
_logger = logger;
|
_logger = logger;
|
||||||
_orderStorage = orderStorage;
|
_orderStorage = orderStorage;
|
||||||
@ -105,46 +100,38 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
_logger.LogWarning("Find order failed");
|
_logger.LogWarning("Find order failed");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
<<<<<<< HEAD
|
if (viewModel.Status != newStatus - 1 && viewModel.Status != OrderStatus.Ожидание)
|
||||||
if (newStatus == OrderStatus.Выдан)
|
|
||||||
{
|
|
||||||
var work = _workStorage.GetElement(new WorkSearchModel() { Id = viewModel.WorkId});
|
|
||||||
if (work == null)
|
|
||||||
{
|
|
||||||
_logger.LogWarning("Change status operation failed.Work not found");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (!_shopLogic.CheckAndSupply(work, viewModel.Count))
|
|
||||||
{
|
|
||||||
_logger.LogWarning("Change status operation failed. Works delivery operation failed");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
model.Status = newStatus;
|
|
||||||
if (model.Status == OrderStatus.Готов)
|
|
||||||
{
|
|
||||||
model.DateImplement = DateTime.Now;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
model.DateImplement = viewModel.DateImplement;
|
|
||||||
}
|
|
||||||
CheckModel(model, false);
|
|
||||||
if (_orderStorage.Update(model) == null)
|
|
||||||
{
|
|
||||||
_logger.LogWarning("Change status operation failed");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
=======
|
|
||||||
if (viewModel.Status != newStatus - 1)
|
|
||||||
{
|
{
|
||||||
_logger.LogWarning("Status change failed");
|
_logger.LogWarning("Status change failed");
|
||||||
throw new InvalidOperationException("Невозможно перевести состояние заказа");
|
throw new InvalidOperationException("Невозможно перевести состояние заказа");
|
||||||
}
|
}
|
||||||
model.Status = newStatus;
|
if (viewModel.ImplementerId != null)
|
||||||
if (model.Status == OrderStatus.Выдан) model.DateImplement = DateTime.Now;
|
viewModel.ImplementerId = model.ImplementerId;
|
||||||
_orderStorage.Update(model);
|
model.Status = newStatus;
|
||||||
>>>>>>> lab_6
|
if (model.WorkId == 0)
|
||||||
|
model.WorkId = viewModel.WorkId;
|
||||||
|
if (model.Count == 0)
|
||||||
|
model.Count = viewModel.Count;
|
||||||
|
if (newStatus == OrderStatus.Готов)
|
||||||
|
{
|
||||||
|
var work = _workStorage.GetElement(new WorkSearchModel { Id = model.WorkId });
|
||||||
|
if (work == null)
|
||||||
|
{
|
||||||
|
_logger.LogWarning("Status change operation failed. Work not found.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!_shopLogic.CheckAndSupply(work, model.Count))
|
||||||
|
{
|
||||||
|
_logger.LogWarning("Status change operation failed. Shop supply error.");
|
||||||
|
model.Status = OrderStatus.Ожидание;
|
||||||
|
if (_orderStorage.Update(model) == null)
|
||||||
|
_logger.LogWarning("Update operation failed");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
_orderStorage.Update(model);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
private void CheckModel(OrderBindingModel model, bool withParams = true)
|
private void CheckModel(OrderBindingModel model, bool withParams = true)
|
||||||
|
@ -32,9 +32,16 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
var orders = _orderLogic.ReadList(new OrderSearchModel { Status = OrderStatus.Принят });
|
var orders = _orderLogic.ReadList(new OrderSearchModel { Status = OrderStatus.Принят });
|
||||||
if (orders == null || orders.Count == 0)
|
if (orders == null)
|
||||||
|
{
|
||||||
|
_logger.LogWarning("DoWork. Orders is null");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
orders.AddRange(_orderLogic.ReadList(new() { Status = OrderStatus.Выполняется }) ?? new());
|
||||||
|
orders.AddRange(_orderLogic.ReadList(new() { Status = OrderStatus.Ожидание }) ?? new());
|
||||||
|
if (orders.Count == 0)
|
||||||
{
|
{
|
||||||
_logger.LogWarning("DoWork. Orders is null or empty");
|
_logger.LogWarning("DoWork. Orders is empty");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
_logger.LogDebug("DoWork for {Count} orders", orders.Count);
|
_logger.LogDebug("DoWork for {Count} orders", orders.Count);
|
||||||
@ -55,7 +62,8 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
await RunOrderInWork(implementer);
|
await RunWaitingOrder(implementer);
|
||||||
|
await RunOrderInWork(implementer);
|
||||||
|
|
||||||
await Task.Run(() =>
|
await Task.Run(() =>
|
||||||
{
|
{
|
||||||
@ -75,8 +83,9 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
_logger.LogDebug("DoWork. Worker {Id} finish order {Order}", implementer.Id, order.Id);
|
_logger.LogDebug("DoWork. Worker {Id} finish order {Order}", implementer.Id, order.Id);
|
||||||
_orderLogic.FinishOrder(new OrderBindingModel
|
_orderLogic.FinishOrder(new OrderBindingModel
|
||||||
{
|
{
|
||||||
Id = order.Id
|
Id = order.Id,
|
||||||
});
|
ImplementerId = implementer.Id
|
||||||
|
});
|
||||||
// отдыхаем
|
// отдыхаем
|
||||||
Thread.Sleep(implementer.Qualification * _rnd.Next(10, 100));
|
Thread.Sleep(implementer.Qualification * _rnd.Next(10, 100));
|
||||||
}
|
}
|
||||||
@ -127,8 +136,10 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
{
|
{
|
||||||
Id = runOrder.Id
|
Id = runOrder.Id
|
||||||
});
|
});
|
||||||
// отдыхаем
|
_logger.LogDebug("DoWork. Worker {Id} delivery order {Order}", implementer.Id, runOrder.Id);
|
||||||
Thread.Sleep(implementer.Qualification * _rnd.Next(10, 100));
|
_orderLogic.DeliveryOrder(new() { Id = runOrder.Id });
|
||||||
|
// отдыхаем
|
||||||
|
Thread.Sleep(implementer.Qualification * _rnd.Next(10, 100));
|
||||||
}
|
}
|
||||||
// заказа может не быть, просто игнорируем ошибку
|
// заказа может не быть, просто игнорируем ошибку
|
||||||
catch (InvalidOperationException ex)
|
catch (InvalidOperationException ex)
|
||||||
@ -142,5 +153,39 @@ namespace PlumbingRepairBusinessLogic.BusinessLogics
|
|||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
private async Task RunWaitingOrder(ImplementerViewModel implementer)
|
||||||
|
{
|
||||||
|
if (_orderLogic == null || implementer == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try
|
||||||
|
{
|
||||||
|
var order = await Task.Run(() => _orderLogic.ReadElement(new OrderSearchModel
|
||||||
|
{
|
||||||
|
ImplementerId = implementer.Id,
|
||||||
|
Status = OrderStatus.Ожидание
|
||||||
|
}));
|
||||||
|
if (order == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
_logger.LogDebug("DoWork. Worker {Id} delivery order {Order}", implementer.Id, order.Id);
|
||||||
|
_orderLogic.DeliveryOrder(new OrderBindingModel
|
||||||
|
{
|
||||||
|
Id = order.Id
|
||||||
|
});
|
||||||
|
Thread.Sleep(implementer.Qualification * _rnd.Next(10, 100));
|
||||||
|
}
|
||||||
|
catch (InvalidOperationException ex)
|
||||||
|
{
|
||||||
|
_logger.LogWarning(ex, "Error try get work");
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
_logger.LogError(ex, "Error while do work");
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
@ -10,6 +10,8 @@
|
|||||||
|
|
||||||
Готов = 2,
|
Готов = 2,
|
||||||
|
|
||||||
Выдан = 3
|
Выдан = 3,
|
||||||
|
|
||||||
|
Ожидание = 4
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -55,10 +55,14 @@ namespace PlumbingRepairDatabaseImplement.Implements
|
|||||||
}
|
}
|
||||||
if (model.Status.HasValue)
|
if (model.Status.HasValue)
|
||||||
{
|
{
|
||||||
return context.Orders
|
return context.Orders.
|
||||||
.Where(x => x.ImplementerId == model.ImplementerId && x.Status == model.Status)
|
Include(x => x.Work)
|
||||||
.Select(x => AttachNames(x.GetViewModel)).ToList();
|
.Include(x => x.Client)
|
||||||
}
|
.Include(x => x.Implementer)
|
||||||
|
.Where(x => x.Status.Equals(model.Status))
|
||||||
|
.Select(x => x.GetViewModel)
|
||||||
|
.ToList();
|
||||||
|
}
|
||||||
if (model.ClientId.HasValue)
|
if (model.ClientId.HasValue)
|
||||||
{
|
{
|
||||||
return context.Orders
|
return context.Orders
|
||||||
|
@ -1,338 +0,0 @@
|
|||||||
// <auto-generated />
|
|
||||||
using System;
|
|
||||||
using Microsoft.EntityFrameworkCore;
|
|
||||||
using Microsoft.EntityFrameworkCore.Infrastructure;
|
|
||||||
using Microsoft.EntityFrameworkCore.Metadata;
|
|
||||||
using Microsoft.EntityFrameworkCore.Migrations;
|
|
||||||
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
|
||||||
using PlumbingRepairDatabaseImplement;
|
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace PlumbingRepairDatabaseImplement.Migrations
|
|
||||||
{
|
|
||||||
[DbContext(typeof(PlumbingRepairDatabase))]
|
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.Designer.cs
|
|
||||||
[Migration("20240501122640_InitCreate")]
|
|
||||||
========
|
|
||||||
[Migration("20240418172421_InitCreate")]
|
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.Designer.cs
|
|
||||||
partial class InitCreate
|
|
||||||
{
|
|
||||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
|
||||||
{
|
|
||||||
#pragma warning disable 612, 618
|
|
||||||
modelBuilder
|
|
||||||
.HasAnnotation("ProductVersion", "6.0.27")
|
|
||||||
.HasAnnotation("Relational:MaxIdentifierLength", 128);
|
|
||||||
|
|
||||||
SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder, 1L, 1);
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Client", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<string>("ClientFIO")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<string>("Email")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<string>("Password")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.ToTable("Clients");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Component", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<string>("ComponentName")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<double>("Cost")
|
|
||||||
.HasColumnType("float");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.ToTable("Components");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Implementer", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<string>("ImplementerFIO")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<string>("Password")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<int>("Qualification")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("WorkExperience")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.ToTable("Implementers");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Order", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<int>("ClientId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("Count")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<DateTime>("DateCreate")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<DateTime?>("DateImplement")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<int?>("ImplementerId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("Status")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<double>("Sum")
|
|
||||||
.HasColumnType("float");
|
|
||||||
|
|
||||||
b.Property<int>("WorkId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("ClientId");
|
|
||||||
|
|
||||||
b.HasIndex("ImplementerId");
|
|
||||||
|
|
||||||
b.HasIndex("WorkId");
|
|
||||||
|
|
||||||
b.ToTable("Orders");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Shop", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<string>("Address")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<DateTime>("DateOpening")
|
|
||||||
.HasColumnType("datetime2");
|
|
||||||
|
|
||||||
b.Property<string>("ShopName")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.Property<int>("maxCountWorks")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.ToTable("Shops");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.ShopWork", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<int>("Count")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("ShopId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("WorkId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("ShopId");
|
|
||||||
|
|
||||||
b.HasIndex("WorkId");
|
|
||||||
|
|
||||||
b.ToTable("ShopWorks");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Work", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<double>("Price")
|
|
||||||
.HasColumnType("float");
|
|
||||||
|
|
||||||
b.Property<string>("WorkName")
|
|
||||||
.IsRequired()
|
|
||||||
.HasColumnType("nvarchar(max)");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.ToTable("Works");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.WorkComponent", b =>
|
|
||||||
{
|
|
||||||
b.Property<int>("Id")
|
|
||||||
.ValueGeneratedOnAdd()
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"), 1L, 1);
|
|
||||||
|
|
||||||
b.Property<int>("ComponentId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("Count")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.Property<int>("WorkId")
|
|
||||||
.HasColumnType("int");
|
|
||||||
|
|
||||||
b.HasKey("Id");
|
|
||||||
|
|
||||||
b.HasIndex("ComponentId");
|
|
||||||
|
|
||||||
b.HasIndex("WorkId");
|
|
||||||
|
|
||||||
b.ToTable("WorkComponents");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Order", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Client", "Client")
|
|
||||||
.WithMany("Orders")
|
|
||||||
.HasForeignKey("ClientId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Implementer", "Implementer")
|
|
||||||
.WithMany("Orders")
|
|
||||||
.HasForeignKey("ImplementerId");
|
|
||||||
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Work", "Work")
|
|
||||||
.WithMany("Orders")
|
|
||||||
.HasForeignKey("WorkId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Client");
|
|
||||||
|
|
||||||
b.Navigation("Implementer");
|
|
||||||
|
|
||||||
b.Navigation("Work");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.ShopWork", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Shop", "Shop")
|
|
||||||
.WithMany("Works")
|
|
||||||
.HasForeignKey("ShopId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Work", "Work")
|
|
||||||
.WithMany()
|
|
||||||
.HasForeignKey("WorkId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Shop");
|
|
||||||
|
|
||||||
b.Navigation("Work");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.WorkComponent", b =>
|
|
||||||
{
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Component", "Component")
|
|
||||||
.WithMany("WorkComponents")
|
|
||||||
.HasForeignKey("ComponentId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.HasOne("PlumbingRepairDatabaseImplement.Models.Work", "Work")
|
|
||||||
.WithMany("Components")
|
|
||||||
.HasForeignKey("WorkId")
|
|
||||||
.OnDelete(DeleteBehavior.Cascade)
|
|
||||||
.IsRequired();
|
|
||||||
|
|
||||||
b.Navigation("Component");
|
|
||||||
|
|
||||||
b.Navigation("Work");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Client", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Orders");
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Component", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("WorkComponents");
|
|
||||||
});
|
|
||||||
|
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.Designer.cs
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Shop", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Works");
|
|
||||||
========
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Implementer", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Orders");
|
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.Designer.cs
|
|
||||||
});
|
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Work", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Components");
|
|
||||||
|
|
||||||
b.Navigation("Orders");
|
|
||||||
});
|
|
||||||
#pragma warning restore 612, 618
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,241 +0,0 @@
|
|||||||
using System;
|
|
||||||
using Microsoft.EntityFrameworkCore.Migrations;
|
|
||||||
|
|
||||||
#nullable disable
|
|
||||||
|
|
||||||
namespace PlumbingRepairDatabaseImplement.Migrations
|
|
||||||
{
|
|
||||||
public partial class InitCreate : Migration
|
|
||||||
{
|
|
||||||
protected override void Up(MigrationBuilder migrationBuilder)
|
|
||||||
{
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "Clients",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
ClientFIO = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Email = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Password = table.Column<string>(type: "nvarchar(max)", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Clients", x => x.Id);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "Components",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
ComponentName = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Cost = table.Column<double>(type: "float", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Components", x => x.Id);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.cs
|
|
||||||
name: "Shops",
|
|
||||||
========
|
|
||||||
name: "Implementers",
|
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.cs
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.cs
|
|
||||||
ShopName = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Address = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
DateOpening = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
maxCountWorks = table.Column<int>(type: "int", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Shops", x => x.Id);
|
|
||||||
========
|
|
||||||
ImplementerFIO = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Password = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
WorkExperience = table.Column<int>(type: "int", nullable: false),
|
|
||||||
Qualification = table.Column<int>(type: "int", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Implementers", x => x.Id);
|
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.cs
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "Works",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
WorkName = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Price = table.Column<double>(type: "float", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Works", x => x.Id);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "Orders",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
WorkId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
ClientId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
ImplementerId = table.Column<int>(type: "int", nullable: true),
|
|
||||||
Count = table.Column<int>(type: "int", nullable: false),
|
|
||||||
Sum = table.Column<double>(type: "float", nullable: false),
|
|
||||||
Status = table.Column<int>(type: "int", nullable: false),
|
|
||||||
DateCreate = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
DateImplement = table.Column<DateTime>(type: "datetime2", nullable: true)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Orders", x => x.Id);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_Orders_Clients_ClientId",
|
|
||||||
column: x => x.ClientId,
|
|
||||||
principalTable: "Clients",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_Orders_Implementers_ImplementerId",
|
|
||||||
column: x => x.ImplementerId,
|
|
||||||
principalTable: "Implementers",
|
|
||||||
principalColumn: "Id");
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_Orders_Works_WorkId",
|
|
||||||
column: x => x.WorkId,
|
|
||||||
principalTable: "Works",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "ShopWorks",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
WorkId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
ShopId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
Count = table.Column<int>(type: "int", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_ShopWorks", x => x.Id);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_ShopWorks_Shops_ShopId",
|
|
||||||
column: x => x.ShopId,
|
|
||||||
principalTable: "Shops",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_ShopWorks_Works_WorkId",
|
|
||||||
column: x => x.WorkId,
|
|
||||||
principalTable: "Works",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
|
||||||
name: "WorkComponents",
|
|
||||||
columns: table => new
|
|
||||||
{
|
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
|
||||||
WorkId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
ComponentId = table.Column<int>(type: "int", nullable: false),
|
|
||||||
Count = table.Column<int>(type: "int", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_WorkComponents", x => x.Id);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_WorkComponents_Components_ComponentId",
|
|
||||||
column: x => x.ComponentId,
|
|
||||||
principalTable: "Components",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
table.ForeignKey(
|
|
||||||
name: "FK_WorkComponents_Works_WorkId",
|
|
||||||
column: x => x.WorkId,
|
|
||||||
principalTable: "Works",
|
|
||||||
principalColumn: "Id",
|
|
||||||
onDelete: ReferentialAction.Cascade);
|
|
||||||
});
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_Orders_ClientId",
|
|
||||||
table: "Orders",
|
|
||||||
column: "ClientId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_Orders_ImplementerId",
|
|
||||||
table: "Orders",
|
|
||||||
column: "ImplementerId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_Orders_WorkId",
|
|
||||||
table: "Orders",
|
|
||||||
column: "WorkId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_ShopWorks_ShopId",
|
|
||||||
table: "ShopWorks",
|
|
||||||
column: "ShopId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_ShopWorks_WorkId",
|
|
||||||
table: "ShopWorks",
|
|
||||||
column: "WorkId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_WorkComponents_ComponentId",
|
|
||||||
table: "WorkComponents",
|
|
||||||
column: "ComponentId");
|
|
||||||
|
|
||||||
migrationBuilder.CreateIndex(
|
|
||||||
name: "IX_WorkComponents_WorkId",
|
|
||||||
table: "WorkComponents",
|
|
||||||
column: "WorkId");
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void Down(MigrationBuilder migrationBuilder)
|
|
||||||
{
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
name: "Orders");
|
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
name: "ShopWorks");
|
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
name: "WorkComponents");
|
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
name: "Clients");
|
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.cs
|
|
||||||
name: "Shops");
|
|
||||||
========
|
|
||||||
name: "Implementers");
|
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.cs
|
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
name: "Components");
|
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
|
||||||
name: "Works");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -12,12 +12,8 @@ using PlumbingRepairDatabaseImplement;
|
|||||||
namespace PlumbingRepairDatabaseImplement.Migrations
|
namespace PlumbingRepairDatabaseImplement.Migrations
|
||||||
{
|
{
|
||||||
[DbContext(typeof(PlumbingRepairDatabase))]
|
[DbContext(typeof(PlumbingRepairDatabase))]
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.Designer.cs
|
[Migration("20240503121400_initCreate")]
|
||||||
[Migration("20240501122640_InitCreate")]
|
partial class initCreate
|
||||||
========
|
|
||||||
[Migration("20240418172421_InitCreate")]
|
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.Designer.cs
|
|
||||||
partial class InitCreate
|
|
||||||
{
|
{
|
||||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||||
{
|
{
|
||||||
@ -315,15 +311,14 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
b.Navigation("WorkComponents");
|
b.Navigation("WorkComponents");
|
||||||
});
|
});
|
||||||
|
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.Designer.cs
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Shop", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Works");
|
|
||||||
========
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Implementer", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Implementer", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Orders");
|
b.Navigation("Orders");
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.Designer.cs
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Shop", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("Works");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Work", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Work", b =>
|
@ -5,7 +5,7 @@ using Microsoft.EntityFrameworkCore.Migrations;
|
|||||||
|
|
||||||
namespace PlumbingRepairDatabaseImplement.Migrations
|
namespace PlumbingRepairDatabaseImplement.Migrations
|
||||||
{
|
{
|
||||||
public partial class InitCreate : Migration
|
public partial class initCreate : Migration
|
||||||
{
|
{
|
||||||
protected override void Up(MigrationBuilder migrationBuilder)
|
protected override void Up(MigrationBuilder migrationBuilder)
|
||||||
{
|
{
|
||||||
@ -39,25 +39,11 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.cs
|
|
||||||
name: "Shops",
|
|
||||||
========
|
|
||||||
name: "Implementers",
|
name: "Implementers",
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.cs
|
|
||||||
columns: table => new
|
columns: table => new
|
||||||
{
|
{
|
||||||
Id = table.Column<int>(type: "int", nullable: false)
|
Id = table.Column<int>(type: "int", nullable: false)
|
||||||
.Annotation("SqlServer:Identity", "1, 1"),
|
.Annotation("SqlServer:Identity", "1, 1"),
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.cs
|
|
||||||
ShopName = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
Address = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
|
||||||
DateOpening = table.Column<DateTime>(type: "datetime2", nullable: false),
|
|
||||||
maxCountWorks = table.Column<int>(type: "int", nullable: false)
|
|
||||||
},
|
|
||||||
constraints: table =>
|
|
||||||
{
|
|
||||||
table.PrimaryKey("PK_Shops", x => x.Id);
|
|
||||||
========
|
|
||||||
ImplementerFIO = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
ImplementerFIO = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||||
Password = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
Password = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||||
WorkExperience = table.Column<int>(type: "int", nullable: false),
|
WorkExperience = table.Column<int>(type: "int", nullable: false),
|
||||||
@ -66,7 +52,22 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
constraints: table =>
|
constraints: table =>
|
||||||
{
|
{
|
||||||
table.PrimaryKey("PK_Implementers", x => x.Id);
|
table.PrimaryKey("PK_Implementers", x => x.Id);
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.cs
|
});
|
||||||
|
|
||||||
|
migrationBuilder.CreateTable(
|
||||||
|
name: "Shops",
|
||||||
|
columns: table => new
|
||||||
|
{
|
||||||
|
Id = table.Column<int>(type: "int", nullable: false)
|
||||||
|
.Annotation("SqlServer:Identity", "1, 1"),
|
||||||
|
ShopName = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||||
|
Address = table.Column<string>(type: "nvarchar(max)", nullable: false),
|
||||||
|
DateOpening = table.Column<DateTime>(type: "datetime2", nullable: false),
|
||||||
|
maxCountWorks = table.Column<int>(type: "int", nullable: false)
|
||||||
|
},
|
||||||
|
constraints: table =>
|
||||||
|
{
|
||||||
|
table.PrimaryKey("PK_Shops", x => x.Id);
|
||||||
});
|
});
|
||||||
|
|
||||||
migrationBuilder.CreateTable(
|
migrationBuilder.CreateTable(
|
||||||
@ -225,11 +226,10 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
name: "Clients");
|
name: "Clients");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
<<<<<<<< HEAD:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240501122640_InitCreate.cs
|
|
||||||
name: "Shops");
|
|
||||||
========
|
|
||||||
name: "Implementers");
|
name: "Implementers");
|
||||||
>>>>>>>> lab_6:PlumbingRepair/PlumbingRepairDatabaseImplement/Migrations/20240418172421_InitCreate.cs
|
|
||||||
|
migrationBuilder.DropTable(
|
||||||
|
name: "Shops");
|
||||||
|
|
||||||
migrationBuilder.DropTable(
|
migrationBuilder.DropTable(
|
||||||
name: "Components");
|
name: "Components");
|
@ -309,15 +309,14 @@ namespace PlumbingRepairDatabaseImplement.Migrations
|
|||||||
b.Navigation("WorkComponents");
|
b.Navigation("WorkComponents");
|
||||||
});
|
});
|
||||||
|
|
||||||
<<<<<<< HEAD
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Shop", b =>
|
|
||||||
{
|
|
||||||
b.Navigation("Works");
|
|
||||||
=======
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Implementer", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Implementer", b =>
|
||||||
{
|
{
|
||||||
b.Navigation("Orders");
|
b.Navigation("Orders");
|
||||||
>>>>>>> lab_6
|
});
|
||||||
|
|
||||||
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Shop", b =>
|
||||||
|
{
|
||||||
|
b.Navigation("Works");
|
||||||
});
|
});
|
||||||
|
|
||||||
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Work", b =>
|
modelBuilder.Entity("PlumbingRepairDatabaseImplement.Models.Work", b =>
|
||||||
|
@ -13,20 +13,14 @@ builder.Logging.AddLog4Net("log4net.config");
|
|||||||
builder.Services.AddTransient<IClientStorage, ClientStorage>();
|
builder.Services.AddTransient<IClientStorage, ClientStorage>();
|
||||||
builder.Services.AddTransient<IOrderStorage, OrderStorage>();
|
builder.Services.AddTransient<IOrderStorage, OrderStorage>();
|
||||||
builder.Services.AddTransient<IWorkStorage, WorkStorage>();
|
builder.Services.AddTransient<IWorkStorage, WorkStorage>();
|
||||||
<<<<<<< HEAD
|
|
||||||
builder.Services.AddTransient<IShopStorage, ShopStorage>();
|
builder.Services.AddTransient<IShopStorage, ShopStorage>();
|
||||||
=======
|
|
||||||
builder.Services.AddTransient<IImplementerStorage, ImplementerStorage>();
|
builder.Services.AddTransient<IImplementerStorage, ImplementerStorage>();
|
||||||
>>>>>>> lab_6
|
|
||||||
|
|
||||||
builder.Services.AddTransient<IOrderLogic, OrderLogic>();
|
builder.Services.AddTransient<IOrderLogic, OrderLogic>();
|
||||||
builder.Services.AddTransient<IClientLogic, ClientLogic>();
|
builder.Services.AddTransient<IClientLogic, ClientLogic>();
|
||||||
builder.Services.AddTransient<IWorkLogic, WorkLogic>();
|
builder.Services.AddTransient<IWorkLogic, WorkLogic>();
|
||||||
<<<<<<< HEAD
|
|
||||||
builder.Services.AddTransient<IShopLogic, ShopLogic>();
|
builder.Services.AddTransient<IShopLogic, ShopLogic>();
|
||||||
=======
|
|
||||||
builder.Services.AddTransient<IImplementerLogic, ImplementerLogic>();
|
builder.Services.AddTransient<IImplementerLogic, ImplementerLogic>();
|
||||||
>>>>>>> lab_6
|
|
||||||
|
|
||||||
builder.Services.AddControllers();
|
builder.Services.AddControllers();
|
||||||
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
||||||
|
472
PlumbingRepair/PlumbingRepairView/FormMain.Designer.cs
generated
472
PlumbingRepair/PlumbingRepairView/FormMain.Designer.cs
generated
@ -28,274 +28,242 @@
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private void InitializeComponent()
|
private void InitializeComponent()
|
||||||
{
|
{
|
||||||
this.buttonRef = new System.Windows.Forms.Button();
|
this.buttonRef = new System.Windows.Forms.Button();
|
||||||
this.buttonIssuedOrder = new System.Windows.Forms.Button();
|
this.buttonIssuedOrder = new System.Windows.Forms.Button();
|
||||||
this.buttonCreateOrder = new System.Windows.Forms.Button();
|
this.buttonCreateOrder = new System.Windows.Forms.Button();
|
||||||
this.dataGridView = new System.Windows.Forms.DataGridView();
|
this.dataGridView = new System.Windows.Forms.DataGridView();
|
||||||
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
|
||||||
this.справочникиToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.справочникиToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.компонентыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.компонентыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.РаботыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.РаботыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
<<<<<<< HEAD
|
this.магазиныToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.магазиныToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.пToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.пToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.продажаРаботToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.продажаРаботToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.клиентыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
=======
|
this.отчетыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.клиентыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.списокКомпонентовToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.исполнителиToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.компонентыПоРаботамToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
>>>>>>> lab_6
|
this.списокЗаказовToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.отчетыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.списокМагазиновToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.списокКомпонентовToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.работыПоМагазинамToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.компонентыПоРаботамToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.списокВсехЗаказовToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.списокЗаказовToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.выполнениеРаботToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
<<<<<<< HEAD
|
this.исполнителиToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||||
this.списокМагазиновToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit();
|
||||||
this.работыПоМагазинамToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.menuStrip1.SuspendLayout();
|
||||||
this.списокВсехЗаказовToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
this.SuspendLayout();
|
||||||
this.клиентыToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
//
|
||||||
=======
|
// buttonRef
|
||||||
this.выполнениеРаботToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
//
|
||||||
>>>>>>> lab_6
|
this.buttonRef.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit();
|
this.buttonRef.Location = new System.Drawing.Point(1113, 227);
|
||||||
this.menuStrip1.SuspendLayout();
|
this.buttonRef.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
||||||
this.SuspendLayout();
|
this.buttonRef.Name = "buttonRef";
|
||||||
//
|
this.buttonRef.Size = new System.Drawing.Size(249, 45);
|
||||||
// buttonRef
|
this.buttonRef.TabIndex = 11;
|
||||||
//
|
this.buttonRef.Text = "Обновить список";
|
||||||
this.buttonRef.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
this.buttonRef.UseVisualStyleBackColor = true;
|
||||||
this.buttonRef.Location = new System.Drawing.Point(1284, 219);
|
this.buttonRef.Click += new System.EventHandler(this.ButtonRef_Click);
|
||||||
this.buttonRef.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
//
|
||||||
this.buttonRef.Name = "buttonRef";
|
// buttonIssuedOrder
|
||||||
this.buttonRef.Size = new System.Drawing.Size(249, 45);
|
//
|
||||||
this.buttonRef.TabIndex = 11;
|
this.buttonIssuedOrder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.buttonRef.Text = "Обновить список";
|
this.buttonIssuedOrder.Location = new System.Drawing.Point(1113, 151);
|
||||||
this.buttonRef.UseVisualStyleBackColor = true;
|
this.buttonIssuedOrder.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
||||||
this.buttonRef.Click += new System.EventHandler(this.ButtonRef_Click);
|
this.buttonIssuedOrder.Name = "buttonIssuedOrder";
|
||||||
//
|
this.buttonIssuedOrder.Size = new System.Drawing.Size(249, 45);
|
||||||
// buttonIssuedOrder
|
this.buttonIssuedOrder.TabIndex = 10;
|
||||||
//
|
this.buttonIssuedOrder.Text = "Заказ выдан";
|
||||||
this.buttonIssuedOrder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
this.buttonIssuedOrder.UseVisualStyleBackColor = true;
|
||||||
this.buttonIssuedOrder.Location = new System.Drawing.Point(1284, 143);
|
this.buttonIssuedOrder.Click += new System.EventHandler(this.ButtonIssuedOrder_Click);
|
||||||
this.buttonIssuedOrder.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
//
|
||||||
this.buttonIssuedOrder.Name = "buttonIssuedOrder";
|
// buttonCreateOrder
|
||||||
this.buttonIssuedOrder.Size = new System.Drawing.Size(249, 45);
|
//
|
||||||
this.buttonIssuedOrder.TabIndex = 10;
|
this.buttonCreateOrder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.buttonIssuedOrder.Text = "Заказ выдан";
|
this.buttonCreateOrder.Location = new System.Drawing.Point(1113, 83);
|
||||||
this.buttonIssuedOrder.UseVisualStyleBackColor = true;
|
this.buttonCreateOrder.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
||||||
this.buttonIssuedOrder.Click += new System.EventHandler(this.ButtonIssuedOrder_Click);
|
this.buttonCreateOrder.Name = "buttonCreateOrder";
|
||||||
//
|
this.buttonCreateOrder.Size = new System.Drawing.Size(249, 45);
|
||||||
// buttonCreateOrder
|
this.buttonCreateOrder.TabIndex = 7;
|
||||||
//
|
this.buttonCreateOrder.Text = "Создать заказ";
|
||||||
this.buttonCreateOrder.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
this.buttonCreateOrder.UseVisualStyleBackColor = true;
|
||||||
this.buttonCreateOrder.Location = new System.Drawing.Point(1284, 83);
|
this.buttonCreateOrder.Click += new System.EventHandler(this.ButtonCreateOrder_Click);
|
||||||
this.buttonCreateOrder.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
//
|
||||||
this.buttonCreateOrder.Name = "buttonCreateOrder";
|
// dataGridView
|
||||||
this.buttonCreateOrder.Size = new System.Drawing.Size(249, 45);
|
//
|
||||||
this.buttonCreateOrder.TabIndex = 7;
|
this.dataGridView.AllowUserToAddRows = false;
|
||||||
this.buttonCreateOrder.Text = "Создать заказ";
|
this.dataGridView.AllowUserToDeleteRows = false;
|
||||||
this.buttonCreateOrder.UseVisualStyleBackColor = true;
|
this.dataGridView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||||
this.buttonCreateOrder.Click += new System.EventHandler(this.ButtonCreateOrder_Click);
|
|
||||||
//
|
|
||||||
// dataGridView
|
|
||||||
//
|
|
||||||
this.dataGridView.AllowUserToAddRows = false;
|
|
||||||
this.dataGridView.AllowUserToDeleteRows = false;
|
|
||||||
this.dataGridView.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
|
||||||
| System.Windows.Forms.AnchorStyles.Left)
|
| System.Windows.Forms.AnchorStyles.Left)
|
||||||
| System.Windows.Forms.AnchorStyles.Right)));
|
| System.Windows.Forms.AnchorStyles.Right)));
|
||||||
this.dataGridView.BackgroundColor = System.Drawing.SystemColors.ControlLightLight;
|
this.dataGridView.BackgroundColor = System.Drawing.SystemColors.ControlLightLight;
|
||||||
this.dataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
this.dataGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||||
this.dataGridView.Location = new System.Drawing.Point(2, 44);
|
this.dataGridView.Location = new System.Drawing.Point(2, 44);
|
||||||
this.dataGridView.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
this.dataGridView.Margin = new System.Windows.Forms.Padding(6, 5, 6, 5);
|
||||||
this.dataGridView.MultiSelect = false;
|
this.dataGridView.MultiSelect = false;
|
||||||
this.dataGridView.Name = "dataGridView";
|
this.dataGridView.Name = "dataGridView";
|
||||||
this.dataGridView.ReadOnly = true;
|
this.dataGridView.ReadOnly = true;
|
||||||
this.dataGridView.RowHeadersVisible = false;
|
this.dataGridView.RowHeadersVisible = false;
|
||||||
this.dataGridView.RowHeadersWidth = 62;
|
this.dataGridView.RowHeadersWidth = 62;
|
||||||
this.dataGridView.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
this.dataGridView.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
|
||||||
this.dataGridView.Size = new System.Drawing.Size(1226, 533);
|
this.dataGridView.Size = new System.Drawing.Size(1055, 533);
|
||||||
this.dataGridView.TabIndex = 6;
|
this.dataGridView.TabIndex = 6;
|
||||||
//
|
//
|
||||||
// menuStrip1
|
// menuStrip1
|
||||||
//
|
//
|
||||||
this.menuStrip1.ImageScalingSize = new System.Drawing.Size(24, 24);
|
this.menuStrip1.ImageScalingSize = new System.Drawing.Size(24, 24);
|
||||||
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
this.справочникиToolStripMenuItem,
|
this.справочникиToolStripMenuItem,
|
||||||
this.отчетыToolStripMenuItem,
|
this.отчетыToolStripMenuItem,
|
||||||
this.выполнениеРаботToolStripMenuItem});
|
this.выполнениеРаботToolStripMenuItem});
|
||||||
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
this.menuStrip1.Location = new System.Drawing.Point(0, 0);
|
||||||
this.menuStrip1.Name = "menuStrip1";
|
this.menuStrip1.Name = "menuStrip1";
|
||||||
this.menuStrip1.Size = new System.Drawing.Size(1548, 33);
|
this.menuStrip1.Size = new System.Drawing.Size(1377, 33);
|
||||||
this.menuStrip1.TabIndex = 12;
|
this.menuStrip1.TabIndex = 12;
|
||||||
this.menuStrip1.Text = "menuStrip1";
|
this.menuStrip1.Text = "menuStrip1";
|
||||||
//
|
//
|
||||||
// справочникиToolStripMenuItem
|
// справочникиToolStripMenuItem
|
||||||
//
|
//
|
||||||
this.справочникиToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
this.справочникиToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
this.компонентыToolStripMenuItem,
|
this.компонентыToolStripMenuItem,
|
||||||
this.РаботыToolStripMenuItem,
|
this.РаботыToolStripMenuItem,
|
||||||
<<<<<<< HEAD
|
|
||||||
this.магазиныToolStripMenuItem,
|
this.магазиныToolStripMenuItem,
|
||||||
this.пToolStripMenuItem,
|
this.пToolStripMenuItem,
|
||||||
this.продажаРаботToolStripMenuItem,
|
this.продажаРаботToolStripMenuItem,
|
||||||
this.клиентыToolStripMenuItem});
|
|
||||||
=======
|
|
||||||
this.клиентыToolStripMenuItem,
|
this.клиентыToolStripMenuItem,
|
||||||
this.исполнителиToolStripMenuItem});
|
this.исполнителиToolStripMenuItem});
|
||||||
>>>>>>> lab_6
|
this.справочникиToolStripMenuItem.Name = "справочникиToolStripMenuItem";
|
||||||
this.справочникиToolStripMenuItem.Name = "справочникиToolStripMenuItem";
|
this.справочникиToolStripMenuItem.Size = new System.Drawing.Size(139, 29);
|
||||||
this.справочникиToolStripMenuItem.Size = new System.Drawing.Size(139, 29);
|
this.справочникиToolStripMenuItem.Text = "Справочники";
|
||||||
this.справочникиToolStripMenuItem.Text = "Справочники";
|
//
|
||||||
//
|
// компонентыToolStripMenuItem
|
||||||
// компонентыToolStripMenuItem
|
//
|
||||||
//
|
this.компонентыToolStripMenuItem.Name = "компонентыToolStripMenuItem";
|
||||||
this.компонентыToolStripMenuItem.Name = "компонентыToolStripMenuItem";
|
this.компонентыToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
||||||
<<<<<<< HEAD
|
this.компонентыToolStripMenuItem.Text = "Компоненты";
|
||||||
this.компонентыToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
this.компонентыToolStripMenuItem.Click += new System.EventHandler(this.КомпонентыToolStripMenuItem_Click);
|
||||||
=======
|
//
|
||||||
this.компонентыToolStripMenuItem.Size = new System.Drawing.Size(220, 34);
|
// РаботыToolStripMenuItem
|
||||||
>>>>>>> lab_6
|
//
|
||||||
this.компонентыToolStripMenuItem.Text = "Компоненты";
|
this.РаботыToolStripMenuItem.Name = "РаботыToolStripMenuItem";
|
||||||
this.компонентыToolStripMenuItem.Click += new System.EventHandler(this.КомпонентыToolStripMenuItem_Click);
|
this.РаботыToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
||||||
//
|
this.РаботыToolStripMenuItem.Text = "Работы";
|
||||||
// РаботыToolStripMenuItem
|
this.РаботыToolStripMenuItem.Click += new System.EventHandler(this.РаботыToolStripMenuItem_Click);
|
||||||
//
|
//
|
||||||
this.РаботыToolStripMenuItem.Name = "РаботыToolStripMenuItem";
|
// магазиныToolStripMenuItem
|
||||||
<<<<<<< HEAD
|
//
|
||||||
this.РаботыToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
this.магазиныToolStripMenuItem.Name = "магазиныToolStripMenuItem";
|
||||||
this.РаботыToolStripMenuItem.Text = "Работы";
|
this.магазиныToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
||||||
this.РаботыToolStripMenuItem.Click += new System.EventHandler(this.РаботыToolStripMenuItem_Click);
|
this.магазиныToolStripMenuItem.Text = "Магазины";
|
||||||
//
|
this.магазиныToolStripMenuItem.Click += new System.EventHandler(this.магазиныToolStripMenuItem_Click);
|
||||||
// магазиныToolStripMenuItem
|
//
|
||||||
//
|
// пToolStripMenuItem
|
||||||
this.магазиныToolStripMenuItem.Name = "магазиныToolStripMenuItem";
|
//
|
||||||
this.магазиныToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
this.пToolStripMenuItem.Name = "пToolStripMenuItem";
|
||||||
this.магазиныToolStripMenuItem.Text = "Магазины";
|
this.пToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
||||||
this.магазиныToolStripMenuItem.Click += new System.EventHandler(this.магазиныToolStripMenuItem_Click);
|
this.пToolStripMenuItem.Text = "Пополнение магазина";
|
||||||
//
|
this.пToolStripMenuItem.Click += new System.EventHandler(this.пополнениеToolStripMenuItem_Click);
|
||||||
// пToolStripMenuItem
|
//
|
||||||
//
|
// продажаРаботToolStripMenuItem
|
||||||
this.пToolStripMenuItem.Name = "пToolStripMenuItem";
|
//
|
||||||
this.пToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
this.продажаРаботToolStripMenuItem.Name = "продажаРаботToolStripMenuItem";
|
||||||
this.пToolStripMenuItem.Text = "Пополнение магазина";
|
this.продажаРаботToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
||||||
this.пToolStripMenuItem.Click += new System.EventHandler(this.пополнениеToolStripMenuItem_Click);
|
this.продажаРаботToolStripMenuItem.Text = "Продажа работ";
|
||||||
//
|
this.продажаРаботToolStripMenuItem.Click += new System.EventHandler(this.продажаРаботToolStripMenuItem_Click);
|
||||||
// продажаРаботToolStripMenuItem
|
//
|
||||||
//
|
// клиентыToolStripMenuItem
|
||||||
this.продажаРаботToolStripMenuItem.Name = "продажаРаботToolStripMenuItem";
|
//
|
||||||
this.продажаРаботToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
this.клиентыToolStripMenuItem.Name = "клиентыToolStripMenuItem";
|
||||||
this.продажаРаботToolStripMenuItem.Text = "Продажа работ";
|
this.клиентыToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
||||||
this.продажаРаботToolStripMenuItem.Click += new System.EventHandler(this.продажаРаботToolStripMenuItem_Click);
|
this.клиентыToolStripMenuItem.Text = "Клиенты";
|
||||||
=======
|
this.клиентыToolStripMenuItem.Click += new System.EventHandler(this.клиентыToolStripMenuItem_Click);
|
||||||
this.РаботыToolStripMenuItem.Size = new System.Drawing.Size(220, 34);
|
//
|
||||||
this.РаботыToolStripMenuItem.Text = "Работы";
|
// отчетыToolStripMenuItem
|
||||||
this.РаботыToolStripMenuItem.Click += new System.EventHandler(this.РаботыToolStripMenuItem_Click);
|
//
|
||||||
//
|
this.отчетыToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||||
// клиентыToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.клиентыToolStripMenuItem.Name = "клиентыToolStripMenuItem";
|
|
||||||
this.клиентыToolStripMenuItem.Size = new System.Drawing.Size(220, 34);
|
|
||||||
this.клиентыToolStripMenuItem.Text = "Клиенты";
|
|
||||||
this.клиентыToolStripMenuItem.Click += new System.EventHandler(this.клиентыToolStripMenuItem_Click);
|
|
||||||
//
|
|
||||||
// исполнителиToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.исполнителиToolStripMenuItem.Name = "исполнителиToolStripMenuItem";
|
|
||||||
this.исполнителиToolStripMenuItem.Size = new System.Drawing.Size(220, 34);
|
|
||||||
this.исполнителиToolStripMenuItem.Text = "Исполнители";
|
|
||||||
this.исполнителиToolStripMenuItem.Click += new System.EventHandler(this.исполнителиToolStripMenuItem_Click);
|
|
||||||
>>>>>>> lab_6
|
|
||||||
//
|
|
||||||
// отчетыToolStripMenuItem
|
|
||||||
//
|
|
||||||
this.отчетыToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
|
||||||
this.списокКомпонентовToolStripMenuItem,
|
this.списокКомпонентовToolStripMenuItem,
|
||||||
this.компонентыПоРаботамToolStripMenuItem,
|
this.компонентыПоРаботамToolStripMenuItem,
|
||||||
this.списокЗаказовToolStripMenuItem,
|
this.списокЗаказовToolStripMenuItem,
|
||||||
this.списокМагазиновToolStripMenuItem,
|
this.списокМагазиновToolStripMenuItem,
|
||||||
this.работыПоМагазинамToolStripMenuItem,
|
this.работыПоМагазинамToolStripMenuItem,
|
||||||
this.списокВсехЗаказовToolStripMenuItem});
|
this.списокВсехЗаказовToolStripMenuItem});
|
||||||
this.отчетыToolStripMenuItem.Name = "отчетыToolStripMenuItem";
|
this.отчетыToolStripMenuItem.Name = "отчетыToolStripMenuItem";
|
||||||
this.отчетыToolStripMenuItem.Size = new System.Drawing.Size(88, 29);
|
this.отчетыToolStripMenuItem.Size = new System.Drawing.Size(88, 29);
|
||||||
this.отчетыToolStripMenuItem.Text = "Отчеты";
|
this.отчетыToolStripMenuItem.Text = "Отчеты";
|
||||||
//
|
//
|
||||||
// списокКомпонентовToolStripMenuItem
|
// списокКомпонентовToolStripMenuItem
|
||||||
//
|
//
|
||||||
this.списокКомпонентовToolStripMenuItem.Name = "списокКомпонентовToolStripMenuItem";
|
this.списокКомпонентовToolStripMenuItem.Name = "списокКомпонентовToolStripMenuItem";
|
||||||
this.списокКомпонентовToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
this.списокКомпонентовToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
||||||
this.списокКомпонентовToolStripMenuItem.Text = "Список компонентов";
|
this.списокКомпонентовToolStripMenuItem.Text = "Список компонентов";
|
||||||
this.списокКомпонентовToolStripMenuItem.Click += new System.EventHandler(this.списокКомпонентовToolStripMenuItem_Click);
|
this.списокКомпонентовToolStripMenuItem.Click += new System.EventHandler(this.списокКомпонентовToolStripMenuItem_Click);
|
||||||
//
|
//
|
||||||
// компонентыПоРаботамToolStripMenuItem
|
// компонентыПоРаботамToolStripMenuItem
|
||||||
//
|
//
|
||||||
this.компонентыПоРаботамToolStripMenuItem.Name = "компонентыПоРаботамToolStripMenuItem";
|
this.компонентыПоРаботамToolStripMenuItem.Name = "компонентыПоРаботамToolStripMenuItem";
|
||||||
this.компонентыПоРаботамToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
this.компонентыПоРаботамToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
||||||
this.компонентыПоРаботамToolStripMenuItem.Text = "Компоненты по работам";
|
this.компонентыПоРаботамToolStripMenuItem.Text = "Компоненты по работам";
|
||||||
<<<<<<< HEAD
|
//
|
||||||
=======
|
// списокЗаказовToolStripMenuItem
|
||||||
this.компонентыПоРаботамToolStripMenuItem.Click += new System.EventHandler(this.ComponentWorksToolStripMenuItem_Click);
|
//
|
||||||
>>>>>>> lab_6
|
this.списокЗаказовToolStripMenuItem.Name = "списокЗаказовToolStripMenuItem";
|
||||||
//
|
this.списокЗаказовToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
||||||
// списокЗаказовToolStripMenuItem
|
this.списокЗаказовToolStripMenuItem.Text = "Список заказов";
|
||||||
//
|
//
|
||||||
this.списокЗаказовToolStripMenuItem.Name = "списокЗаказовToolStripMenuItem";
|
// списокМагазиновToolStripMenuItem
|
||||||
this.списокЗаказовToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
//
|
||||||
this.списокЗаказовToolStripMenuItem.Text = "Список заказов";
|
this.списокМагазиновToolStripMenuItem.Name = "списокМагазиновToolStripMenuItem";
|
||||||
//
|
this.списокМагазиновToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
||||||
// списокМагазиновToolStripMenuItem
|
this.списокМагазиновToolStripMenuItem.Text = "Список магазинов";
|
||||||
//
|
this.списокМагазиновToolStripMenuItem.Click += new System.EventHandler(this.ShopsToolStripMenuItem_Click);
|
||||||
this.списокМагазиновToolStripMenuItem.Name = "списокМагазиновToolStripMenuItem";
|
//
|
||||||
this.списокМагазиновToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
// работыПоМагазинамToolStripMenuItem
|
||||||
this.списокМагазиновToolStripMenuItem.Text = "Список магазинов";
|
//
|
||||||
this.списокМагазиновToolStripMenuItem.Click += new System.EventHandler(this.ShopsToolStripMenuItem_Click);
|
this.работыПоМагазинамToolStripMenuItem.Name = "работыПоМагазинамToolStripMenuItem";
|
||||||
//
|
this.работыПоМагазинамToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
||||||
// работыПоМагазинамToolStripMenuItem
|
this.работыПоМагазинамToolStripMenuItem.Text = "Работы по магазинам";
|
||||||
//
|
this.работыПоМагазинамToolStripMenuItem.Click += new System.EventHandler(this.ShopWorksToolStripMenuItem_Click);
|
||||||
this.работыПоМагазинамToolStripMenuItem.Name = "работыПоМагазинамToolStripMenuItem";
|
//
|
||||||
this.работыПоМагазинамToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
// списокВсехЗаказовToolStripMenuItem
|
||||||
this.работыПоМагазинамToolStripMenuItem.Text = "Работы по магазинам";
|
//
|
||||||
this.работыПоМагазинамToolStripMenuItem.Click += new System.EventHandler(this.ShopWorksToolStripMenuItem_Click);
|
this.списокВсехЗаказовToolStripMenuItem.Name = "списокВсехЗаказовToolStripMenuItem";
|
||||||
//
|
this.списокВсехЗаказовToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
||||||
// списокВсехЗаказовToolStripMenuItem
|
this.списокВсехЗаказовToolStripMenuItem.Text = "Список всех заказов";
|
||||||
//
|
this.списокВсехЗаказовToolStripMenuItem.Click += new System.EventHandler(this.OrdersByDateToolStripMenuItem_Click);
|
||||||
this.списокВсехЗаказовToolStripMenuItem.Name = "списокВсехЗаказовToolStripMenuItem";
|
//
|
||||||
this.списокВсехЗаказовToolStripMenuItem.Size = new System.Drawing.Size(319, 34);
|
// выполнениеРаботToolStripMenuItem
|
||||||
this.списокВсехЗаказовToolStripMenuItem.Text = "Список всех заказов";
|
//
|
||||||
this.списокВсехЗаказовToolStripMenuItem.Click += new System.EventHandler(this.OrdersByDateToolStripMenuItem_Click);
|
this.выполнениеРаботToolStripMenuItem.Name = "выполнениеРаботToolStripMenuItem";
|
||||||
//
|
this.выполнениеРаботToolStripMenuItem.Size = new System.Drawing.Size(136, 29);
|
||||||
// выполнениеРаботToolStripMenuItem
|
this.выполнениеРаботToolStripMenuItem.Text = "Запуск работ";
|
||||||
//
|
this.выполнениеРаботToolStripMenuItem.Click += new System.EventHandler(this.выполнениеРаботToolStripMenuItem_Click);
|
||||||
<<<<<<< HEAD
|
//
|
||||||
this.клиентыToolStripMenuItem.Name = "клиентыToolStripMenuItem";
|
// исполнителиToolStripMenuItem
|
||||||
this.клиентыToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
//
|
||||||
this.клиентыToolStripMenuItem.Text = "Клиенты";
|
this.исполнителиToolStripMenuItem.Name = "исполнителиToolStripMenuItem";
|
||||||
this.клиентыToolStripMenuItem.Click += new System.EventHandler(this.клиентыToolStripMenuItem_Click);
|
this.исполнителиToolStripMenuItem.Size = new System.Drawing.Size(296, 34);
|
||||||
=======
|
this.исполнителиToolStripMenuItem.Text = "Исполнители";
|
||||||
this.выполнениеРаботToolStripMenuItem.Name = "выполнениеРаботToolStripMenuItem";
|
this.исполнителиToolStripMenuItem.Click += new System.EventHandler(this.исполнителиToolStripMenuItem_Click);
|
||||||
this.выполнениеРаботToolStripMenuItem.Size = new System.Drawing.Size(136, 29);
|
//
|
||||||
this.выполнениеРаботToolStripMenuItem.Text = "Запуск работ";
|
// FormMain
|
||||||
this.выполнениеРаботToolStripMenuItem.Click += new System.EventHandler(this.ЗапускРаботToolStripMenuItem_Click);
|
//
|
||||||
>>>>>>> lab_6
|
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 25F);
|
||||||
//
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
// FormMain
|
this.ClientSize = new System.Drawing.Size(1377, 602);
|
||||||
//
|
this.Controls.Add(this.buttonRef);
|
||||||
this.AutoScaleDimensions = new System.Drawing.SizeF(10F, 25F);
|
this.Controls.Add(this.buttonIssuedOrder);
|
||||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
this.Controls.Add(this.buttonCreateOrder);
|
||||||
this.ClientSize = new System.Drawing.Size(1548, 602);
|
this.Controls.Add(this.dataGridView);
|
||||||
this.Controls.Add(this.buttonRef);
|
this.Controls.Add(this.menuStrip1);
|
||||||
this.Controls.Add(this.buttonIssuedOrder);
|
this.MainMenuStrip = this.menuStrip1;
|
||||||
this.Controls.Add(this.buttonCreateOrder);
|
this.Name = "FormMain";
|
||||||
this.Controls.Add(this.dataGridView);
|
this.Text = "Ремонт труб";
|
||||||
this.Controls.Add(this.menuStrip1);
|
this.Load += new System.EventHandler(this.FormMain_Load);
|
||||||
this.MainMenuStrip = this.menuStrip1;
|
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).EndInit();
|
||||||
this.Name = "FormMain";
|
this.menuStrip1.ResumeLayout(false);
|
||||||
this.Text = "Ремонт труб";
|
this.menuStrip1.PerformLayout();
|
||||||
this.Load += new System.EventHandler(this.FormMain_Load);
|
this.ResumeLayout(false);
|
||||||
((System.ComponentModel.ISupportInitialize)(this.dataGridView)).EndInit();
|
this.PerformLayout();
|
||||||
this.menuStrip1.ResumeLayout(false);
|
|
||||||
this.menuStrip1.PerformLayout();
|
|
||||||
this.ResumeLayout(false);
|
|
||||||
this.PerformLayout();
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -321,6 +289,6 @@
|
|||||||
private ToolStripMenuItem списокВсехЗаказовToolStripMenuItem;
|
private ToolStripMenuItem списокВсехЗаказовToolStripMenuItem;
|
||||||
private ToolStripMenuItem клиентыToolStripMenuItem;
|
private ToolStripMenuItem клиентыToolStripMenuItem;
|
||||||
private ToolStripMenuItem выполнениеРаботToolStripMenuItem;
|
private ToolStripMenuItem выполнениеРаботToolStripMenuItem;
|
||||||
private ToolStripMenuItem исполнителиToolStripMenuItem;
|
private ToolStripMenuItem исполнителиToolStripMenuItem;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -11,11 +11,7 @@ namespace PlumbingRepairView
|
|||||||
|
|
||||||
private readonly IOrderLogic _orderLogic;
|
private readonly IOrderLogic _orderLogic;
|
||||||
private readonly IReportLogic _reportLogic;
|
private readonly IReportLogic _reportLogic;
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
private readonly IWorkProcess _workProcess;
|
private readonly IWorkProcess _workProcess;
|
||||||
>>>>>>> lab_6
|
|
||||||
|
|
||||||
public FormMain(ILogger<FormMain> logger, IOrderLogic orderLogic, IReportLogic reportLogic, IWorkProcess workProcess)
|
public FormMain(ILogger<FormMain> logger, IOrderLogic orderLogic, IReportLogic reportLogic, IWorkProcess workProcess)
|
||||||
{
|
{
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
@ -39,11 +35,6 @@ namespace PlumbingRepairView
|
|||||||
{
|
{
|
||||||
dataGridView.DataSource = list;
|
dataGridView.DataSource = list;
|
||||||
dataGridView.Columns["Id"].Visible = false;
|
dataGridView.Columns["Id"].Visible = false;
|
||||||
<<<<<<< HEAD
|
|
||||||
=======
|
|
||||||
dataGridView.Columns["WorkId"].Visible = false;
|
|
||||||
>>>>>>> lab_6
|
|
||||||
dataGridView.Columns["ClientId"].Visible = false;
|
|
||||||
dataGridView.Columns["ImplementerId"].Visible = false;
|
dataGridView.Columns["ImplementerId"].Visible = false;
|
||||||
}
|
}
|
||||||
_logger.LogInformation("Загрузка заказов");
|
_logger.LogInformation("Загрузка заказов");
|
||||||
@ -73,7 +64,6 @@ namespace PlumbingRepairView
|
|||||||
form.ShowDialog();
|
form.ShowDialog();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
<<<<<<< HEAD
|
|
||||||
private void магазиныToolStripMenuItem_Click(object sender, EventArgs e)
|
private void магазиныToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
var service = Program.ServiceProvider?.GetService(typeof(FormShops));
|
var service = Program.ServiceProvider?.GetService(typeof(FormShops));
|
||||||
@ -101,72 +91,6 @@ namespace PlumbingRepairView
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ButtonTakeOrderInWork_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
if (dataGridView.SelectedRows.Count == 1)
|
|
||||||
{
|
|
||||||
int id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
|
||||||
_logger.LogInformation("Заказ №{id}. Меняется статус на 'В работе'", id);
|
|
||||||
try
|
|
||||||
{
|
|
||||||
var operationResult = _orderLogic.TakeOrderInWork(new OrderBindingModel { Id = id });
|
|
||||||
if (!operationResult)
|
|
||||||
{
|
|
||||||
throw new Exception("Ошибка при сохранении. Дополнительная информация в логах.");
|
|
||||||
}
|
|
||||||
LoadData();
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
_logger.LogError(ex, "Ошибка передачи заказа в работу");
|
|
||||||
MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
||||||
}
|
|
||||||
=======
|
|
||||||
private void ComponentsToolStripMenuItem_Click(object sender, EventArgs
|
|
||||||
e)
|
|
||||||
{
|
|
||||||
using var dialog = new SaveFileDialog { Filter = "docx|*.docx" };
|
|
||||||
if (dialog.ShowDialog() == DialogResult.OK)
|
|
||||||
{
|
|
||||||
_reportLogic.SaveComponentsToWordFile(new ReportBindingModel
|
|
||||||
{
|
|
||||||
FileName = dialog.FileName
|
|
||||||
});
|
|
||||||
MessageBox.Show("Выполнено", "Успех", MessageBoxButtons.OK,
|
|
||||||
MessageBoxIcon.Information);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
private void ComponentWorksToolStripMenuItem_Click(object sender,
|
|
||||||
EventArgs e)
|
|
||||||
{
|
|
||||||
var service =
|
|
||||||
Program.ServiceProvider?.GetService(typeof(FormReportWorkComponents));
|
|
||||||
if (service is FormReportWorkComponents form)
|
|
||||||
{
|
|
||||||
form.ShowDialog();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
private void OrdersToolStripMenuItem_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
var service =
|
|
||||||
Program.ServiceProvider?.GetService(typeof(FormReportOrders));
|
|
||||||
if (service is FormReportOrders form)
|
|
||||||
{
|
|
||||||
form.ShowDialog();
|
|
||||||
>>>>>>> lab_6
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void ButtonCreateOrder_Click(object sender, EventArgs e)
|
|
||||||
{
|
|
||||||
var service = Program.ServiceProvider?.GetService(typeof(FormCreateOrder));
|
|
||||||
if (service is FormCreateOrder form)
|
|
||||||
{
|
|
||||||
form.ShowDialog();
|
|
||||||
LoadData();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ButtonIssuedOrder_Click(object sender, EventArgs e)
|
private void ButtonIssuedOrder_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
@ -285,21 +209,21 @@ e)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void исполнителиToolStripMenuItem_Click(object sender, EventArgs e)
|
private void выполнениеРаботToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
{
|
|
||||||
var service = Program.ServiceProvider?.GetService(typeof(FormImplementers));
|
|
||||||
if (service is FormImplementers form)
|
|
||||||
{
|
|
||||||
form.ShowDialog();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
private void ЗапускРаботToolStripMenuItem_Click(object sender, EventArgs
|
|
||||||
e)
|
|
||||||
{
|
{
|
||||||
_workProcess.DoWork((Program.ServiceProvider?.GetService(typeof(IImplementerLogic)) as IImplementerLogic)!, _orderLogic);
|
_workProcess.DoWork((Program.ServiceProvider?.GetService(typeof(IImplementerLogic)) as IImplementerLogic)!, _orderLogic);
|
||||||
MessageBox.Show("Процесс обработки запущен", "Сообщение",
|
MessageBox.Show("Процесс обработки запущен", "Сообщение",
|
||||||
MessageBoxButtons.OK, MessageBoxIcon.Information);
|
MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
private void исполнителиToolStripMenuItem_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
var service =
|
||||||
|
Program.ServiceProvider?.GetService(typeof(FormImplementers));
|
||||||
|
if (service is FormImplementers form)
|
||||||
|
{
|
||||||
|
form.ShowDialog();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
@ -70,15 +70,12 @@ namespace PlumbingRepairView
|
|||||||
services.AddTransient<FormShop>();
|
services.AddTransient<FormShop>();
|
||||||
services.AddTransient<FormShops>();
|
services.AddTransient<FormShops>();
|
||||||
services.AddTransient<FormWorkComponent>();
|
services.AddTransient<FormWorkComponent>();
|
||||||
<<<<<<< HEAD
|
|
||||||
services.AddTransient<FormStoreReplenishment>();
|
services.AddTransient<FormStoreReplenishment>();
|
||||||
services.AddTransient<FormSellWorks>();
|
services.AddTransient<FormSellWorks>();
|
||||||
services.AddTransient<FormReportOrders>();
|
services.AddTransient<FormReportOrders>();
|
||||||
services.AddTransient<FormReportOrdersByDate>();
|
services.AddTransient<FormReportOrdersByDate>();
|
||||||
services.AddTransient<FormReportWorkComponents>();
|
services.AddTransient<FormReportWorkComponents>();
|
||||||
services.AddTransient<FormReportShopWorks>();
|
services.AddTransient<FormReportShopWorks>();
|
||||||
=======
|
|
||||||
>>>>>>> lab_6
|
|
||||||
services.AddTransient<FormClients>();
|
services.AddTransient<FormClients>();
|
||||||
services.AddTransient<FormImplementer>();
|
services.AddTransient<FormImplementer>();
|
||||||
services.AddTransient<FormImplementers>();
|
services.AddTransient<FormImplementers>();
|
||||||
|
Loading…
Reference in New Issue
Block a user