Valeo_Line_MES_backend/RIZO.Admin.WebApi/PLC/Service/PlcProductionDataService.cs
2026-01-31 10:07:20 +08:00

148 lines
5.1 KiB
C#

using Infrastructure.Attribute;
using Infrastructure.Extensions;
using RIZO.Admin.WebApi.PLC.Model;
using RIZO.Admin.WebApi.PLC.Model.Dto;
using RIZO.Admin.WebApi.PLC.Service.IService;
using RIZO.Model;
using RIZO.Repository;
using RIZO.ServiceCore;
using SqlSugar;
namespace RIZO.Admin.WebApi.PLC.Service
{
/// <summary>
/// 产线PLC生产参数数据表Service业务层处理
/// </summary>
[AppService(ServiceType = typeof(IPlcProductionDataService), ServiceLifetime = LifeTime.Transient)]
public class PlcProductionDataService : BaseService<PlcProductionData>, IPlcProductionDataService
{
/// <summary>
/// 查询产线PLC生产参数数据表列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public PagedInfo<PlcProductionDataDto> GetList(PlcProductionDataQueryDto parm)
{
var predicate = QueryExp(parm);
#region
if (!string.IsNullOrEmpty(parm.ProductName))
{
predicate = predicate.And(x => x.ProductName == parm.ProductName);
}
if (!string.IsNullOrEmpty(parm.ProductCode))
{
predicate = predicate.And(x => x.ProductCode == parm.ProductCode);
}
if (!string.IsNullOrEmpty(parm.ProduceModel))
{
predicate = predicate.And(x => x.ProduceModel == parm.ProduceModel);
}
if (!string.IsNullOrEmpty(parm.WorkstationCode))
{
predicate = predicate.And(x => x.WorkstationCode == parm.WorkstationCode);
}
if (!string.IsNullOrEmpty(parm.ReworkFlag))
{
predicate = predicate.And(x => x.ReworkFlag == parm.ReworkFlag);
}
if (parm.startTime != null && parm.startTime > DateTime.MinValue)
{
predicate = predicate.And(x => x.CreatedTime >= parm.startTime);
}
if (parm.endTime != null && parm.endTime > DateTime.MinValue)
{
predicate = predicate.And(x => x.CreatedTime <= parm.endTime);
}
#endregion
var response = Queryable()
.Where(predicate.ToExpression())
.ToPage<PlcProductionData, PlcProductionDataDto>(parm);
return response;
}
/// <summary>
/// 查询产线PLC生产工艺参数
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public PagedInfo<PlcProductionDataDto> GetProcessParameter(PlcProductionDataQueryDto parm)
{
var predicate = QueryExp(parm);
#region
//if (!string.IsNullOrEmpty(parm.ProductName))
//{
// predicate = predicate.And(x => x.ProductName == parm.ProductName);
//}
//if (!string.IsNullOrEmpty(parm.ProductCode))
//{
// predicate = predicate.And(x => x.ProductCode == parm.ProductCode);
//}
//if (!string.IsNullOrEmpty(parm.ReworkFlag))
//{
// predicate = predicate.And(x => x.ReworkFlag == parm.ReworkFlag);
//}
//if (parm.startTime != null && parm.startTime > DateTime.MinValue)
//{
// predicate = predicate.And(x => x.CreatedTime >= parm.startTime);
//}
//if (parm.endTime != null && parm.endTime > DateTime.MinValue)
//{
// predicate = predicate.And(x => x.CreatedTime <= parm.endTime);
//}
#endregion
var response = Queryable()
.Where(predicate.ToExpression())
.ToPage<PlcProductionData, PlcProductionDataDto>(parm);
return response;
}
/// <summary>
/// 获取详情
/// </summary>
/// <param name="Id"></param>
/// <returns></returns>
public PlcProductionData GetInfo(int Id)
{
var response = Queryable()
.Where(x => x.Id == Id)
.First();
return response;
}
/// <summary>
/// 添加产线PLC生产参数数据表
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public PlcProductionData AddPlcProductionData(PlcProductionData model)
{
return Insertable(model).ExecuteReturnEntity();
}
/// <summary>
/// 修改产线PLC生产参数数据表
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public int UpdatePlcProductionData(PlcProductionData model)
{
return Update(model, true);
}
/// <summary>
/// 查询导出表达式
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
private static Expressionable<PlcProductionData> QueryExp(PlcProductionDataQueryDto parm)
{
var predicate = Expressionable.Create<PlcProductionData>();
return predicate;
}
}
}