From c620f4cbc6f5ed50758ea548855773bfed2dcd39 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期一, 16 三月 2026 16:37:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/devlop-phyz' into devlop-phyz
---
rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java | 26 +++++++++++++++++++++++++-
1 files changed, 25 insertions(+), 1 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java
index f9bf95f..417cae7 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java
@@ -264,6 +264,27 @@
throw new CoolException("浠诲姟鏄庣粏鏇存柊澶辫触");
}
+
+ //鍒ゆ柇浠诲姟鏄庣粏鏄惁鍏ㄩ儴瀹屾垚
+ List<TaskItem> allTaskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>()
+ .eq(TaskItem::getTaskId, task.getId()));
+ if (Cools.isEmpty(allTaskItems)) {
+ throw new CoolException("鏈壘鍒颁换鍔℃槑缁�");
+ }
+ boolean allTaskItemsFinished = allTaskItems.stream().allMatch(item -> {
+ BigDecimal workQty = BigDecimal.valueOf(Objects.isNull(item.getWorkQty()) ? 0D : item.getWorkQty());
+ BigDecimal qty = BigDecimal.valueOf(Objects.isNull(item.getQty()) ? 0D : item.getQty());
+ return workQty.compareTo(qty) == 0;
+ });
+ if (allTaskItemsFinished) {
+ task.setTaskStatus(TaskStsType.COMPLETE_OUT.id)
+ .setUpdateBy(userId)
+ .setUpdateTime(new Date());
+ if (!taskService.updateById(task)) {
+ throw new CoolException("浠诲姟鐘舵�佹洿鏂板け璐�");
+ }
+ }
+
return R.ok();
}
@@ -272,7 +293,10 @@
if (Cools.isEmpty(param.getContainerNo())) {
throw new CoolException("鏃犲鍣ㄥ彿");
}
- Task task = taskService.getOne(new LambdaQueryWrapper<Task>().eq(Task::getBarcode, param.getContainerNo()));
+ Task task = taskService.getOne(new LambdaQueryWrapper<Task>()
+ .eq(Task::getBarcode, param.getContainerNo())
+ .eq(Task::getTaskStatus, TaskStsType.AWAIT.id)
+ );
if (null == task) {
throw new CoolException("鏈壘鍒颁换鍔�");
}
--
Gitblit v1.9.1