From 00a6376e31fea643df9394a90aaf71b8369fd01f Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期日, 15 六月 2025 16:37:09 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/MobileController.java |   68 +++++++++++++++++++---------------
 1 files changed, 38 insertions(+), 30 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MobileController.java b/src/main/java/com/zy/asrs/controller/MobileController.java
index 2af50aa..a92533c 100644
--- a/src/main/java/com/zy/asrs/controller/MobileController.java
+++ b/src/main/java/com/zy/asrs/controller/MobileController.java
@@ -61,6 +61,8 @@
     private ManLocDetlMapper manLocDetlMapper;
     @Autowired
     private WrkDetlLogService wrkDetlLogService;
+    @Autowired
+    private WrkMastLogService wrkMastLogService;
 
     @Autowired
     private MatService matService;
@@ -289,39 +291,45 @@
 
     @RequestMapping(value = "/mat/back")
     @ManagerAuth
-    public R pdaSearchBack(@RequestParam String matnr) {
-        EntityWrapper<NccXsckmxTkWms> wrapper = new EntityWrapper<>();
-        wrapper.like("VBATCHCODE", matnr);
-        List<NccXsckmxTkWms> nccXsckmxTkWmsList = nccXsckmxTkWmsService.selectList(wrapper);
-        if (nccXsckmxTkWmsList.isEmpty()) {
-            return R.error("鏈壘鍒版鏉$爜");
+    public R pdaSearchBack(@RequestParam String barcode) {
+        WrkMastLog wrkMastLog = wrkMastLogService.selectOne(new EntityWrapper<WrkMastLog>()
+                .eq("barcode", barcode)
+                .in("io_type", 101, 103, 107)
+                .orderBy("appe_time", false)
+        );
+
+        if(null == wrkMastLog) {
+            return R.error("鏈壘鍒版鎵樼洏鐮佸嚭搴撹褰�");
         }
 
-        List<String> orderNos = new ArrayList<>();
-        List<HashMap<String, Object>> list = new ArrayList<>();
-        for (NccXsckmxTkWms nccXsckmxTkWms : nccXsckmxTkWmsList) {
-            if (orderNos.contains(nccXsckmxTkWms.getVsourcebillcode())) {
-                continue;
-            }
-            orderNos.add(nccXsckmxTkWms.getVsourcebillcode());
-            HashMap<String, Object> map = new HashMap<>();
-
-            Mat mat = matService.selectByMatnr(nccXsckmxTkWms.getWlbm());
-            if (mat == null) {
-                continue;
-            }
-            MatParam matParam = new MatParam();
-            Synchro.Copy(mat, matParam);
-            matParam.setBatch(nccXsckmxTkWms.getVbatchcode());
-            matParam.setAnfme(0.0D);
-            matParam.setAnfme2(0.0D);
-            matParam.setTiaoma(matnr);
-
-            map.put("orderNo", nccXsckmxTkWms.getVsourcebillcode());
-            map.put("matData", matParam);
-            list.add(map);
+        List<WrkDetlLog> wrkDetlLogs = wrkDetlLogService.selectList(new EntityWrapper<WrkDetlLog>()
+                .eq("wrk_no", wrkMastLog.getWrkNo())
+                .eq("zpallet", barcode)
+                .orderBy("io_time", false)
+        );
+        if (wrkDetlLogs.isEmpty()) {
+            return R.error("鏈壘鍒版鎵樼洏鐮佸嚭搴撹褰曟槑缁�");
         }
-        return R.ok().add(list);
+
+        WrkDetlLog wrkDetlLog = wrkDetlLogs.get(0);
+        String batch = wrkDetlLog.getBatch();
+
+        HashMap<String, Object> map = new HashMap<>();
+        Mat mat = matService.selectByMatnr(wrkDetlLog.getMatnr());
+        if (mat == null) {
+            return R.error("鏈壘鍒扮墿鏂欐槑缁�");
+        }
+        MatParam matParam = new MatParam();
+        Synchro.Copy(mat, matParam);
+        matParam.setBatch(batch);
+        matParam.setAnfme(0.0D);
+        matParam.setAnfme2(0.0D);
+        matParam.setTiaoma(batch);
+
+        String[] split = wrkDetlLog.getOrderNo().split("-");
+        map.put("orderNo", split[0]);
+        map.put("matData", matParam);
+        return R.ok().add(map);
     }
 
     @RequestMapping("/comb/auth")

--
Gitblit v1.9.1