diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 6befc36a..70f5ba8d 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -2593,6 +2593,11 @@ 任务来源单的ID + + + 所选物料 + + 入库单详情 diff --git a/src/WMS.Web.Core/Dto/InStock/BoxInStockTaskRequest.cs b/src/WMS.Web.Core/Dto/InStock/BoxInStockTaskRequest.cs index 414146c1..2d1c6dad 100644 --- a/src/WMS.Web.Core/Dto/InStock/BoxInStockTaskRequest.cs +++ b/src/WMS.Web.Core/Dto/InStock/BoxInStockTaskRequest.cs @@ -23,5 +23,10 @@ namespace WMS.Web.Core.Dto.InStock /// 任务来源单的ID /// public int? TaskId { get; set; } + + /// + /// 所选物料 + /// + public string MaterialNumber { get; set; } } } diff --git a/src/WMS.Web.Domain/Services/InStockService.cs b/src/WMS.Web.Domain/Services/InStockService.cs index 2639ed7f..225729e1 100644 --- a/src/WMS.Web.Domain/Services/InStockService.cs +++ b/src/WMS.Web.Domain/Services/InStockService.cs @@ -188,6 +188,11 @@ namespace WMS.Web.Domain.Services if (box == null) return Result.ReFailure(ResultCodes.BoxNoData); + //判断箱不存在所选的物料 + var isAnyHave = box.Details.Any(x => x.MaterialNumber == dto.MaterialNumber); + if (!isAnyHave) + return Result.ReFailure(box.BoxBillNo + ResultCodes.BoxNoMaterialError.Item2, ResultCodes.BoxNoMaterialError.Item1); + //1.获取物料集合 var materials_result = await _erpService.BillQueryForMaterial(); var materials = new List();