diff --git a/DOAN.Model/MES/Product/Dto/ProReportworkDto.cs b/DOAN.Model/MES/Product/Dto/ProReportworkDto.cs index 66ea080..83e8375 100644 --- a/DOAN.Model/MES/Product/Dto/ProReportworkDto.cs +++ b/DOAN.Model/MES/Product/Dto/ProReportworkDto.cs @@ -30,6 +30,7 @@ namespace DOAN.Model.BZFM.Dto public string RouteCode { get; set; } public int ProcessId { get; set; } + public string ProcessName { get; set; } public int? PlanNum { get; set; } diff --git a/DOAN.Service/MES/Product/ProReportworkService.cs b/DOAN.Service/MES/Product/ProReportworkService.cs index 4b757fd..025c2a4 100644 --- a/DOAN.Service/MES/Product/ProReportworkService.cs +++ b/DOAN.Service/MES/Product/ProReportworkService.cs @@ -1,89 +1,91 @@ -using Infrastructure.Attribute; -using Infrastructure.Extensions; using DOAN.Model.BZFM.Dto; -using DOAN.Model.BZFM; +using DOAN.Model.MES.base_; using DOAN.Model.MES.product; using DOAN.Repository; using DOAN.Service.MES.product.IService; +using Infrastructure.Attribute; +namespace DOAN.Service.MES.product; -namespace DOAN.Service.MES.product +/// +/// 报工Service业务层处理 +/// +[AppService(ServiceType = typeof(IProReportworkService), ServiceLifetime = LifeTime.Transient)] +public class ProReportworkService : BaseService, IProReportworkService { /// - /// 报工Service业务层处理 + /// 查询报工列表 /// - [AppService(ServiceType = typeof(IProReportworkService), ServiceLifetime = LifeTime.Transient)] - public class ProReportworkService : BaseService, IProReportworkService + /// + /// + public PagedInfo GetList(ProReportworkQueryDto parm) { - /// - /// 查询报工列表 - /// - /// - /// - public PagedInfo GetList(ProReportworkQueryDto parm) - { - var predicate = QueryExp(parm); + var predicate = QueryExp(parm); - var response = Queryable() - .Where(predicate.ToExpression()) - .ToPage(parm); + var query = Queryable() + .Where(predicate.ToExpression()); + var response = Context.Queryable(query).LeftJoin((q, w) => q.ProcessId == w.Id) + .Select((q, w) => new ProReportworkDto + { + ProcessName = w.Name + }, true + ) + .ToPage_NO_Convert(parm); - return response; - } + return response; + } - /// - /// 获取详情 - /// - /// - /// - public ProReportwork01 GetInfo(string Id) - { - var response = Queryable() - .Where(x => x.Id == Id) - .First(); + /// + /// 获取详情 + /// + /// + /// + public ProReportwork01 GetInfo(string Id) + { + var response = Queryable() + .Where(x => x.Id == Id) + .First(); - return response; - } + return response; + } - /// - /// 添加报工 - /// - /// - /// - public ProReportwork01 AddProReportwork(ProReportwork01 model) - { - return Insertable(model).ExecuteReturnEntity(); - } + /// + /// 添加报工 + /// + /// + /// + public ProReportwork01 AddProReportwork(ProReportwork01 model) + { + return Insertable(model).ExecuteReturnEntity(); + } - /// - /// 修改报工 - /// - /// - /// - public int UpdateProReportwork(ProReportwork01 model) - { - return Update(model, true); - } + /// + /// 修改报工 + /// + /// + /// + public int UpdateProReportwork(ProReportwork01 model) + { + return Update(model, true); + } - /// - /// 查询导出表达式 - /// - /// - /// - private static Expressionable QueryExp(ProReportworkQueryDto parm) - { - var predicate = Expressionable.Create() - .AndIF(!string.IsNullOrEmpty(parm.Workorder), it => it.Workorder.Contains(parm.Workorder)) - .AndIF(!string.IsNullOrEmpty(parm.Worker), it => it.Worker.Contains(parm.Worker)) - .AndIF(!string.IsNullOrEmpty(parm.RouteCode), it => it.RouteCode==parm.RouteCode) - .AndIF(parm.ProcessId>0, it => it.ProcessId==parm.ProcessId) - .AndIF(parm.JobDate != null && parm.JobDate[0] > DateTime.MinValue, it => it.JobDate >= parm.JobDate[0]) - .AndIF(parm.JobDate != null && parm.JobDate[1] > DateTime.MinValue, it => it.JobDate <= parm.JobDate[1]) - - ; + /// + /// 查询导出表达式 + /// + /// + /// + private static Expressionable QueryExp(ProReportworkQueryDto parm) + { + var predicate = Expressionable.Create() + .AndIF(!string.IsNullOrEmpty(parm.Workorder), it => it.Workorder.Contains(parm.Workorder)) + .AndIF(!string.IsNullOrEmpty(parm.Worker), it => it.Worker.Contains(parm.Worker)) + .AndIF(!string.IsNullOrEmpty(parm.RouteCode), it => it.RouteCode == parm.RouteCode) + .AndIF(parm.ProcessId > 0, it => it.ProcessId == parm.ProcessId) + .AndIF(parm.JobDate != null && parm.JobDate[0] > DateTime.MinValue, it => it.JobDate >= parm.JobDate[0]) + .AndIF(parm.JobDate != null && parm.JobDate[1] > DateTime.MinValue, it => it.JobDate <= parm.JobDate[1]) + ; - return predicate; - } + return predicate; } } \ No newline at end of file