lg_backend/langguanApi/Service/WasherService.cs

91 lines
3.5 KiB
C#
Raw Normal View History

using langguanApi.Extensions;
using langguanApi.Extensions.AutoDI;
using langguanApi.Model;
using langguanApi.Model.Entity;
using Mapster;
using System.Linq.Expressions;
namespace langguanApi.Service
{
[ServiceInjection(InjectionType.Transient)]
public class WasherService : BaseService<Washer>
{
public WasherService(IConfiguration config) : base(config, nameof(Washer))
{
}
/// <summary>
/// 新增洗车机
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public async Task addWasher(List<AddWasher> input)
{
List<Washer> result = new List<Washer>();
foreach (var item in input)
{
2024-07-25 08:49:06 +00:00
var entity = item.Adapt<Washer>();
result.Add(entity);
}
2024-07-25 08:49:06 +00:00
await base.CreateManyAsync(result);
}
/// <summary>
/// 获取洗车机列表
/// </summary>
/// <returns></returns>
public async Task<List<GetWasherDto>> getWasherList()
{
Expression<Func<Washer, bool>> exp = filter => filter.IsDelete == false;
var result = (await base.GetListWithExp(exp)).ToList();
var washerResult = new List<GetWasherDto>();//转化成需要的数据
foreach (var item in result)
{
var entity = item.Adapt<GetWasherDto>();
entity.EquipmentStatusString = item.EquipmentStatus == 0 ? "异常" : "正常";
entity.FaultAlarmString = item.FaultAlarm == 0 ? "异常" : "正常";
2024-07-25 08:49:06 +00:00
entity.PSAlarmString = item.PSAlarm == 0 ? "异常" : "正常";
entity.RunStatusString = item.RunStatus == 0 ? "停止" : "运行";
entity.WPAlarmString = item.WPAlarm == 0 ? "异常" : "正常";
washerResult.Add(entity);
}
return washerResult;
}
/// <summary>
/// 获取洗车机历史记录
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
public async Task<object> WasherHistoryList(transportReqPage input)
{
Expression<Func<Washer, bool>> exp = filter => filter.IsDelete == false;
var result = (await base.GetListWithExp(exp)).ToList();
var washerHistroyResult = new List<WasherHistoryDto>();//转化成需要的数据
foreach (var item in result)
{
var entity = item.Adapt<WasherHistoryDto>();
2024-07-25 08:49:06 +00:00
entity.StateString = item.State == 0 ? "停止" : "运行";
washerHistroyResult.Add(entity);
}
2024-07-24 09:58:41 +00:00
if (washerHistroyResult.Any())
{
2024-07-25 08:49:06 +00:00
if (!string.IsNullOrWhiteSpace(input.startTime))
{
washerHistroyResult = washerHistroyResult.Where(p => Convert.ToDateTime(p.Time) >= Convert.ToDateTime(input.startTime)).ToList();
}
if (!string.IsNullOrWhiteSpace(input.endTime))
{
washerHistroyResult = washerHistroyResult.Where(p => Convert.ToDateTime(p.Time) <= Convert.ToDateTime(input.endTime)).ToList();
}
if (string.IsNullOrWhiteSpace(input.startTime) && string.IsNullOrWhiteSpace(input.endTime))
{
washerHistroyResult = washerHistroyResult.OrderByDescending(p => p.Time).Take(30).ToList();
}
}
return washerHistroyResult;
2024-07-24 09:58:41 +00:00
}
}
2024-07-25 08:49:06 +00:00
}