diff --git a/src/WMS.Web.Domain/Services/TakeStockService.cs b/src/WMS.Web.Domain/Services/TakeStockService.cs index 16f7f6e9..815b297c 100644 --- a/src/WMS.Web.Domain/Services/TakeStockService.cs +++ b/src/WMS.Web.Domain/Services/TakeStockService.cs @@ -74,12 +74,15 @@ namespace WMS.Web.Domain.Services TakeStock takeStock = new TakeStock(); takeStock.Create(loginInfo.UserInfo.StaffId, TakeStockType.Profit); takeStock.Details = _mapper.Map>(dto); - foreach(var d in takeStock.Details) + foreach (var d in takeStock.Details) { var subStock = await _transactionRepositories.GetSubUcStockAsync(d.SubStockId, loginInfo.UserInfo.CompanyId); d.OrgCode = subStock?.ErpOrgCode; d.StockCode = subStock?.StockCode; } + if (takeStock.Details.GroupBy(g => g.StockCode).Count() > 1) + return Result.ReFailure(ResultCodes.TakeStockStockError); + list.Add(takeStock); } if (lossList.Count() > 0) @@ -93,6 +96,8 @@ namespace WMS.Web.Domain.Services d.OrgCode = subStock?.ErpOrgCode; d.StockCode = subStock?.StockCode; } + if (takeStock.Details.GroupBy(g => g.StockCode).Count() > 1) + return Result.ReFailure(ResultCodes.TakeStockStockError); list.Add(takeStock); } diff --git a/src/WMS.Web.Domain/Values/ResultCodes.cs b/src/WMS.Web.Domain/Values/ResultCodes.cs index 6ddf8e2b..091c7475 100644 --- a/src/WMS.Web.Domain/Values/ResultCodes.cs +++ b/src/WMS.Web.Domain/Values/ResultCodes.cs @@ -67,5 +67,6 @@ namespace WMS.Web.Domain.Values public static ValueTuple InventoryDetailsWriteError = (800014, "写入即时库存明细失败!"); public static ValueTuple SerialNumbersNoData = (610000, "序列号不存在"); + public static ValueTuple TakeStockStockError = (610001, "一次不能盘多个仓库"); } }