feat(esppOrderLoader): доделал логику синхронизации

This commit is contained in:
Mikhail Trubnikov
2023-10-24 10:38:21 +10:00
parent a94a6460ce
commit 2dcae0239b
10 changed files with 2806 additions and 19 deletions

View File

@@ -1,4 +1,6 @@
using PARR.DAL.Context;
using Microsoft.Extensions.Logging;
using PARR.DAL.Context;
using PARR.DAL.Contracts;
using PARR.DAL.Models;
using PARR.DAL.Services.Interfaces;
@@ -7,15 +9,38 @@ namespace PARR.DAL.Services.Implementations
internal class OrderStatusService : IOrderStatusService
{
private readonly DataContext dataContext;
private readonly ILogger<OrderStatusService> logger;
public OrderStatusService(DataContext dataContext)
public OrderStatusService(DataContext dataContext, ILogger<OrderStatusService> logger)
{
this.dataContext = dataContext;
this.logger = logger;
}
public IQueryable<OrderStatus> Get()
{
return dataContext.OrderStatuses;
}
public OrderStatusEnum GetOrderStatusByName(string statusName)
{
switch (statusName.ToLower().Trim())
{
case "1-Направлен в группу":
return OrderStatusEnum.New;
case "2-В работе":
return OrderStatusEnum.InWork;
case "3-Приостановлен":
return OrderStatusEnum.Stop;
case "4-Выполнен":
return OrderStatusEnum.Complete;
case "5-Закрыт":
return OrderStatusEnum.Closed;
default:
logger.LogWarning($"Не смог распознать статус наряда, вернул значение по умполчанию: {OrderStatusEnum.New.ToString()}, входящее значение: {statusName}");
return OrderStatusEnum.New;
}
}
}
}

View File

@@ -1,9 +1,11 @@
using PARR.DAL.Models;
using PARR.DAL.Contracts;
using PARR.DAL.Models;
namespace PARR.DAL.Services.Interfaces
{
public interface IOrderStatusService
{
IQueryable<OrderStatus> Get();
OrderStatusEnum GetOrderStatusByName(string statusName);
}
}