103 lines
3.2 KiB
C#
103 lines
3.2 KiB
C#
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
|
|
{
|
|
/// <summary>
|
|
/// 车间Service业务层处理
|
|
/// </summary>
|
|
[AppService(ServiceType = typeof(IBaseWorkshopService), ServiceLifetime = LifeTime.Transient)]
|
|
public class BaseWorkshopService : BaseService<BaseWorkshop>, IBaseWorkshopService
|
|
{
|
|
/// <summary>
|
|
/// 查询车间列表
|
|
/// </summary>
|
|
/// <param name="parm"></param>
|
|
/// <returns></returns>
|
|
public PagedInfo<BaseWorkshopDto> GetList(BaseWorkshopQueryDto parm)
|
|
{
|
|
var predicate = QueryExp(parm);
|
|
|
|
var query = Queryable()
|
|
.Where(predicate.ToExpression());
|
|
var response = Context.Queryable(query).LeftJoin<BaseCompany>((q, c) => q.FkCompanyId == c.Id)
|
|
.Select((q, c) => new BaseWorkshopDto()
|
|
{
|
|
CompanyName = c.CompanyName
|
|
}, true).ToPage<BaseWorkshopDto, BaseWorkshopDto>(parm);
|
|
|
|
|
|
return response;
|
|
}
|
|
|
|
public List<BaseWorkshopDto> GetList_NO_Page(BaseWorkshopQueryDto parm)
|
|
{
|
|
var predicate = QueryExp(parm);
|
|
|
|
var response = Queryable()
|
|
.Where(predicate.ToExpression())
|
|
.ToList()
|
|
.Adapt<List<BaseWorkshopDto>>();
|
|
|
|
return response;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 获取详情
|
|
/// </summary>
|
|
/// <param name="Id"></param>
|
|
/// <returns></returns>
|
|
public BaseWorkshop GetInfo(int Id)
|
|
{
|
|
var response = Queryable()
|
|
.Where(x => x.Id == Id)
|
|
.First();
|
|
|
|
return response;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 添加车间
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
/// <returns></returns>
|
|
public BaseWorkshop AddBaseWorkshop(BaseWorkshop model)
|
|
{
|
|
return Insertable(model).ExecuteReturnEntity();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 修改车间
|
|
/// </summary>
|
|
/// <param name="model"></param>
|
|
/// <returns></returns>
|
|
public int UpdateBaseWorkshop(BaseWorkshop model)
|
|
{
|
|
return Update(model, true);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 查询导出表达式
|
|
/// </summary>
|
|
/// <param name="parm"></param>
|
|
/// <returns></returns>
|
|
private static Expressionable<BaseWorkshop> QueryExp(BaseWorkshopQueryDto parm)
|
|
{
|
|
var predicate = Expressionable.Create<BaseWorkshop>()
|
|
.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;
|
|
}
|
|
}
|
|
} |