From 7ec0d6926482a21b38c246ad460ca25cc78d6ffc Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期五, 17 四月 2026 12:56:05 +0800
Subject: [PATCH] 1.erp对接 2.电视机对接

---
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |   53 ++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 36 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index e9f10cb..aeb214d 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -1471,6 +1471,11 @@
         waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
         waitPakin.setAnfme(param.getAnfme());  // 鏁伴噺
         waitPakin.setFreqType(param.getFreqType());
+        waitPakin.setContainerNo(param.getContainerNo());
+        waitPakin.setTeu(param.getTeu());
+        waitPakin.setPlateNo(param.getPlateNo());
+        waitPakin.setTrainNo(param.getTrainNo());
+        waitPakin.setCubeNumber(param.getCubeNumber());
         waitPakin.setStatus("Y");    // 鐘舵��
         waitPakin.setAppeUser(9995L);
         waitPakin.setAppeTime(now);
@@ -1499,11 +1504,11 @@
      * 7.11 鍑哄簱閫氱煡鍗曪紙浼犻�掓湁搴忔棤搴忚鍒欙級鍗曟潯寤哄崟銆�
      */
     @Override
-    public R outOrder(OutTaskParam param,int count) {
-        return outOrder(param, count, 1);
+    public R outOrder(OutTaskParam param,int count,int i) {
+        return outOrder(param, count, 0 ,i);
     }
 
-    private R outOrder(OutTaskParam param, int count, int teu) {
+    private R outOrder(OutTaskParam param, int count, int teu , int i) {
         LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_sts", "F").eq("barcode", param.getPalletId()));
         if (locMast == null) {
             throw new CoolException("娌℃湁鎵惧埌鎵樼洏鐮�=" + param.getPalletId() + "瀵瑰簲鐨勫簱浣�");
@@ -1551,6 +1556,11 @@
         wrkMast.setLinkMis("N");
         wrkMast.setPdcType("N");
         wrkMast.setContainerNo(param.getContainerNo());
+        wrkMast.setTeu(teu);
+        wrkMast.setPlateNo(param.getPlateNo());
+        wrkMast.setTrainNo(param.getTrainNo());
+        wrkMast.setFreqType(param.getFreqType());
+        wrkMast.setCubeNumber(param.getCubeNumber());
         // 7.11锛歰rderId 瀛� userNo锛宐atchSeq 瀛樻壒娆℃爣璇嗭紝seq 瀛樻壒娆″唴椤哄簭銆�
         wrkMast.setUserNo(param.getOrderId());//璁㈠崟鍙�
         wrkMast.setBatchSeq(param.getBatchSeq());//璁㈠崟鍐呮壒娆℃爣璇�
@@ -1581,10 +1591,16 @@
             wrkDetl.setModiTime(now);
             wrkDetl.setModiUser(9995L);
             wrkDetl.setTeu(teu);
+            wrkDetl.setContainerNo(param.getContainerNo());
+            wrkDetl.setPlateNo(param.getPlateNo());
+            wrkDetl.setTrainNo(param.getTrainNo());
+            wrkDetl.setFreqType(param.getFreqType());
+            wrkDetl.setCubeNumber(param.getCubeNumber());
             // 7.11锛歟ntryWmsCode銆乷utDoorNo 澶嶇敤鏄庣粏澶囩敤瀛楁銆�
             wrkDetl.setStandby1(param.getEntryWmsCode());
             wrkDetl.setStandby2(param.getOutDoorNo());
-            wrkDetl.setSupp(param.getSeq()+"/"+count);
+            wrkDetl.setSupp(i+"/"+count);
+            wrkDetl.setTeu(param.getTeu());
 
             if (!wrkDetlService.insert(wrkDetl)) {
                 throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
@@ -1611,20 +1627,23 @@
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public R outOrderBatch(List<OutTaskParam> params) {
-        int n = params.size();
-        Map<String, Integer> batchLineCounts = new HashMap<>();
-        Map<String, Integer> batchTeuCounts = buildOutOrderBatchTeuCounts(params);
-        for (OutTaskParam outTaskParam : params) {
-            batchLineCounts.merge(buildOutOrderBatchKey(outTaskParam), 1, Integer::sum);
-        }
-        for (OutTaskParam outTaskParam : params) {
-            int count = batchLineCounts.getOrDefault(buildOutOrderBatchKey(outTaskParam), n);
-            int teu = batchTeuCounts.getOrDefault(outTaskParam.getBatchSeq(), 1);
-            R r = outOrder(outTaskParam, count, teu);
-            if (!Objects.equals(r.get("code"), 200)) {
-                throw new CoolException("鍑哄簱寤哄崟澶辫触");
+    public R outOrderBatch(Map<String, List<OutTaskParam>> linesByBatchSeq) {
+        for (Map.Entry<String, List<OutTaskParam>> entry : linesByBatchSeq.entrySet()) {
+            int i = 0;
+            for (OutTaskParam outTaskParam : entry.getValue()) {
+                if(outTaskParam.getSeq()!=0){
+                    i= outTaskParam.getSeq();
+                }else{
+                    i++;
+                }
+                int count = entry.getValue().size();
+                int teu = outTaskParam.getTeu();
+                R r = outOrder(outTaskParam, count, teu ,i);
+                if (!Objects.equals(r.get("code"), 200)) {
+                    throw new CoolException("鍑哄簱寤哄崟澶辫触");
+                }
             }
+
         }
         return R.ok();
     }

--
Gitblit v1.9.1