Files
kunshan-bzfm-mes-backend/DOAN.Service/MES/Product/ProWorkorderReferenceService.cs
git_rabbit 4f91390d01 feat: 添加工单管理服务及相关测试
refactor: 重构工单服务接口和实现
test: 添加工单服务的单元测试和集成测试
2026-01-28 17:54:15 +08:00

100 lines
3.0 KiB
C#

using DOAN.Model.MES.base_;
using DOAN.Model.MES.base_.Dto;
using DOAN.Model.MES.product;
using DOAN.Service.MES.product.IService;
using Infrastructure.Attribute;
namespace DOAN.Service.MES.product
{
/// <summary>
/// 工单参考数据服务
/// </summary>
[AppService(
ServiceType = typeof(IProWorkorderReferenceService),
ServiceLifetime = LifeTime.Transient
)]
public class ProWorkorderReferenceService
: BaseService<ProWorkorder>,
IProWorkorderReferenceService
{
/// <summary>
/// 获取物料信息
/// </summary>
/// <param name="query"></param>
/// <returns></returns>
public List<BaseMaterialList> GetMaterialInfo(BaseMaterialListQueryDto5 parm)
{
var predicate = Expressionable
.Create<BaseMaterialList>()
.OrIF(
!string.IsNullOrEmpty(parm.Name_or_Code),
it => it.Name.Contains(parm.Name_or_Code)
)
.OrIF(
!string.IsNullOrEmpty(parm.Name_or_Code),
it => it.Code.Contains(parm.Name_or_Code)
);
return Context
.Queryable<BaseMaterialList>()
.Where(predicate.ToExpression())
.Take(20)
.ToList();
}
/// <summary>
/// 获取客户信息
/// </summary>
/// <param name="parm"></param>
/// <returns></returns>
public List<BaseCustom> GetCustomInfo(BaseCustomQueryDto2 parm)
{
var predicate = Expressionable
.Create<BaseCustom>()
.AndIF(
!string.IsNullOrEmpty(parm.CustomNo),
it => it.CustomNo.Contains(parm.CustomNo)
)
.And(it => it.Status == 1);
var response = Context
.Queryable<BaseCustom>()
.Where(predicate.ToExpression())
.OrderBy(it => it.CustomNo)
.Take(20)
.ToList();
return response;
}
/// <summary>
/// 获取工艺路线
/// </summary>
/// <param name="dateTime"></param>
/// <returns></returns>
public List<BaseWorkRoute> GetProcessRoute(DateTime dateTime)
{
throw new NotImplementedException();
}
/// <summary>
/// 获取全部工艺路线
/// </summary>
/// <returns></returns>
public List<BaseWorkRoute> GetAllRoute()
{
var result = Context.Queryable<BaseWorkRoute>().Where(it => it.Status == 1).ToList();
return result;
}
/// <summary>
/// 获取班组
/// </summary>
/// <returns></returns>
public List<BaseGroup> GetGroupList()
{
var result = Context.Queryable<BaseGroup>().Where(it => it.Status == 1).ToList();
return result;
}
}
}