From 37454e625df68d40897112b2e8c2e3cf4d7163e3 Mon Sep 17 00:00:00 2001
From: heshaofeng <heshaofeng@hnkhzn.com>
Date: 星期三, 25 三月 2026 11:43:10 +0800
Subject: [PATCH] 1
---
项目代码/WMS无仓储版/WIDESEA_WMSServer/WIDESEA_OutboundService/OutboundService.cs | 26 +++++++++++++++++++++-----
1 files changed, 21 insertions(+), 5 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 81372d7..559ce38 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"
@@ -330,7 +330,19 @@
foreach (var detail in materielCalc.Details)
{
if (remainingToLock <= 0) break;
- decimal maxLockableQty = detail.OrderQuantity - detail.OverOutQuantity-detail.LockQuantity;
+ decimal maxLockableQty = 0;
+ if (detail.LockQuantity > detail.OverOutQuantity && detail.OverOutQuantity > 0)
+ {
+ maxLockableQty = detail.OrderQuantity - detail.LockQuantity;
+ }
+ else if(detail.OverOutQuantity > 0)
+ {
+ maxLockableQty = detail.OrderQuantity - detail.OverOutQuantity;
+ }
+ else
+ {
+ maxLockableQty = detail.OrderQuantity - detail.OverOutQuantity - detail.LockQuantity;
+ }
if (maxLockableQty <= 0) continue;
decimal currentLockQty = Math.Min(remainingToLock, maxLockableQty);
detail.LockQuantity += currentLockQty;
@@ -2495,6 +2507,10 @@
return WebResponseContent.Instance.Error($"鏉$爜{request.Barcode}宸叉棤娉曟挙閿�");
}
}
+ else
+ {
+ return WebResponseContent.Instance.Error($"鏉$爜{request.Barcode}宸叉棤娉曟挙閿�");
+ }
Dt_OutStockLockInfo lockInfo = _outboundLockInfoRepository.QueryFirst(x =>
x.OrderNo == request.OrderNo &&
@@ -2502,13 +2518,13 @@
x.MaterielCode == historyDetail.MaterielCode &&
x.PalletCode == stockInfo.PalletCode);
+ if (lockInfo == null)
+ {
+ return WebResponseContent.Instance.Error("璇ユ墭鐩樺凡鍏ㄩ儴鎷i�夊畬,涓嶅厑璁告挙閿�");
+ }
_unitOfWorkManage.BeginTran();
try
{
- if(lockInfo == null)
- {
- return WebResponseContent.Instance.Error("璇ユ墭鐩樺凡鍏ㄩ儴鎷i�夊畬,涓嶅厑璁告挙閿�");
- }
bool isUnpack = historyDetail.OperateType == "鎷嗗寘-鍘熷璁板綍";
if (isUnpack)
{
--
Gitblit v1.9.3