using DOAN.Model;
using DOAN.Model.MES.quality.IQC;
using DOAN.Model.MES.quality.IQC.Dto;
using DOAN.Repository;
using DOAN.Service.MES.quality.FQC.IService;
using Infrastructure.Attribute;
using Mapster;
namespace DOAN.Service.MES.quality.FQC
{
///
/// 缺陷类别Service业务层处理
///
[AppService(ServiceType = typeof(IQcDefectConfigService), ServiceLifetime = LifeTime.Transient)]
public class QcDefectConfigService : BaseService, IQcDefectConfigService
{
///
/// 查询缺陷类别列表
///
///
///
public PagedInfo GetList(QcDefectConfigQueryDto parm)
{
var predicate = Expressionable.Create()
.AndIF(!string.IsNullOrEmpty(parm.Name), it => it.Name.Contains(parm.Name))
.AndIF(!string.IsNullOrEmpty(parm.Code), it => it.Code.Contains(parm.Code))
.AndIF(!string.IsNullOrEmpty(parm.Group), it => it.Group.Contains(parm.Group))
.AndIF(!string.IsNullOrEmpty(parm.QcType), it => it.QcType.Contains(parm.QcType))
.AndIF(!string.IsNullOrEmpty(parm.Status), it => it.Status == parm.Status);
var response = Queryable()
.Where(predicate.ToExpression())
.ToPage(parm);
return response;
}
public List GetListNoPage(QcDefectConfigQueryDto parm)
{
var predicate = Expressionable.Create()
.AndIF(!string.IsNullOrEmpty(parm.Name), it => it.Name.Contains(parm.Name))
.AndIF(!string.IsNullOrEmpty(parm.Code), it => it.Code.Contains(parm.Code))
.AndIF(!string.IsNullOrEmpty(parm.Group), it => it.Group.Contains(parm.Group))
.AndIF(!string.IsNullOrEmpty(parm.QcType), it => it.QcType.Contains(parm.QcType))
.AndIF(!string.IsNullOrEmpty(parm.Status), it => it.Status == parm.Status);
var response = Queryable()
.Where(predicate.ToExpression()).ToList().Adapt, List>();
return response;
}
///
/// 获取详情
///
///
///
public QcDefectConfig GetInfo(int Id)
{
var response = Queryable()
.Where(x => x.Id == Id)
.First();
return response;
}
///
/// 添加缺陷类别
///
///
///
public QcDefectConfig AddQcDefectConfig(QcDefectConfig model)
{
return Context.Insertable(model).ExecuteReturnEntity();
}
///
/// 修改缺陷类别
///
///
///
public int UpdateQcDefectConfig(QcDefectConfig model)
{
//var response = Update(w => w.Id == model.Id, it => new QcDefectConfig()
//{
// Name = model.Name,
// Code = model.Code,
// Group = model.Group,
// QcType = model.QcType,
// Status = model.Status,
// CreatedBy = model.CreatedBy,
// CreatedTime = model.CreatedTime,
// UpdatedBy = model.UpdatedBy,
// UpdatedTime = model.UpdatedTime,
//});
//return response;
return Update(model, true);
}
}
}