Files
ww-jst/wmsjst/JSMachine.WMS.WebHost/Models/MaterialQueryParam.cs
T
2026-09-02 16:31:50 +08:00

42 lines
1.3 KiB
C#

using JSMachine.WMS.App.Dto;
using SqlSugar;
using System.Linq.Expressions;
namespace JSMachine.WMS.WebHost.Models
{
/// <summary>
/// 物料查询参数
/// </summary>
public class MaterialQueryParam
{
/// <summary>
/// 库位编号
/// </summary>
public string StorageRackNo { get; set; }
/// <summary>
/// 合格证号
/// </summary>
public string Barcode { get; set; }
/// <summary>
/// 物料批次号
/// </summary>
public string MaterialBatch { get; set; }
/// <summary>
/// 客户名称
/// </summary>
public string CustomerName { get; set; }
public Expression<Func<StorageRackDto, bool>> BuildExpress()
{
var express = Expressionable.Create<StorageRackDto>();
express.AndIF(!string.IsNullOrEmpty(StorageRackNo), p => p.StorageRackNo.Contains(StorageRackNo));
express.AndIF(!string.IsNullOrEmpty(Barcode), p => p.BarCode.Contains(Barcode));
express.AndIF(!string.IsNullOrEmpty(MaterialBatch), p => p.MateriaBatch.Contains(MaterialBatch));
express.AndIF(!string.IsNullOrEmpty(CustomerName), p => p.CustomName.Contains(CustomerName));
return express.ToExpression();
}
}
}