Compare commits
3 Commits
21a3fe7c63
...
80550c60fd
Author | SHA1 | Date | |
---|---|---|---|
|
80550c60fd | ||
|
85dc0d0ddd | ||
|
14c5a5991c |
@ -108,9 +108,7 @@ namespace RenovationWorkView
|
|||||||
_logger.LogInformation("Заказ №{id}. Меняется статус на 'Готов'", id);
|
_logger.LogInformation("Заказ №{id}. Меняется статус на 'Готов'", id);
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
var operationResult = _orderLogic.FinishOrder(new
|
var operationResult = _orderLogic.FinishOrder(new OrderBindingModel { Id = id });
|
||||||
OrderBindingModel
|
|
||||||
{ Id = id });
|
|
||||||
if (!operationResult)
|
if (!operationResult)
|
||||||
{
|
{
|
||||||
throw new Exception("Ошибка при сохранении. Дополнительная информация в логах.");
|
throw new Exception("Ошибка при сохранении. Дополнительная информация в логах.");
|
||||||
@ -127,28 +125,27 @@ namespace RenovationWorkView
|
|||||||
|
|
||||||
private void buttonIssuedOrder_Click(object sender, EventArgs e)
|
private void buttonIssuedOrder_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
if (dataGridView.SelectedRows.Count == 1)
|
if (dataGridView.SelectedRows.Count == 1)
|
||||||
{
|
{
|
||||||
int id =
|
int id = Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
||||||
Convert.ToInt32(dataGridView.SelectedRows[0].Cells["Id"].Value);
|
_logger.LogInformation("Заказ No{id}. Меняется статус на 'Выдан'", id);
|
||||||
_logger.LogInformation("Заказ №{id}. Меняется статус на 'Выдан'", id);
|
try
|
||||||
try
|
{
|
||||||
{
|
var operationResult = _orderLogic.DeliveryOrder(new OrderBindingModel {Id = id});
|
||||||
var operationResult = _orderLogic.DeliveryOrder(new OrderBindingModel { Id = id });
|
if (!operationResult)
|
||||||
if (!operationResult)
|
{
|
||||||
{
|
throw new Exception("Ошибка при сохранении. Дополнительная информация в логах.");
|
||||||
throw new Exception("Ошибка при сохранении. Дополнительная информация в логах.");
|
}
|
||||||
}
|
_logger.LogInformation("Заказ No{id} выдан", id);
|
||||||
_logger.LogInformation("Заказ №{id} выдан", id);
|
LoadData();
|
||||||
LoadData();
|
}
|
||||||
}
|
catch (Exception ex)
|
||||||
catch (Exception ex)
|
{
|
||||||
{
|
_logger.LogError(ex, "Ошибка отметки о выдачи заказа");
|
||||||
_logger.LogError(ex, "Ошибка отметки о выдачи заказа");
|
MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private void buttonRef_Click(object sender, EventArgs e)
|
private void buttonRef_Click(object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
|
@ -49,13 +49,13 @@ namespace RenovationWorkBusinessLogic.BusinessLogics
|
|||||||
}
|
}
|
||||||
private bool StatusUpdate(OrderBindingModel model, OrderStatus status)
|
private bool StatusUpdate(OrderBindingModel model, OrderStatus status)
|
||||||
{
|
{
|
||||||
CheckModel(model);
|
|
||||||
var element = _orderStorage.GetElement(new OrderSearchModel { Id = model.Id });
|
var element = _orderStorage.GetElement(new OrderSearchModel { Id = model.Id });
|
||||||
if (element == null)
|
if (element == null)
|
||||||
{
|
{
|
||||||
_logger.LogWarning("Read operation failed");
|
_logger.LogWarning("Read operation failed");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
CheckModel(element);
|
||||||
if (element.Status != status - 1)
|
if (element.Status != status - 1)
|
||||||
{
|
{
|
||||||
_logger.LogWarning("Status change operation failed");
|
_logger.LogWarning("Status change operation failed");
|
||||||
@ -63,13 +63,13 @@ namespace RenovationWorkBusinessLogic.BusinessLogics
|
|||||||
}
|
}
|
||||||
if (element.Status == OrderStatus.Готов)
|
if (element.Status == OrderStatus.Готов)
|
||||||
{
|
{
|
||||||
var manufacture = _repairStorage.GetElement(new RepairSearchModel() { Id = model.RepairId });
|
var repair = _repairStorage.GetElement(new RepairSearchModel() { Id = model.RepairId });
|
||||||
if (manufacture == null)
|
if (repair == null)
|
||||||
{
|
{
|
||||||
_logger.LogWarning("Status update to " + status.ToString() + " operation failed. Document not found.");
|
_logger.LogWarning("Status update to " + status.ToString() + " operation failed. Document not found.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (CheckSupply(manufacture, model.Count) == false)
|
if (CheckSupply(repair, model.Count) == false)
|
||||||
{
|
{
|
||||||
_logger.LogWarning("Status update to " + status.ToString() + " operation failed. Shop supply error.");
|
_logger.LogWarning("Status update to " + status.ToString() + " operation failed. Shop supply error.");
|
||||||
return false;
|
return false;
|
||||||
@ -130,7 +130,31 @@ namespace RenovationWorkBusinessLogic.BusinessLogics
|
|||||||
}
|
}
|
||||||
_logger.LogInformation("Order. Count: {Count}. Sum: {Sum}. Id: {Id}", model.Count, model.Sum, model.Id);
|
_logger.LogInformation("Order. Count: {Count}. Sum: {Sum}. Id: {Id}", model.Count, model.Sum, model.Id);
|
||||||
}
|
}
|
||||||
private bool CheckSupply(IRepairModel repair, int count)
|
private void CheckModel(OrderViewModel model, bool withParams = true)
|
||||||
|
{
|
||||||
|
if (model == null)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException(nameof(model));
|
||||||
|
}
|
||||||
|
if (!withParams)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (model.RepairId < 0)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException("Некорректный идентификатор документа", nameof(model.RepairId));
|
||||||
|
}
|
||||||
|
if (model.Count <= 0)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException("Количество работ в заказе должно быть больше 0", nameof(model.Count));
|
||||||
|
}
|
||||||
|
if (model.Sum <= 0)
|
||||||
|
{
|
||||||
|
throw new ArgumentNullException("Сумма заказа должна быть больше 0", nameof(model.Sum));
|
||||||
|
}
|
||||||
|
_logger.LogInformation("Order. Count: {Count}. Sum: {Sum}. Id: {Id}", model.Count, model.Sum, model.Id);
|
||||||
|
}
|
||||||
|
private bool CheckSupply(IRepairModel repair, int count)
|
||||||
{
|
{
|
||||||
if (count <= 0)
|
if (count <= 0)
|
||||||
{
|
{
|
||||||
|
Loading…
Reference in New Issue
Block a user