增强各业务表查询DTO及Service的多条件查询支持

本次提交为库位、入库、出库、出入库类别等业务表的查询DTO新增了多个查询字段,并在对应Service层的QueryExp方法中实现了这些字段的动态拼接查询。调整后支持按编码、名称、操作员等多条件模糊筛选,提升了查询灵活性和前端多条件检索能力。同时优化了部分using引用顺序。
This commit is contained in:
2025-12-30 17:26:11 +08:00
parent ba63c12824
commit 3fdad62fb7
8 changed files with 33 additions and 7 deletions

View File

@@ -71,7 +71,9 @@ namespace DOAN.Service.BZFM
/// <returns></returns>
private static Expressionable<MmLocation> QueryExp(MmLocationQueryDto parm)
{
var predicate = Expressionable.Create<MmLocation>();
var predicate = Expressionable.Create<MmLocation>()
.AndIF(!string.IsNullOrEmpty(parm.LocationCode), it => it.LocationCode.Contains(parm.LocationCode))
.AndIF(!string.IsNullOrEmpty(parm.WarehouseCode), it => it.WarehouseCode.Contains(parm.WarehouseCode));
return predicate;
}

View File

@@ -1,9 +1,10 @@
using Infrastructure.Attribute;
using Infrastructure.Extensions;
using DOAN.Model.BZFM.Dto;
using DOAN.Model.BZFM;
using DOAN.Model.BZFM.Dto;
using DOAN.Repository;
using DOAN.Service.BZFM.IBZFMService;
using Infrastructure.Attribute;
using Infrastructure.Extensions;
using Microsoft.IdentityModel.Tokens;
namespace DOAN.Service.BZFM
{
@@ -71,7 +72,11 @@ namespace DOAN.Service.BZFM
/// <returns></returns>
private static Expressionable<MmRecordInbound> QueryExp(MmRecordInboundQueryDto parm)
{
var predicate = Expressionable.Create<MmRecordInbound>();
var predicate = Expressionable.Create<MmRecordInbound>()
.AndIF(!string.IsNullOrEmpty(parm.SupplierCode), it => it.SupplierCode.Contains(parm.SupplierCode))
.AndIF(!string.IsNullOrEmpty(parm.Operator), it => it.Operator.Contains(parm.Operator))
//.AndIF(!string.IsNullOrEmpty(parm.CreatedTime), it => it.CreatedTime.Contains(parm.CreatedTime))
;
return predicate;
}

View File

@@ -71,7 +71,10 @@ namespace DOAN.Service.BZFM
/// <returns></returns>
private static Expressionable<MmRecordOutbound> QueryExp(MmRecordOutboundQueryDto parm)
{
var predicate = Expressionable.Create<MmRecordOutbound>();
var predicate = Expressionable.Create<MmRecordOutbound>()
.AndIF(!string.IsNullOrEmpty(parm.MaterialCode), it => it.MaterialCode.Contains(parm.MaterialCode))
.AndIF(!string.IsNullOrEmpty(parm.OutboundNo), it => it.OutboundNo.Contains(parm.OutboundNo))
;
return predicate;
}

View File

@@ -71,7 +71,9 @@ namespace DOAN.Service.BZFM
/// <returns></returns>
private static Expressionable<MmTransactionType> QueryExp(MmTransactionTypeQueryDto parm)
{
var predicate = Expressionable.Create<MmTransactionType>();
var predicate = Expressionable.Create<MmTransactionType>()
.AndIF(!string.IsNullOrEmpty(parm.TypeName), it => it.TypeName.Contains(parm.TypeName))
.AndIF(!string.IsNullOrEmpty(parm.TransactionDirection), it => it.TransactionDirection.Contains(parm.TransactionDirection));
return predicate;
}