From 987f22ecac693908e6cc32de6eafef09e2c836b6 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期四, 24 七月 2025 17:00:20 +0800
Subject: [PATCH] #增加只扫描托盘码的方式

---
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java |   32 ++++++++++++++++++++++++++++++++
 1 files changed, 32 insertions(+), 0 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java
index 1bfc472..8c13859 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaCheckOrderServiceImpl.java
@@ -214,4 +214,36 @@
                 ;
         return R.ok(checkDiffItem);
     }
+
+    @Override
+    public R getCheckTaskItemList2(String barcode) {
+        LambdaQueryWrapper<Task> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(Task::getBarcode, barcode);
+        Task task = taskService.getOne(lambdaQueryWrapper);
+        if (null == task) {
+            throw new CoolException("鏈壘鍒板鍣ㄥ彿瀵瑰簲浠诲姟");
+        }
+        if (!task.getTaskStatus().equals(TaskStsType.AWAIT.id)) {
+            return R.error("浠诲姟鐘舵�佷笉鏄瓑寰呯‘璁�");
+        }
+        List<TaskItem> taskItems = taskItemService.list(new LambdaQueryWrapper<TaskItem>().eq(TaskItem::getTaskId, task.getId()));
+        if (Cools.isEmpty(taskItems)){
+            throw new CoolException("鏈壘鍒拌瀹瑰櫒鐮佸搴旂殑浠诲姟鏄庣粏");
+        }
+        String sourceCode = taskItems.stream().findFirst().map(TaskItem::getSourceCode).orElse(null);
+        CheckDiff checkDiff = checkDiffService.getOne(new LambdaQueryWrapper<CheckDiff>().eq(CheckDiff::getOrderCode,sourceCode));
+        if (null == checkDiff) {
+            return R.error("鏈壘鍒扮洏鐐瑰樊寮傚崟");
+        }
+        List<CheckDiffItem> checkDiffItems = checkDiffItemService.list(new LambdaQueryWrapper<CheckDiffItem>()
+                .eq(CheckDiffItem::getBarcode, barcode)
+                .eq(CheckDiffItem::getExceStatus, CheckDiffExceStatus.CHECK_DIFF_EXCE_STATUS_INIT.val)
+                .eq(CheckDiffItem::getOrderCode, sourceCode)
+        );
+        if (checkDiffItems.isEmpty()) {
+            throw new CoolException("姝ゆ潯鐮佷笉鍦ㄥ綋鍓嶇洏鐐瑰崟涓�");
+        }
+
+        return R.ok(Cools.add("checkDiffItems",checkDiffItems).add("checkDiff",checkDiff));
+    }
 }

--
Gitblit v1.9.1