using DOAN.Model.MES.base_; using DOAN.Model; using DOAN.Model.MES.product; using DOAN.Model.MES.product.Dto; using DOAN.Service.MES.product.IService; using Infrastructure.Attribute; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using DOAN.Repository; using DOAN.Model.MES.base_.Dto; using Mapster; using Microsoft.AspNetCore.Authentication; namespace DOAN.Service.MES.product { /// /// 报工表Service业务层处理 /// [AppService(ServiceType = typeof(IProReportworkService), ServiceLifetime = LifeTime.Transient)] public class ProReportworkService : BaseService, IProReportworkService { /// /// 查询报工表列表 /// /// /// public PagedInfo GetList(ProReportworkQueryDto parm) { if(parm.TimeRange.Length == 2) { parm.TimeRange[0]= parm.TimeRange[0].Date; parm.TimeRange[1]= parm.TimeRange[1].Date.AddDays(1); } var predicate = Expressionable.Create() .AndIF(!string.IsNullOrEmpty(parm.FkWorkorder),it=>it.FkWorkorder.Contains(parm.FkWorkorder)) .AndIF(!string.IsNullOrEmpty(parm.GroupCode),it=>it.GroupCode==parm.FkWorkorder) .AndIF(!string.IsNullOrEmpty(parm.LineCode),it=>it.LineCode==parm.FkWorkorder) .AndIF(parm.TimeRange.Length == 2 && parm.TimeRange[0]>DateTime.MinValue,it=>it.CreatedTime>= parm.TimeRange[0]) .AndIF(parm.TimeRange.Length == 2 && parm.TimeRange[1]>DateTime.MinValue,it=>it.CreatedTime<= parm.TimeRange[1]) ; var response = Queryable() .Where(predicate.ToExpression()) .ToPage(parm); return response; } /// /// 获取详情 /// /// /// public ProReportwork GetInfo(string Id) { var response = Queryable() .Where(x => x.Id == Id) .First(); return response; } /// /// 添加报工表 /// /// /// public ProReportwork AddProReportwork(ProReportwork model) { model.Id = XueHua; return Context.Insertable(model).ExecuteReturnEntity(); } /// /// 修改报工表 /// /// /// public int UpdateProReportwork(ProReportwork model) { //var response = Update(w => w.Id == model.Id, it => new ProReportwork() //{ // FkWorkorder = model.FkWorkorder, // DispatchNum = model.DispatchNum, // FinishedNum = model.FinishedNum, // GroupCode = model.GroupCode, // LineCode = model.LineCode, // CreatedBy = model.CreatedBy, // CreatedTime = model.CreatedTime, // UpdatedBy = model.UpdatedBy, // UpdatedTime = model.UpdatedTime, //}); //return response; return Update(model, true); } } }