From 55410a40f4cafd17f4c8c6a9f2af8ef5dc8b1e40 Mon Sep 17 00:00:00 2001
From: z8018 <1282578289@qq.com>
Date: 星期一, 15 十二月 2025 09:48:33 +0800
Subject: [PATCH] 1
---
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)
diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
index 72b1b1c..d569246 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS\346\227\240\344\273\223\345\202\250\347\211\210/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs"
@@ -353,9 +353,11 @@
decimal availableQuantity = availableStockMap.GetValueOrDefault(stock.Id, 0);
if (availableQuantity <= 0) continue;
+ // 璁$畻璇ユ墭鐩樺彲鍒嗛厤鏁伴噺
decimal allocateQuantity = Math.Min(remainingQuantity, availableQuantity);
(decimal ActualAllocatedQuantity, List<Dt_OutStockLockInfo> LockInfoList) actualAllocated = AllocateStockQuantity(stock, allocateQuantity, availableQuantity, outboundOrder, firstDetail, request, lockStockMap.GetValueOrDefault(stock.Id, new List<Dt_OutStockLockInfo>()), stockDetailMap);
+ // 鏈鍒嗛厤鐨勬暟閲�
decimal actualAllocatedQuantity = actualAllocated.ActualAllocatedQuantity;
if (actualAllocatedQuantity > 0)
@@ -502,7 +504,7 @@
// 璁$畻鎬诲簱瀛樻暟閲�
decimal totalQuantity = stockInfo.Details.Sum(x => x.StockQuantity);
- List<Dt_OutStockLockInfo> outStockLockInfos = allocatedData.Where(x => x.StockId == stockInfo.Id).ToList();
+ List<Dt_OutStockLockInfo> outStockLockInfos = allocatedData.Where(x => x.StockId == stockInfo.Id && x.MaterielCode == materielCalc.MaterielCode).ToList();
// 璁$畻宸插垎閰嶆暟閲�
decimal allocatedQuantity = outStockLockInfos.Sum(x => x.AllocatedQuantity);
@@ -510,7 +512,6 @@
lockStockMap[stockInfo.Id] = outStockLockInfos;
}
-
return (availableStockMap, lockStockMap);
}
@@ -560,7 +561,7 @@
// 鏇存柊鍒嗛厤鍑哄簱閲�
decimal beforeAssignQuantity = totalAllocatedQuantity; // 鏈鍒嗛厤鍓嶇殑鎬荤疮璁¢噺
- lockInfo.AssignQuantity += actualAllocatedQuantity; // 绱姞鏈鍒嗛厤鏁伴噺
+ lockInfo.AssignQuantity += actualAllocatedQuantity; // 鏈鍒嗛厤鏁伴噺
lockInfo.AllocatedQuantity = beforeAssignQuantity; // 璁板綍鏈鍒嗛厤鍓嶇殑鎬荤疮璁¢噺
lockInfoList.Add(lockInfo);
@@ -874,7 +875,7 @@
_detailService.Repository.UpdateData(updateDetails);
// 鏇存柊閿佸畾璁板綍鐨勭疮璁″凡鍑哄簱鏁伴噺锛堥渶瑕佹洿鏂拌鎵樼洏璇ョ墿鏂欑殑鎵�鏈夌浉鍏宠褰曪級
- UpdateLockInfoAllocatedQuantity(stockInfo.Id, stockDetail.MaterielCode, stockDetail.BatchNo, actualOutboundQuantity);
+ //UpdateLockInfoAllocatedQuantity(stockInfo.Id, stockDetail.MaterielCode, stockDetail.BatchNo, actualOutboundQuantity);
// 鎻愪氦浜嬪姟
_unitOfWorkManage.CommitTran();
@@ -904,6 +905,8 @@
if (CheckOutboundOrderCompleted(request.OrderNo))
{
UpdateOutboundOrderStatus(request.OrderNo, OutOrderStatusEnum.鍑哄簱瀹屾垚.ObjToInt());
+
+ //todo: 鍥炰紶MES
}
}
catch (Exception ex)
@@ -1008,6 +1011,7 @@
{
// 鏇存柊鍘熷簱瀛樻槑缁�
stockDetail.StockQuantity = remainingQuantity;
+ //stockDetail.Barcode = newBarcode;
stockDetail.Remark = $"鎷嗗寘鍚庢洿鏂帮紝鍘熸潯鐮侊細{request.Barcode}锛屾柊鏁伴噺锛歿remainingQuantity}锛屾搷浣滆�咃細{request.Operator}";
_stockDetailService.Repository.UpdateData(stockDetail);
}
--
Gitblit v1.9.3