出库策略更改

This commit is contained in:
FanLian
2023-07-31 17:27:25 +08:00
parent 9d4ceff2b8
commit e8e590ba1b
3 changed files with 31 additions and 35 deletions

View File

@@ -66,9 +66,6 @@ namespace Tnb.WarehouseMgr
{
await _db.Ado.BeginTranAsync();
if (setSortings?.Count > 0 && !onFlag)
{
var singleSorting = setSortings[0];
@@ -80,22 +77,23 @@ namespace Tnb.WarehouseMgr
List<WmsCarryCode> carryCodes = new();
List<string> carryIds = new();
;
foreach (var os in setSortingDList)
{
var whereExpr = Expressionable.Create<WmsCarryH, WmsCarryCode, BasLocation>()
.And((a, b, c) => a.is_lock == 0)
.And((a, b, c) => !string.IsNullOrEmpty(a.location_id))
.And((a, b, c) => a.status == (int)EnumCarryStatus.)
.And((a, b, c) => b.material_id == os.material_id)
.And((a, b, c) => c.wh_id == os.warehouse_id)
.AndIF(!string.IsNullOrEmpty(os.code_batch), (a, b, c) => b.code_batch == os.code_batch)
.ToExpression();
;
var OutStockStrategyInput = new OutStockStrategyQuery {
carry_id = carryMat.carry_id,
material_id = os.material_id,
warehouse_id = os.warehouse_id,
code_batch = os.code_batch,
};
var outStkCarrys = await _wareHouseService.OutStockStrategy(OutStockStrategyInput);
var carryCodesPart = await _db.Queryable<WmsCarryH>().InnerJoin<WmsCarryCode>((a, b) => a.id == b.carry_id).InnerJoin<BasLocation>((a, b, c) => a.location_id == c.id)
.Where(whereExpr)
.Where((a, b) => outStkCarrys.Select(x=>x.id).Contains(b.carry_id))
.Select<WmsCarryCode>()
.ToListAsync();
if (carryCodesPart?.Count > 0)
{
carryCodes.AddRange(carryCodesPart);