106 lines
3.8 KiB
C#
106 lines
3.8 KiB
C#
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)
|
||
{
|
||
var entity = item.Adapt<Washer>();
|
||
result.Add(entity);
|
||
}
|
||
|
||
await base.CreateManyAsync(result);
|
||
}
|
||
/// <summary>
|
||
/// 获取洗车机列表
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
public async Task<object> getWasherList()
|
||
{
|
||
Expression<Func<Washer, bool>> exp = filter => filter.IsDelete == false;
|
||
var result = (await base.GetListWithExp(exp)).OrderByDescending(p=>p.CreateDateTime).ToList();
|
||
var washerResult = new List<GetWasherDto>();//转化成需要的数据
|
||
foreach (var item in result)
|
||
{
|
||
var entity = item.Adapt<GetWasherDto>();
|
||
entity.EquipmentStatusString = item.EquipmentStatus == 0 ? "异常" : "正常";
|
||
entity.RunStatusString = item.RunStatus == 0 ? "停止" : "运行";
|
||
washerResult.Add(entity);
|
||
}
|
||
return new ApiResult()
|
||
{
|
||
code = 0,
|
||
data = new
|
||
{
|
||
total = washerResult.Count,
|
||
item = washerResult
|
||
|
||
}
|
||
};
|
||
}
|
||
/// <summary>
|
||
/// 获取洗车机历史记录(起始时间和结束时间非空,根据起始时间和结束时间筛选数据,如果为空,默认获取30条数据)
|
||
/// </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>();
|
||
entity.StateString = item.State == 0 ? "停止" : "运行";
|
||
washerHistroyResult.Add(entity);
|
||
}
|
||
if (washerHistroyResult.Any())
|
||
{
|
||
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 new ApiResult()
|
||
{
|
||
code = 0,
|
||
data = new
|
||
{
|
||
total=washerHistroyResult.Count,
|
||
item= washerHistroyResult
|
||
|
||
}
|
||
};
|
||
}
|
||
}
|
||
|
||
|
||
|
||
}
|