From d5b94751e73d3e24ca426e4691efd1a52332e7fc Mon Sep 17 00:00:00 2001 From: "CANCERYS\\kw093" Date: Fri, 1 May 2026 16:56:39 +0800 Subject: [PATCH] update scan pick reject list --- .../deliveryOrder/service/DoWorkbenchMainService.kt | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/ffii/fpsms/modules/deliveryOrder/service/DoWorkbenchMainService.kt b/src/main/java/com/ffii/fpsms/modules/deliveryOrder/service/DoWorkbenchMainService.kt index a046520..f03bae9 100644 --- a/src/main/java/com/ffii/fpsms/modules/deliveryOrder/service/DoWorkbenchMainService.kt +++ b/src/main/java/com/ffii/fpsms/modules/deliveryOrder/service/DoWorkbenchMainService.kt @@ -608,12 +608,15 @@ sol.id?.let { suggestedPickLotWorkbenchService.linkSplToStockOutLineAfterWorkben val saveSolMs = lapMs() val pickOrderId = pol.pickOrder?.id - +val poType = pol.pickOrder?.type var rebuildMs = 0L var ensureMs = 0L var polPartialMs = 0L var postMs = 0L - +val effectiveExcludeWarehouseCodes = when (poType) { + PickOrderType.JOB_ORDER -> request.excludeWarehouseCodes ?: emptyList() + else -> request.excludeWarehouseCodes // null → DO 走 default;有傳則整份取代 default +} if (pickOrderId != null) { if (hasExplicitQty) { rebuildMs = measureTimeMillis { @@ -623,13 +626,13 @@ if (pickOrderId != null) { targetQty = explicitRemainder, storeId = request.storeId, excludeInventoryLotLineId = scannedIll.id, - excludeWarehouseCodes = request.excludeWarehouseCodes, + excludeWarehouseCodes = effectiveExcludeWarehouseCodes, ) } else { suggestedPickLotWorkbenchService.setNoHoldSuggestionsForPickOrderLineExactQty( pickOrderLineId = polId, targetQty = BigDecimal.ZERO, - excludeWarehouseCodes = request.excludeWarehouseCodes, + excludeWarehouseCodes = effectiveExcludeWarehouseCodes, ) } } @@ -656,7 +659,7 @@ if (pickOrderId != null) { suggestedPickLotWorkbenchService.rebuildNoHoldSuggestionsForPickOrderLine( pickOrderLineId = polId, storeId = request.storeId, - excludeWarehouseCodes = request.excludeWarehouseCodes, + excludeWarehouseCodes = effectiveExcludeWarehouseCodes, ) } ensureMs = measureTimeMillis {