using Infrastructure.Attribute; using DOAN.Repository; using DOAN.Model.Factory_Model.Dto; using DOAN.Model.Factory_Model; using DOAN.Service.Factory_Model.IService; using Mapster; using System.Collections.Generic; namespace DOAN.Service.Factory_Model { /// /// 车间Service业务层处理 /// [AppService(ServiceType = typeof(IBaseWorkshopService), ServiceLifetime = LifeTime.Transient)] public class BaseWorkshopService : BaseService, IBaseWorkshopService { /// /// 查询车间列表 /// /// /// public PagedInfo GetList(BaseWorkshopQueryDto parm) { var predicate = QueryExp(parm); var query = Queryable() .Where(predicate.ToExpression()); var response = Context.Queryable(query).LeftJoin((q, c) => q.FkCompanyId == c.Id) .Select((q, c) => new BaseWorkshopDto() { CompanyName = c.CompanyName }, true).ToPage(parm); return response; } public List GetList_NO_Page(BaseWorkshopQueryDto parm) { var predicate = QueryExp(parm); var response = Queryable() .Where(predicate.ToExpression()) .ToList() .Adapt>(); return response; } /// /// 获取详情 /// /// /// public BaseWorkshop GetInfo(int Id) { var response = Queryable() .Where(x => x.Id == Id) .First(); return response; } /// /// 添加车间 /// /// /// public BaseWorkshop AddBaseWorkshop(BaseWorkshop model) { return Insertable(model).ExecuteReturnEntity(); } /// /// 修改车间 /// /// /// public int UpdateBaseWorkshop(BaseWorkshop model) { return Update(model, true); } /// /// 查询导出表达式 /// /// /// private static Expressionable QueryExp(BaseWorkshopQueryDto parm) { var predicate = Expressionable.Create() .AndIF(!string.IsNullOrEmpty(parm.WorkshopCode), it => it.WorkshopCode.Contains(parm.WorkshopCode)) .AndIF(!string.IsNullOrEmpty(parm.WorkshopName), it => it.WorkshopName.Contains(parm.WorkshopName)) .AndIF(parm.Status > -1, it => it.Status == parm.Status) .AndIF(parm.FkCompanyId > -1, it => it.FkCompanyId == parm.FkCompanyId) ; return predicate; } } }