From 2c799e6d26c726e3943f24e61c84f7d562087cfc Mon Sep 17 00:00:00 2001
From: lty <876263681@qq.com>
Date: 星期四, 26 六月 2025 10:20:12 +0800
Subject: [PATCH] #增加堆垛机12物料衔接类型

---
 src/main/java/com/zy/common/web/WcsController.java |   55 +++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 51 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java
index fd48d94..2869b5e 100644
--- a/src/main/java/com/zy/common/web/WcsController.java
+++ b/src/main/java/com/zy/common/web/WcsController.java
@@ -155,6 +155,53 @@
         return R.ok(!Cools.isEmpty(wrkMast)? R.ok("鑷姩绌烘墭鍑哄簱鎴愬姛,宸ヤ綔鍙�:" + wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩绌烘墭鍑哄簱澶辫触"));
     }
 
+
+    @PostMapping("/auto/Transplanting/v1")
+    @ResponseBody
+    public R autoTransplanting(@RequestBody TransplantWork transplantWork){
+        // 婧愮珯鐐圭姸鎬佹娴�
+        BasDevp sourceStaNo = basDevpService.checkSiteStatus(transplantWork.getStaNo(), true);
+        if(wrkMastService.selectWrkMast(transplantWork.getWorkNo(),transplantWork.getBarcode()) == null){
+            return  R.error("鏃犺鐩樼偣绉绘牻浠诲姟");
+        }
+        List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNo(transplantWork.getWorkNo());
+        Date now = new Date();
+        int workNo = commonService.getWorkNo(2);
+
+        // 鐢熸垚宸ヤ綔妗�
+        WrkMast wrkMast = new WrkMast();
+        wrkMast.setWrkNo(workNo);
+        wrkMast.setIoTime(now);
+        wrkMast.setWrkSts(11L);
+        wrkMast.setIoPri(14D);
+        wrkMast.setIoType(12);
+        wrkMast.setCrnNo(3);
+        wrkMast.setBarcode(transplantWork.getBarcode());
+        wrkMast.setSourceStaNo(transplantWork.getSourceStaNo());
+        wrkMast.setStaNo(transplantWork.getStaNo());
+        wrkMast.setFullPlt("Y"); // 婊℃澘锛歒
+        wrkMast.setPicking("N"); // 鎷f枡
+        wrkMast.setExitMk("N"); // 閫�鍑�
+        wrkMast.setEmptyMk("N"); // 绌烘澘
+        wrkMast.setLinkMis("Y");
+        // 鎿嶄綔浜哄憳鏁版嵁
+        wrkMast.setAppeTime(now);
+        wrkMast.setModiTime(now);
+        wrkMast.setMemo("鑷姩3鍙峰爢鍨涙満绉绘牻");
+        for (WrkDetl item : wrkDetls) {
+            WrkDetl newDetl = new WrkDetl();
+            newDetl.sync(item); // 鍋囪 sync 鏄繁鎷疯礉灞炴��
+            newDetl.setWrkNo(wrkMast.getWrkNo());
+            newDetl.setIoTime(wrkMast.getIoTime());
+            newDetl.setAppeTime(now);
+            newDetl.setModiTime(now);
+            if (!wrkDetlService.insert(newDetl)) {
+                throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触");
+            }
+        }
+        return wrkMastService.insert(wrkMast) ? R.ok("鑷姩3鍙峰爢鍨涙満绉绘牻鎴愬姛,宸ヤ綔鍙�:"+wrkMast.getWrkNo()) : R.error("鐢熸垚鑷姩3鍙峰爢鍨涙満绉绘牻澶辫触");
+    }
+
     /**
      * 鍏ㄦ澘鍏ュ簱
      */
@@ -163,10 +210,10 @@
         // 婧愮珯鐐圭姸鎬佹娴�
         BasDevp sourceStaNo = basDevpService.checkSiteStatus(devpNo, true);
         // 妫�绱㈠簱浣�
-//        List<String> matnrs = waitPakins.stream().map(WaitPakin::getMatnr).distinct().collect(Collectors.toList());
-//        List<String> batchs = waitPakins.stream().map(WaitPakin::getBatch).distinct().collect(Collectors.toList());
-//        FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(matnrs.get(0), batchs.get(0));
-        FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(waitPakins.get(0));
+        List<String> matnrs = waitPakins.stream().map(WaitPakin::getMatnr).distinct().collect(Collectors.toList());
+        List<String> batchs = waitPakins.stream().map(WaitPakin::getBatch).distinct().collect(Collectors.toList());
+        FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(matnrs.get(0), batchs.get(0));
+//        FindLocNoAttributeVo findLocNoAttributeVo = new FindLocNoAttributeVo(waitPakins.get(0));
         StartupDto dto = commonService.getLocNo( 1, devpNo,findLocNoAttributeVo, locTypeDto);
         int workNo = dto.getWorkNo();
         Date now = new Date();

--
Gitblit v1.9.1