diff --git a/src/WMS.Web.Domain/Services/ChangeMoveBoxService.cs b/src/WMS.Web.Domain/Services/ChangeMoveBoxService.cs index 0ff4055d..46847aa8 100644 --- a/src/WMS.Web.Domain/Services/ChangeMoveBoxService.cs +++ b/src/WMS.Web.Domain/Services/ChangeMoveBoxService.cs @@ -247,13 +247,22 @@ namespace WMS.Web.Domain.Services { _logger.LogInformation($"移箱:{JsonConvert.SerializeObject(dto)} 是否上架:{IsUp} 操作人:{loginInfo.UserInfo.StaffId}"); //1.下架时 需要验证箱是否在库存里 + var boxIds = dto.Select(s => s.BoxId).ToList(); + var boxList = await _boxInventoryRepositories.GetList(boxIds); if (!IsUp) { - var boxIds = dto.Select(s => s.BoxId).ToList(); - var boxList = await _boxInventoryRepositories.GetList(boxIds); if (boxIds.Count() != boxList.Count()) return Result.ReFailure(ResultCodes.BoxInventoryNoDataError); } + else + { + //上架时 箱子不能在库存里 + if (boxList.Count() > 0) + { + var boxs = await _boxRepositories.GetEntityList(boxList.Select(s => s.BoxId).ToList()); + return Result.ReFailure($"箱号{ string.Join(",", boxs.Select(s => s.BoxBillNo))} 已上架", 343433); + } + } List entityList = new List(); foreach (var d in dto) { diff --git a/src/WMS.Web.Domain/Values/ResultCodes.cs b/src/WMS.Web.Domain/Values/ResultCodes.cs index b69f95ab..b614171e 100644 --- a/src/WMS.Web.Domain/Values/ResultCodes.cs +++ b/src/WMS.Web.Domain/Values/ResultCodes.cs @@ -66,6 +66,7 @@ namespace WMS.Web.Domain.Values public static ValueTuple BoxInventoryHaveInventoryError = (800013, "箱号已上架入库"); public static ValueTuple InventoryInOutDetailsWriteError = (800014, "写入物料收发明细失败!"); public static ValueTuple InventoryDetailsWriteError = (800014, "写入即时库存明细失败!"); + public static ValueTuple MoveInventoryError = (800015, "箱已经上架,不能重复上架"); public static ValueTuple SerialNumbersNoData = (610000, "序列号不存在"); public static ValueTuple SerialNumbersBoxError = (610002, "序列号已经绑定箱");