Borschevskaya A.A. Lab Work 2 Hard #4
@ -181,30 +181,7 @@ namespace FurnitureAssembly
|
||||
var service = Program.ServiceProvider?.GetService(typeof(FormReplenishmentShop));
|
||||
if (service is FormReplenishmentShop form)
|
||||
{
|
||||
if (form.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
if (form.ShopModel == null || form.FurnitureModel == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
_logger.LogInformation("Добавление в магазин {ShopName} изделия: { FurnitureName}- { Count}", form.ShopModel.ShopName, form.FurnitureModel.FurnitureName, form.Count);
|
||||
|
||||
var modelShop = new ShopBindingModel
|
||||
{
|
||||
Id = form.Id
|
||||
};
|
||||
|
||||
var modelFurn = new FurnitureBindingModel
|
||||
{
|
||||
Id = form.FurnitureId
|
||||
};
|
||||
|
||||
var operationResult = _shopLogic.AddFurniture(modelShop, modelFurn, form.Count);
|
||||
if (!operationResult)
|
||||
{
|
||||
throw new Exception("Ошибка при пополнении магазина. Дополнительная информация в логах.");
|
||||
}
|
||||
}
|
||||
form.ShowDialog();
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2,6 +2,7 @@
|
||||
using FurnitureAssemblyContracts.BusinessLogicsContarcts;
|
||||
using FurnitureAssemblyContracts.ViewModels;
|
||||
using FurnitureAssemblyDataModels.Models;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
@ -21,6 +22,9 @@ namespace FurnitureAssembly
|
||||
private readonly List<ShopViewModel>? _listShops;
|
||||
private readonly List<FurnitureViewModel>? _listFurnitures;
|
||||
|
||||
private IShopLogic _shopLogic;
|
||||
private ILogger _logger;
|
||||
|
||||
public int Id
|
||||
{
|
||||
get
|
||||
@ -32,25 +36,7 @@ namespace FurnitureAssembly
|
||||
comboBoxShop.SelectedValue = value;
|
||||
}
|
||||
}
|
||||
public IShopModel? ShopModel
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_listShops == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
foreach (var elem in _listShops)
|
||||
{
|
||||
if (elem.Id == Id)
|
||||
{
|
||||
return elem;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public int FurnitureId
|
||||
{
|
||||
get
|
||||
@ -62,24 +48,6 @@ namespace FurnitureAssembly
|
||||
comboBoxFurniture.SelectedValue = value;
|
||||
}
|
||||
}
|
||||
public IFurnitureModel? FurnitureModel
|
||||
{
|
||||
get
|
||||
{
|
||||
if (_listFurnitures == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
foreach (var elem in _listFurnitures)
|
||||
{
|
||||
if (elem.Id == Id)
|
||||
{
|
||||
return elem;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
public int Count
|
||||
{
|
||||
@ -87,9 +55,11 @@ namespace FurnitureAssembly
|
||||
set
|
||||
{ textBoxCount.Text = value.ToString(); }
|
||||
}
|
||||
public FormReplenishmentShop(IShopLogic shopLogic, IFurnitureLogic furnitureLogic)
|
||||
public FormReplenishmentShop(ILogger<FormReplenishmentShop> logger, IShopLogic shopLogic, IFurnitureLogic furnitureLogic)
|
||||
{
|
||||
InitializeComponent();
|
||||
InitializeComponent();
|
||||
_logger = logger;
|
||||
_shopLogic = shopLogic;
|
||||
_listShops = shopLogic.ReadList(null);
|
||||
_listFurnitures = furnitureLogic.ReadList(null);
|
||||
if (_listShops != null)
|
||||
@ -134,7 +104,23 @@ namespace FurnitureAssembly
|
||||
MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
try
|
||||
{
|
||||
_logger.LogInformation("Добавление в магазин с id = {ShopName} изделия: id = { FurnitureName} - { Count}", Id, FurnitureId, Count);
|
||||
var operationResult = _shopLogic.AddFurniture(new ShopBindingModel { Id = Id }, new FurnitureBindingModel { Id = FurnitureId }, Count);
|
||||
if (!operationResult)
|
||||
{
|
||||
throw new Exception("Ошибка при пополнении магазина. Дополнительная информация в логах.");
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logger.LogError(ex, "Ошибка при пополнении магазина c id = " + Id);
|
||||
MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
|
||||
MessageBox.Show("Сохранение прошло успешно", "Сообщение", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||
DialogResult = DialogResult.OK;
|
||||
Close();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user