diff --git a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs index c1da4ced..3abd5f45 100644 --- a/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs +++ b/WarehouseMgr/Tnb.WarehouseMgr/WmsOutStockService.cs @@ -102,7 +102,7 @@ namespace Tnb.WarehouseMgr .And((a, b, c) => !string.IsNullOrEmpty(a.location_id)) .And((a, b, c) => a.status == (int)EnumCarryStatus.占用) .And((a, b, c) => c.is_type == ((int)EnumLocationType.存储库位).ToString()) - .And((a, b, c) => a.out_status=="0") + .And((a, b, c) => a.out_status == "0") .And((a, b, c) => c.wh_id == input.data[nameof(WmsOutstockH.warehouse_id)].ToString()) .AndIF(!string.IsNullOrEmpty(os.code_batch), (a, b, c) => b.code_batch == os.code_batch) .ToExpression(); @@ -255,11 +255,13 @@ namespace Tnb.WarehouseMgr pretaskCodes.AddRange(curPreTaskCodes); } var isOk = await _wareHouseService.GenPreTask(preTasks, pretaskCodes); - - GenPreTaskUpInput genPreTaskAfterUpInput = new(); - genPreTaskAfterUpInput.CarryIds = preTasks.Select(x => x.carry_id).ToList(); - genPreTaskAfterUpInput.LocationIds = new HashSet(locIds).ToList(); - await _wareHouseService.GenInStockTaskHandleAfter(genPreTaskAfterUpInput, it => new WmsCarryH { is_lock = 1 }, it => new BasLocation { is_lock = 1 }); + if (isOk) + { + GenPreTaskUpInput genPreTaskAfterUpInput = new(); + genPreTaskAfterUpInput.CarryIds = preTasks.Select(x => x.carry_id).ToList(); + genPreTaskAfterUpInput.LocationIds = new HashSet(locIds).ToList(); + await _wareHouseService.GenInStockTaskHandleAfter(genPreTaskAfterUpInput, it => new WmsCarryH { is_lock = 1 }, it => new BasLocation { is_lock = 1 }); + } } else throw new AppFriendlyException("库存不足", 500); }