From 4ad1f324ab1fd2b51504afc00b43b4ee40f029c2 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期四, 20 二月 2025 09:40:03 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |  209 +++++++++++++++++++++++----------------------------
 1 files changed, 95 insertions(+), 114 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 40387db..6f8e37e 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -80,6 +80,8 @@
     private StaDescService staDescService;
     @Autowired
     private LocMastService locMastService;
+    @Autowired
+    private RgvOneSignService rgvOneSignService;
 
     @Override
     @Transactional
@@ -694,7 +696,7 @@
      * */
     @Override
     @Transactional
-    public void palletizingComplete(PalletizingCompleteParam2 param) {
+    public void PalletizingCompleteTwoFloorParam(PalletizingCompleteTwoFloorParam param) {
         Long userId = 7777L;//涓帶
         //鍒ゆ柇param鍙傛暟
         if (Cools.isEmpty(param.getBarcode())){
@@ -703,36 +705,60 @@
             throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo涓虹┖");
         }else if (Cools.isEmpty(param.getBoxType())){
             throw new CoolException("鍙傛暟锛氭湪绠辩被鍨� boxType涓虹┖");
-        }else if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()==0){
+        }else if (Cools.isEmpty(param.getMatList()) || param.getMatList().size()==0){
             throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖");
         }
 
-        ArrayList<String> positions = new ArrayList<>();   //鏈ㄧ浣嶇疆鏌ラ噸      (orgin)
+        String matnrOne = "";//鏈ㄧ鐩稿悓浣嶇疆 瑙勬牸 matnr鏍¢獙  1銆佸乏
+        String matnrTwo = "";//鏈ㄧ鐩稿悓浣嶇疆 瑙勬牸 matnr鏍¢獙  2銆佸彸
         ArrayList<String> boxNos = new ArrayList<>();   //鏈ㄧ鍞竴缂栫爜鏌ラ噸  锛坆atch锛�
         //鍒ゆ柇matLists鍙傛暟
-        for (PalletizingCompleteParam2.MatList matList:param.getMatLists()){
+        for (PalletizingCompleteTwoFloorParam.MatList matList:param.getMatList()){
             if (Cools.isEmpty(matList.getMatnr())){
-                throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖");
+                throw new CoolException("鍙傛暟锛氳鏍� matnr涓虹┖");
             }else if (Cools.isEmpty(matList.getPosition())){
-                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鐮佸灈浣嶇疆 position涓虹┖");
-            }else if (Cools.isEmpty(matList.getBoxNo())){
-                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ缂栧彿 boxNo涓虹┖");
-            }else if (Cools.isEmpty(matList.getAnfme()) || matList.getAnfme().equals(0)){
-                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ涓摐绠旀暟閲� anfme涓虹┖");
+                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細鐮佸灈浣嶇疆 position涓虹┖");
+            }else if (Cools.isEmpty(matList.getBatch())){
+                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ缂栧彿 batch涓虹┖");
+            }else if (Cools.isEmpty(matList.getModel())){
+                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細鍗峰彿 model涓虹┖");
+            }else if (Cools.isEmpty(matList.getBatch())){
+                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細鏈ㄧ缂栧彿 boxNo涓虹┖");
             }else if (Cools.isEmpty(matList.getWeight()) || matList.getWeight().equals(0D)){
-                throw new CoolException("鐗╂枡缂栫爜锛�"+matList.getMatnr()+"銆佸弬鏁帮細閲嶉噺 weight涓虹┖");
+                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細鍑�閲� weight涓虹┖");
+            }else if (Cools.isEmpty(matList.getRoughWeight()) || matList.getRoughWeight().equals(0D)){
+                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細姣涢噸 roughWeight涓虹┖");
+            }else if (Cools.isEmpty(matList.getRollExtent()) || matList.getRollExtent().equals(0D)){
+                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細鍗烽暱搴� rollExtent涓虹┖");
+            }
+//            else if (Cools.isEmpty(matList.getJoint()) || matList.getJoint()==0){
+//                throw new CoolException("瑙勬牸锛�"+matList.getMatnr()+"銆佸弬鏁帮細鎺ュご鏁� joint");
+//            }
+
+            if (matList.getPosition().equals("1")){//1銆佸乏  2銆佸彸
+                if (!matnrOne.equals("")){
+                    if (!matnrOne.equals(matList.getMatnr())){
+                        throw new CoolException("鏈ㄧ浣嶇疆锛�"+matList.getPosition()+"瀛樺湪涓嶅悓瑙勬牸鍗蜂俊鎭�");
+                    }
+                }else {
+                    matnrOne=matList.getMatnr();
+                }
+            }else if (matList.getPosition().equals("2")){
+                if (!matnrTwo.equals("")){
+                    if (!matnrTwo.equals(matList.getMatnr())){
+                        throw new CoolException("鏈ㄧ浣嶇疆锛�"+matList.getPosition()+"瀛樺湪涓嶅悓瑙勬牸鍗蜂俊鎭�");
+                    }
+                }else {
+                    matnrTwo=matList.getMatnr();
+                }
+            }else {
+                throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBatch()+",鏈ㄧ浣嶇疆閿欒锛�"+matList.getPosition());
             }
 
-            if (!positions.contains(matList.getPosition())){
-                positions.add(matList.getPosition());
+            if (!boxNos.contains(matList.getBatch())){
+                boxNos.add(matList.getBatch());
             }else {
-                throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ浣嶇疆瀛樺湪閲嶅锛�"+matList.getPosition());
-            }
-
-            if (!boxNos.contains(matList.getBoxNo())){
-                boxNos.add(matList.getBoxNo());
-            }else {
-                throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ缂栫爜瀛樺湪閲嶅");
+                throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBatch()+",鏈ㄧ缂栫爜瀛樺湪閲嶅");
             }
         }
 
@@ -759,40 +785,48 @@
 
 
         Date now = new Date();
-        for (PalletizingCompleteParam2.MatList matList:param.getMatLists()){
-            long rollUp = new Date().getTime();
+        for (PalletizingCompleteTwoFloorParam.MatList matList:param.getMatList()){
             Mat mat = matService.selectByMatnr(matList.getMatnr());
             if (Cools.isEmpty(mat)) {
-                throw new CoolException(matList.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
+                mat = new Mat();
+                mat.setMatnr(matList.getMatnr());
+                mat.setMaktx(matList.getMatnr());
+                mat.setTagId(tagService.getTop().getId());
+                mat.setCreateBy(userId);
+                mat.setCreateTime(now);
+                mat.setUpdateBy(userId);
+                mat.setUpdateTime(now);
+                mat.setStatus(1);
+                if (!matService.insert(mat)) {
+                    throw new CoolException("瑙勬牸娣诲姞澶辫触锛岃鑱旂郴绠$悊鍛�");
+                }
             }
             WaitPakin waitPakin = new WaitPakin();
             waitPakin.sync(mat);
-            waitPakin.setModel(matList.getBatch());     //鎵规
-            waitPakin.setSpecs(matList.getSpecs());     //瑙勬牸
-            waitPakin.setBatch(matList.getBoxNo());       //鏈ㄧ缂栫爜
+            waitPakin.setBatch(matList.getBatch());       //鏈ㄧ缂栫爜  //鎵规  鍞竴鍊�  绠卞彿
+            waitPakin.setModel(matList.getModel());       //鍗峰彿  鍞竴鍊�
             waitPakin.setBrand(param.getBoxType());     //鏈ㄧ绫诲瀷
             waitPakin.setZpallet(param.getBarcode());   //鎵樼洏鐮�
             waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃�
+            waitPakin.setWeight(matList.getWeight());  //鍑�閲�
+            waitPakin.setVolume(matList.getRoughWeight());  //姣涢噸
+            waitPakin.setPrice(matList.getRollExtent());   //闀垮害
+            waitPakin.setSpecs(String.valueOf(matList.getJoint()));   //鎺ュご
             waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
-            waitPakin.setAnfme(matList.getAnfme().doubleValue());  // 鏈ㄧ涓摐绠旀暟閲�
+            waitPakin.setAnfme(matList.getAnfme());  // 鏁伴噺
             waitPakin.setStatus("Y");    // 鐘舵��
             waitPakin.setAppeUser(userId);
             waitPakin.setAppeTime(now);
             waitPakin.setModiUser(userId);
             waitPakin.setModiTime(now);
-            waitPakin.setRollUp(rollUp);
-            if (!Cools.isEmpty(matList.getMatDetlList())){
-                for (PalletizingCompleteParam2.MatDetlList matDetlList:matList.getMatDetlList()){
-                    LocDetlRullUpDetail locDetlRullUpDetail = new LocDetlRullUpDetail();
-                    locDetlRullUpDetail.setUuid(rollUp);
-                    locDetlRullUpDetail.setRollNo(matDetlList.getBoxNoDetl());
-                    locDetlRullUpDetail.setRollWeight(matDetlList.getWeightDetl().toString());
-                    locDetlRullUpDetailService.insert(locDetlRullUpDetail);
-                }
-            }
             if (!waitPakinService.insert(waitPakin)) {
                 throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
             }
+
+            RgvOneSign armNo = rgvOneSignService.selectOne(new EntityWrapper<RgvOneSign>().eq("rgv_one_type","armNo"+param.getPalletizingNo()));
+            armNo.setRgvOneSign(1);
+            rgvOneSignService.updateById(armNo);
+
         }
 
     }
@@ -849,6 +883,17 @@
             throw new CoolException("鍙傛暟锛氱墿鏂欐槑缁� matLists涓虹┖");
         }
 
+        if (Cools.isEmpty(param.getBarcode())){
+            throw new CoolException("鍙傛暟锛氭墭鐩樼爜 barcode涓虹┖");
+        }
+        WrkMast wrkMastMatrix = wrkMastService.selectByBarcode(param.getBarcode());
+        if (Cools.isEmpty(wrkMastMatrix)){
+            throw new CoolException("鍙傛暟锛氭墭鐩樼爜鏌ヨ宸ヤ綔妗eけ璐ワ細"+param.getBarcode());
+        }
+        if (!wrkMastMatrix.getSheetNo().equals("1")){
+            throw new CoolException("鍙傛暟锛氭浠诲姟鏈笂鎶ョ姝㈠畬鎴愶細"+param.getBarcode());
+        }
+
         ArrayList<WrkDetl> wrkDetlsNew = new ArrayList<>();
         ArrayList<WrkDetlSingle> wrkDetlsOld = new ArrayList<>();
         //鍒ゆ柇matLists鍙傛暟
@@ -858,17 +903,17 @@
             }else if (Cools.isEmpty(matList.getBoxNo())){
                 throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo涓虹┖");
             }
-            List<WrkDetlSingle> wrkDetlSingles = wrkDetlSingleService.selectList(new EntityWrapper<WrkDetlSingle>().eq("batch", matList.getBoxNo()));
+            WrkDetlSingle wrkDetlSingleOne = wrkDetlSingleService.selectOne(new EntityWrapper<WrkDetlSingle>().eq("batch", matList.getBoxNo()));
+            List<WrkDetlSingle> wrkDetlSingles = wrkDetlSingleService.selectList(new EntityWrapper<WrkDetlSingle>()
+                    .eq("wrk_no", wrkDetlSingleOne.getWrkNo()).eq("io_time", wrkDetlSingleOne.getIoTime()));
             boolean sign=true;
             for (WrkDetlSingle wrkDetlSingle:wrkDetlSingles){
-                if (wrkDetlSingle.getBatch().equals(matList.getBoxNo())){//鏈ㄧ缂栫爜
-                    WrkDetl wrkDetl = new WrkDetl();
-                    wrkDetl.sync(wrkDetlSingle);
-                    wrkDetlsNew.add(wrkDetl);
-                    wrkDetlsOld.add(wrkDetlSingle);
-                    sign=false;
-                    break;
-                }
+                WrkDetl wrkDetl = new WrkDetl();
+                wrkDetl.sync(wrkDetlSingle);
+                wrkDetlsNew.add(wrkDetl);
+                wrkDetlsOld.add(wrkDetlSingle);
+                sign=false;
+                break;
             }
             if (sign){
                 throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo鏈煡璇㈠埌瀵瑰簲鐨勫伐浣滄槑缁嗭紒");
@@ -922,69 +967,23 @@
     @Override
     @Transactional
     public void singleMountUnstackingComplete(SingleMountUnstackingCompleteParam param) {
-        Long userId = 8888L;//妗佹灦涓婁綅杞欢
+//        Long userId = 8888L;//妗佹灦涓婁綅杞欢
         //鍒ゆ柇param鍙傛暟
         if (Cools.isEmpty(param.getBarcode())){
             throw new CoolException("鍙傛暟锛氭墭鐩樼爜 barcode涓虹┖");
         }
-//        else if (Cools.isEmpty(param.getPalletizingNo())){
-//            throw new CoolException("鍙傛暟锛氱爜鍨涗綅缂栧彿 palletizingNo涓虹┖");
-//        }
         WrkMast wrkMastMatrix = wrkMastService.selectByBarcode(param.getBarcode());
         if (Cools.isEmpty(wrkMastMatrix)){
             throw new CoolException("鍙傛暟锛氭墭鐩樼爜鏌ヨ宸ヤ綔妗eけ璐ワ細"+param.getBarcode());
-        }else {
-//            if (wrkMastMatrix.getIoType().equals(103)){
-//                List<WrkDetl> wrkDetls = wrkDetlService.selectByWrkNoUnstacking(wrkMastMatrix.getWrkNo());
-//                if (Cools.isEmpty(param.getMatLists()) || param.getMatLists().size()==0 || param.getMatLists().size()!=wrkDetls.size()){
-//                    throw new CoolException("杩斿洖鐗╂枡鏄庣粏鏁颁负"+param.getMatLists().size()+",鎵樼洏鐮侊細"+param.getBarcode()+"搴斿墿浣欑墿鏂欐暟锛�"+wrkDetls.size());
-//                }
-//
-//                ArrayList<String> orgin = new ArrayList<>();
-//                //鍒ゆ柇matLists鍙傛暟
-//                for (SingleMountUnstackingCompleteParam.MatList matList : param.getMatLists()){
-//                    if (Cools.isEmpty(matList.getPosition())){
-//                        throw new CoolException("鍙傛暟锛氱爜鍨涗綅缃� position涓虹┖");
-//                    }else if (Cools.isEmpty(matList.getBoxNo())){
-//                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo涓虹┖");
-//                    }
-//                    if (!orgin.contains(matList.getPosition())){
-//                        orgin.add(matList.getPosition());
-//                    }else {
-//                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+",鏈ㄧ浣嶇疆瀛樺湪閲嶅");
-//                    }
-//                    boolean sign=true;
-//                    for (WrkDetl wrkDetl:wrkDetls){
-//                        if (wrkDetl.getBatch().equals(matList.getBoxNo())){//鏈ㄧ缂栫爜
-//                            wrkDetl.setOrigin(matList.getPosition());
-//                            wrkDetlService.update(wrkDetl,new EntityWrapper<WrkDetl>().eq("batch",wrkDetl.getBatch()));
-//                            sign=false;
-//                            break;
-//                        }
-//                    }
-//                    if (sign){
-//                        throw new CoolException("鍙傛暟锛氭湪绠辩紪鍙� boxNo:"+matList.getBoxNo()+"鏈煡璇㈠埌瀵瑰簲鐨勫伐浣滄槑缁嗭紒");
-//                    }
-//                }
-//            }
+        }
+        if (!wrkMastMatrix.getSheetNo().equals("1")){
+            throw new CoolException("鍙傛暟锛氭浠诲姟鏈笂鎶ョ姝㈠畬鎴愶細"+param.getBarcode());
         }
 
         wrkMastMatrix.setSheetNo("2");
         if (!wrkMastService.updateById(wrkMastMatrix)){
             throw new CoolException("鏇存柊宸ヤ綔妗eけ璐�==銆嬫鏋朵笂浣嶈蒋浠讹細鍗曟墭鎷嗗灈瀹屾垚閫氱煡");
         }
-    }
-
-    /*
-     *
-     * */
-    @Override
-    @Transactional
-    public void cs1(String barcode) {
-        BasDevp basDevp = basDevpService.selectById(216);
-        basDevp.setWrkNo(9992);
-        basDevp.setBarcode(barcode);
-        basDevpService.updateById(basDevp);
     }
 
     /*
@@ -1063,24 +1062,6 @@
             return crnStn-2;
         }
         return crnStn;
-    }
-
-
-        /*
-     *
-     * */
-    @Override
-    @Transactional
-    public void cs3() {
-        //鎷嗙洏
-//        WrkMastSta wrkMastSta1 = new WrkMastSta(new Date(),119);
-//        wrkMastSta1.setType(2);
-//        wrkMastSta1.setWrkType(2);
-//        wrkMastStaService.insert(wrkMastSta1);
-//        WrkMastSta wrkMastSta2 = new WrkMastSta(new Date(),121);
-//        wrkMastSta2.setType(2);
-//        wrkMastSta2.setWrkType(2);
-//        wrkMastStaService.insert(wrkMastSta2);
     }
 
     /*...........................涓婇ザ姹熼摐..............浠ヤ笂.............寰愬伐姹変簯...........................*/

--
Gitblit v1.9.1