using Infrastructure.Attribute;
using Infrastructure.Extensions;
using RIZO.Model.Mes.Dto.MasterData;
using RIZO.Model.Mes.MasterData;
using RIZO.Repository;
using RIZO.Service.Mes.IMesService.MasterData;
namespace RIZO.Service.Mes.MasterData
{
///
/// 质量不良原因字典表Service业务层处理
///
[AppService(ServiceType = typeof(IQualityDefectReasonService), ServiceLifetime = LifeTime.Transient)]
public class QualityDefectReasonService : BaseService, IQualityDefectReasonService
{
///
/// 查询质量不良原因字典表列表
///
///
///
public PagedInfo GetList(QualityDefectReasonQueryDto parm)
{
var predicate = QueryExp(parm);
var response = Queryable()
.Where(predicate.ToExpression())
.ToPage(parm);
return response;
}
///
/// 获取详情
///
///
///
public QualityDefectReason GetInfo(long Id)
{
var response = Queryable()
.Where(x => x.Id == Id)
.First();
return response;
}
///
/// 添加质量不良原因字典表
///
///
///
public QualityDefectReason AddQualityDefectReason(QualityDefectReason model)
{
return Insertable(model).ExecuteReturnEntity();
}
///
/// 修改质量不良原因字典表
///
///
///
public int UpdateQualityDefectReason(QualityDefectReason model)
{
return Update(model, true);
}
///
/// 查询导出表达式
///
///
///
private static Expressionable QueryExp(QualityDefectReasonQueryDto parm)
{
var predicate = Expressionable.Create();
if (!string.IsNullOrWhiteSpace(parm.ReasonName))
{
predicate.And(it => it.ReasonName.Contains(parm.ReasonName));
}
if (!string.IsNullOrWhiteSpace(parm.Description))
{
predicate.And(it => it.Description.Contains(parm.Description));
}
return predicate;
}
public List GetQualityDefectReason()
{
var lineOptions = Queryable()
.Select(it => new QualityDefectReasonPullDownDto
{
value = it.ReasonCode,
label = it.ReasonName
}).ToList(); // 执行查询并转换为列表
return lineOptions;
}
}
}