zhuangpei-mesbackend/MDM/Services/Process/ProcessRoutingService.cs
gcw_MV9p2JJN a293df3710 1
2025-11-19 11:49:05 +08:00

89 lines
3.1 KiB
C#

using Infrastructure.Attribute;
using MDM.Model;
using MDM.Model.Process;
using MDM.Model.Process.Dto;
using MDM.Repository;
using MDM.Service;
using MDM.Services.IProcessService;
namespace MDM.Services.Process
{
/// <summary>
/// 工艺路线Service业务层处理
/// </summary>
[AppService(ServiceType = typeof(IProcessRoutingService), ServiceLifetime = LifeTime.Transient)]
public class ProcessRoutingService : BaseService<ProcessRouting>, IProcessRoutingService
{
/// <summary>
/// 查询工艺路线列表
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public PagedInfo<ProcessRoutingDto> GetList(ProcessRoutingQueryDto parm)
{
var predicate = Expressionable.Create<ProcessRouting>()
.AndIF(!string.IsNullOrEmpty(parm.RoutingName), it => it.RoutingName.Contains(parm.RoutingName))
.AndIF(!string.IsNullOrEmpty(parm.RoutingCode), it => it.RoutingCode.Contains(parm.RoutingCode))
.AndIF(!string.IsNullOrEmpty(parm.FkProductMaterialCode), it => it.FkProductMaterialCode.Contains(parm.FkProductMaterialCode))
.AndIF(parm.Version != null, it => it.Version == parm.Version)
.AndIF(parm.Status != null, it => it.Status == parm.Status)
;
var response = Queryable()
.Where(predicate.ToExpression())
.ToPage<ProcessRouting, ProcessRoutingDto>(parm);
return response;
}
/// <summary>
/// 获取详情
/// </summary>
/// <param name="RoutingId"></param>
/// <returns></returns>
public ProcessRouting GetInfo(int RoutingId)
{
var response = Queryable()
.Where(x => x.RoutingId == RoutingId)
.First();
return response;
}
/// <summary>
/// 添加工艺路线
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public ProcessRouting AddProcessRouting(ProcessRouting model)
{
return Context.Insertable(model).ExecuteReturnEntity();
}
/// <summary>
/// 修改工艺路线
/// </summary>
/// <param name="model"></param>
/// <returns></returns>
public int UpdateProcessRouting(ProcessRouting model)
{
//var response = Update(w => w.RoutingId == model.RoutingId, it => new ProcessRouting()
//{
// FkProductMaterialCode = model.FkProductMaterialCode,
// RoutingName = model.RoutingName,
// Version = model.Version,
// Description = model.Description,
// Status = model.Status,
// EffectiveDate = model.EffectiveDate,
// CreatedBy = model.CreatedBy,
// CreatedTime = model.CreatedTime,
// UpdatedBy = model.UpdatedBy,
// UpdatedTime = model.UpdatedTime,
//});
//return response;
return Update(model, true);
}
}
}