From d60e84cbedb554555578f071de95c4a8049183db Mon Sep 17 00:00:00 2001
From: yxFwq <1>
Date: 星期五, 13 六月 2025 15:16:43 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |  314 ++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 288 insertions(+), 26 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 aeded4d..4205f08 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -11,12 +11,15 @@
 import com.zy.asrs.entity.param.*;
 import com.zy.asrs.entity.result.OpenOrderCompeteResult;
 import com.zy.asrs.entity.result.StockVo;
+import com.zy.asrs.entity.vo.JarMastTableVo;
 import com.zy.asrs.mapper.TagMapper;
 import com.zy.asrs.service.*;
 import com.zy.asrs.task.core.ReturnT;
+import com.zy.asrs.task.handler.BareBoardHandler;
 import com.zy.asrs.utils.CodeDetectionUtil;
 import com.zy.asrs.utils.MatUtils;
 import com.zy.asrs.utils.PostMesDataUtils;
+import com.zy.asrs.utils.Utils;
 import com.zy.common.model.DetlDto;
 import com.zy.common.model.LocTypeDto;
 import com.zy.common.model.StartupDto;
@@ -29,6 +32,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.RequestParam;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -83,6 +87,12 @@
     private LocMastService locMastService;
     @Autowired
     private WorkService workService;
+    @Autowired
+    private BareBoardHandler bareBoardHandler;
+    @Autowired
+    private BasJarMastService basJarMastService;
+    @Autowired
+    private BasCrnpService basCrnpService;
 
     @Override
     @Transactional
@@ -804,7 +814,7 @@
             }
             WaitPakin waitPakin = new WaitPakin();
             waitPakin.sync(mat);
-            waitPakin.setBatch(matList.getBatch());       //鏈ㄧ缂栫爜  //鎵规  鍞竴鍊�  绠卞彿
+            waitPakin.setBatch(matList.getBatch());       //鏈ㄧ缂栫爜  //鎵规  鍞竴鍊�  鎵规
             waitPakin.setModel(matList.getModel());       //鍗峰彿  鍞竴鍊�
             waitPakin.setBrand(param.getBoxType());     //鏈ㄧ绫诲瀷
             waitPakin.setZpallet(param.getBarcode());   //鎵樼洏鐮�
@@ -812,7 +822,7 @@
             waitPakin.setWeight(matList.getWeight());  //鍑�閲�
             waitPakin.setVolume(matList.getRoughWeight());  //姣涢噸
             waitPakin.setPrice(matList.getRollExtent());   //闀垮害
-            waitPakin.setSpecs(String.valueOf(matList.getJoint()));   //鎺ュご
+            waitPakin.setSpecs(String.valueOf(matList.getJoint()));   //鎺ュご MES璁㈠崟鍙�
             waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
             waitPakin.setAnfme(matList.getAnfme());  // 鏁伴噺
             waitPakin.setStatus("Y");    // 鐘舵��
@@ -1070,6 +1080,9 @@
             } else if (param.getType()==3){//鐩翠緵浜х嚎
                 smallContainersSta(param);
             }
+//            else if (param.getType()==99){//搴撳唴渚涗骇绾�  //鍑哄簱  娴嬭瘯
+//                smallContainersBig99(param);
+//            }
         } catch (Exception e){
             throw new CoolException("澶辫触锛侊紒锛佸師鍥狅細"+e.getMessage());
         }
@@ -1091,8 +1104,6 @@
             throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖");
         }else if (Cools.isEmpty(param.getWeight())){
             throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖");
-        }else if (Cools.isEmpty(param.getColor())){
-            throw new CoolException("鍙傛暟锛氱墿鏂欓鑹� color涓虹┖");
         }
 
         Mat mat = matService.selectByMatnr(param.getMatnr());
@@ -1123,10 +1134,22 @@
         if (Cools.isEmpty(basDevp.getCanining()) || !basDevp.getCanining().equals("Y")){
             throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐逛笉鏄兘鍏ョ姸鎬�");
         }
-        if (Cools.isEmpty(basDevp.getBarcode())){
+        if (Cools.isEmpty(basDevp.getBarcode()) || basDevp.getBarcode().equals("00000000")){
             throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮�==銆嬩负绌�"+basDevp.getBarcode());
         }
-        if (CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){
+        if (!basDevp.getInEnable().equals("Y")){
+            try{
+                Thread.sleep(500);
+            } catch (Exception e){
+
+            }
+            BasDevp basDevp1111 = basDevpService.selectById(param.getStaNo());
+            if (!basDevp1111.getInEnable().equals("Y")){
+                throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐癸紝璇风瓑寰呯炕杞畬鎴愶紱鏂欑鐮�==銆�"+basDevp.getBarcode());
+            }
+
+        }
+        if (!CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){
             throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮侊細"+basDevp.getBarcode());
         }
 
@@ -1142,15 +1165,15 @@
 
         WaitPakin waitPakin = new WaitPakin();
         waitPakin.sync(mat);
-//        waitPakin.setBatch(matList.getBatch());       //鏈ㄧ缂栫爜  //鎵规  鍞竴鍊�  绠卞彿
-//        waitPakin.setModel(matList.getModel());       //鍗峰彿  鍞竴鍊�
+        waitPakin.setBatch(param.getBatch());       //鏈ㄧ缂栫爜  //鎵规  鍞竴鍊�  绠卞彿
+        waitPakin.setModel(param.getTaskNo());       //鍗峰彿  鍞竴鍊�  宸ヤ綔鍙�
 //        waitPakin.setBrand(param.getBoxType());     //鏈ㄧ绫诲瀷
         waitPakin.setZpallet(basDevp.getBarcode());   //鎵樼洏鐮�
 //        waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃�
         waitPakin.setWeight(param.getWeight());  //鍑�閲�
 //        waitPakin.setVolume(matList.getRoughWeight());  //姣涢噸
 //        waitPakin.setPrice(matList.getRollExtent());   //闀垮害
-//        waitPakin.setSpecs(String.valueOf(matList.getJoint()));   //鎺ュご
+        waitPakin.setSpecs(param.getOrderNo());   //MES璁㈠崟鍙�  鍊熺敤瑙勬牸
 //        waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
 //        waitPakin.setAnfme(matList.getAnfme());  // 鏁伴噺
         waitPakin.setColor(param.getColor());  // 棰滆壊
@@ -1180,22 +1203,188 @@
             throw new CoolException("鍙傛暟锛氬搧鍙� matnr涓虹┖");
         }else if (Cools.isEmpty(param.getWeight())){
             throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖");
-        }else if (Cools.isEmpty(param.getColor())){
-            throw new CoolException("鍙傛暟锛氱墿鏂欓鑹� color涓虹┖");
+        }else if (Cools.isEmpty(param.getBatchNum())){
+            throw new CoolException("鍙傛暟锛氬嚭搴撴暟閲� batchNum涓虹┖");
         }
 
-        List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr()).eq("weight", param.getWeight()).eq("color", param.getColor()));
+        Mat mat = matService.selectByMatnr(param.getMatnr());
+        if (Cools.isEmpty(mat)){
+            throw new CoolException("鍝佸彿 matnr,璇峰厛涓嬪彂鍩虹妗f锛侊紒锛�");
+        }
+        if (Cools.isEmpty(mat.getUnits())){
+            throw new CoolException("鍝佸彿 matnr,閲嶉噺鑼冨洿鍋忕Щ鍊间负绌猴紒锛侊紒,璇峰厛缁存姢鍩虹妗f锛侊紒锛�");
+        }
+
+        ArrayList<Integer> crns =new ArrayList<>();
+        ArrayList<Integer> crnList =new ArrayList<>();
+
+        crns.add(1);crns.add(2);crns.add(3);crns.add(4);crns.add(5);crns.add(6);crns.add(7);
+
+        for (Integer crnNo : crns){
+            // 妫�娴嬭矾寰�
+            Wrapper<StaDesc> wrapper = new EntityWrapper<StaDesc>()
+                    .eq("type_no", 101)
+                    .eq("stn_no", param.getDevNo())
+                    .eq("crn_no", crnNo);
+            StaDesc staDesc = staDescService.selectOne(wrapper);
+            if (Cools.isEmpty(staDesc)){
+                continue;
+            }
+            BasCrnp basCrnp = basCrnpService.selectById(crnNo);
+            if (basCrnp.getCrnSts()!=3 || !basCrnp.getOutEnable().equals("Y")){
+                continue;
+            }
+            if (!basCrnpService.checkSiteError(crnNo, false)){
+                continue;
+            }
+            crnList.add(crnNo);
+        }
+
+        if (crnList.isEmpty()){
+            throw new CoolException("鏃犲彲鐢ㄥ爢鍨涙満");
+        }
+
+        ArrayList<LocDetl> locDetlArrayList = new ArrayList<>();
+        Wrapper<LocDetl> wrapper = new EntityWrapper<LocDetl>()
+                .eq("matnr", param.getMatnr())
+                .eq("weight", param.getWeight())
+                .orderBy("batch", true);
+        if (param.getDevNo() == 536) {
+            wrapper.eq("model", param.getModel())
+                    .eq("specs", param.getOrderNo());
+        }
+
+        List<LocDetl> locDetls = locDetlService.selectList(wrapper);
         if (locDetls.isEmpty()){
             locDetls = new ArrayList<LocDetl>();
         }
-        if (locDetls.isEmpty()){
-            throw new CoolException("鏈壘鍒扮鍚堟潯浠剁殑鐗╂枡鏄庣粏锛氬搧鍙�==銆媘atnr:"+param.getMatnr()+"锛涢噸閲�==銆媤right:"+param.getWeight()+"锛涢鑹�==銆媍olor:"+param.getColor());
+        for (LocDetl locDetl:locDetls){
+            LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo()));
+            if (locMast.getLocSts().equals("F")){
+                if (crnList.contains(locMast.getCrnNo())){
+                    if (locDetlArrayList.size()<param.getBatchNum()) {//涓�
+                        locDetlArrayList.add(locDetl);
+                    }
+                }
+            }
         }
-        for (LocDetl locDetl : locDetls){
-            StockOutParam stockOutParam = new StockOutParam(param,locDetl);
+
+        Integer batchNum = param.getBatchNum();
+        if (locDetlArrayList.size()<batchNum){//涓�
+            Wrapper<LocDetl> locDetlWrapper = new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr())
+                    .lt("weight", param.getWeight() + mat.getUnits())
+                    .and()
+                    .gt("weight", param.getWeight())
+                    .orderBy("batch", true)
+                    .orderBy("weight", true);
+            if (param.getDevNo() == 536){
+                locDetlWrapper.eq("model", param.getModel())
+                        .eq("specs", param.getOrderNo());
+            }
+            locDetls = locDetlService.selectList(locDetlWrapper);
+            if (locDetls.isEmpty()){
+                locDetls = new ArrayList<LocDetl>();
+            }
+            for (LocDetl locDetl:locDetls){
+                LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo()));
+                if (locMast.getLocSts().equals("F")){
+                    if (crnList.contains(locMast.getCrnNo())){
+                        if (locDetlArrayList.size()<batchNum) {//涓�
+                            locDetlArrayList.add(locDetl);
+                        }
+                    }
+                }
+            }
+        }
+        if (locDetlArrayList.size()<batchNum){//涓�
+            Wrapper<LocDetl> locDetlWrapper = new EntityWrapper<LocDetl>().eq("matnr", param.getMatnr())
+                    .gt("weight", param.getWeight() - mat.getUnits())
+                    .and()
+                    .lt("weight", param.getWeight())
+                    .orderBy("batch", true)
+                    .orderBy("weight", false);
+            if (param.getDevNo() == 536){
+                locDetlWrapper.eq("model", param.getModel())
+                        .eq("specs", param.getOrderNo());
+            }
+            locDetls = locDetlService.selectList(locDetlWrapper);
+
+            if (locDetls.isEmpty()){
+                locDetls = new ArrayList<LocDetl>();
+            }
+            for (LocDetl locDetl:locDetls){
+                LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetl.getLocNo()));
+                if (locMast.getLocSts().equals("F")){
+                    if (crnList.contains(locMast.getCrnNo())){
+                        if (locDetlArrayList.size()<batchNum) {//涓�
+                            locDetlArrayList.add(locDetl);
+                        }
+                    }
+                }
+            }
+        }
+        if (locDetlArrayList.isEmpty()){
+            throw new CoolException("鏈壘鍒扮鍚堟潯浠剁殑鐗╂枡鏄庣粏锛氬搧鍙�==銆媘atnr:"+param.getMatnr()+"锛涢噸閲�==銆媤right:"+param.getWeight());
+        }
+        if (locDetlArrayList.size()<batchNum){
+            throw new CoolException("搴撳瓨鏁伴噺:"+locDetlArrayList.size()+"锛涘皬浜庨渶姹傛暟閲�:"+param.getBatchNum());
+        }
+        ArrayList<String> locS = new ArrayList<>();
+
+        ArrayList<LocDetl> locDetlArrayAnd = new ArrayList<>();
+        for (LocDetl locDetl : locDetlArrayList){
+            if (!locS.contains(locDetl.getLocNo())){
+                locDetlArrayAnd.add(locDetl);
+                locS.add(locDetl.getLocNo());
+                if (crnList.contains(1) || crnList.contains(2)){
+                    String singleLoc = Utils.singleLoc(locDetl.getLocNo());
+                    if (Cools.isEmpty(singleLoc)){
+                        log.error("寮傚父搴撲綅鍙凤細"+singleLoc+"锛涜緭鍏ュ簱浣嶅彿锛�"+locDetl.getLocNo());
+                        continue;
+                    }
+                    LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", singleLoc));
+                    if (locMast.getLocSts().equals("F")){
+                        LocDetl locDetl1 = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("loc_no", singleLoc));
+                        if (Cools.isEmpty(locDetl1)){
+                            throw new CoolException("搴撲綅"+locMast.getLocNo()+"寮傚父锛屽湪搴撲絾鏄棤搴撳瓨锛侊紒锛�");
+                        }
+                        if (!locS.contains(locDetl1.getLocNo())){
+                            if (locDetl1.getMatnr().equals(locDetl.getMatnr())){
+                                locDetlArrayAnd.add(locDetl1);
+                                locS.add(locDetl1.getLocNo());
+                            }
+                        }
+                    }
+                }
+            }
+        }
+
+        if (locDetlArrayAnd.isEmpty()){
+            throw new CoolException("鏈壘鍒扮鍚堟潯浠剁殑鐗╂枡鏄庣粏锛氬搧鍙�==銆媘atnr:"+param.getMatnr()+"锛涢噸閲�==銆媤right:"+param.getWeight());
+        }
+        if (locDetlArrayAnd.size()<batchNum){
+            throw new CoolException("搴撳瓨鏁伴噺:"+locDetlArrayAnd.size()+"锛涘皬浜庨渶姹傛暟閲�:"+param.getBatchNum());
+        }
+
+        ArrayList<LocDetl> locDetlArraySou = new ArrayList<>();
+
+        for (LocDetl locDetl : locDetlArrayAnd){
+            if (batchNum <= 0){
+                break;
+            }
+            locDetlArraySou.add(locDetl);
+            batchNum --;
+        }
+        try{
+            StockOutParam stockOutParam = new StockOutParam(param,locDetlArraySou);
             workService.startupFullTakeStore(stockOutParam, userId);
+        } catch (Exception e){
+//            throw new CoolException("鐢熸垚鍑哄簱浠诲姟澶辫触:鍑哄簱鏁伴噺锛�"+locDetlArraySou.size());
+            throw new CoolException("鐢熸垚鍑哄簱浠诲姟澶辫触:"+e.getMessage());
         }
+
     }
+
     public void smallContainersJar(SmallCompleteParam param) {
         Long userId = 7777L;//mes
         //鍒ゆ柇param鍙傛暟
@@ -1209,10 +1398,7 @@
             throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖");
         }else if (Cools.isEmpty(param.getWeight())){
             throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖");
-        }else if (Cools.isEmpty(param.getColor())){
-            throw new CoolException("鍙傛暟锛氱墿鏂欓鑹� color涓虹┖");
         }
-
         Mat mat = matService.selectByMatnr(param.getMatnr());
         if (Cools.isEmpty(mat)) {
 //            mat = new Mat();
@@ -1244,7 +1430,7 @@
         if (Cools.isEmpty(basDevp.getBarcode())){
             throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮�==銆嬩负绌�"+basDevp.getBarcode());
         }
-        if (CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){
+        if (!CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){
             throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮侊細"+basDevp.getBarcode());
         }
 
@@ -1260,15 +1446,15 @@
 
         WaitPakin waitPakin = new WaitPakin();
         waitPakin.sync(mat);
-//        waitPakin.setBatch(matList.getBatch());       //鏈ㄧ缂栫爜  //鎵规  鍞竴鍊�  绠卞彿
-//        waitPakin.setModel(matList.getModel());       //鍗峰彿  鍞竴鍊�
+        waitPakin.setBatch(param.getBatch());       //鏈ㄧ缂栫爜  //鎵规  鍞竴鍊�  绠卞彿
+        waitPakin.setModel(param.getTaskNo());       //鍗峰彿  鍞竴鍊�
 //        waitPakin.setBrand(param.getBoxType());     //鏈ㄧ绫诲瀷
         waitPakin.setZpallet(basDevp.getBarcode());   //鎵樼洏鐮�
 //        waitPakin.setOrigin(matList.getPosition()); //鏈ㄧ鍦ㄦ墭鐩樹笂鐨勪綅缃�
         waitPakin.setWeight(param.getWeight());  //鍑�閲�
 //        waitPakin.setVolume(matList.getRoughWeight());  //姣涢噸
 //        waitPakin.setPrice(matList.getRollExtent());   //闀垮害
-//        waitPakin.setSpecs(String.valueOf(matList.getJoint()));   //鎺ュご
+        waitPakin.setSpecs(param.getOrderNo());   //鍗曞彿  鍊熺敤
 //        waitPakin.setIoStatus("N");     // 鍏ュ嚭鐘舵��
 //        waitPakin.setAnfme(matList.getAnfme());  // 鏁伴噺
         waitPakin.setColor(param.getColor());  // 棰滆壊
@@ -1297,8 +1483,6 @@
             throw new CoolException("鍙傛暟锛氱墿鏂欑紪鐮� matnr涓虹┖");
         }else if (Cools.isEmpty(param.getWeight())){
             throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖");
-        }else if (Cools.isEmpty(param.getColor())){
-            throw new CoolException("鍙傛暟锛氱墿鏂欓鑹� color涓虹┖");
         }
 
         Mat mat = matService.selectByMatnr(param.getMatnr());
@@ -1321,7 +1505,7 @@
         if (Cools.isEmpty(basDevp.getBarcode())){
             throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮�==銆嬩负绌�"+basDevp.getBarcode());
         }
-        if (CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){
+        if (!CodeDetectionUtil.barcodeDetection(basDevp.getBarcode(),8)){
             throw new CoolException("鐮佸灈浣嶇紪鍙� palletizingNo="+param.getStaNo()+" 鎵�澶勭珯鐐规枡绠辩爜寮傚父鐘舵�侊紱鏂欑鐮侊細"+basDevp.getBarcode());
         }
 
@@ -1357,6 +1541,9 @@
         wrkDetl.setWrkNo(wrkMast.getWrkNo());
         wrkDetl.setIoTime(wrkMast.getIoTime());
         wrkDetl.setMatnr(param.getMatnr());
+        wrkDetl.setModel(param.getTaskNo());
+        wrkDetl.setBatch(param.getBatch());
+        wrkDetl.setSpecs(param.getOrderNo());
         wrkDetl.setAnfme(1D);
         wrkDetl.setWeight(param.getWeight());
         wrkDetl.setBarcode(basDevp.getBarcode());
@@ -1366,7 +1553,82 @@
         if (!wrkDetlService.insert(wrkDetl)) {
             throw new CoolException("淇濆瓨宸ヤ綔鏄庣粏澶辫触==銆嬪皬鏂欑鐩翠緵浜х嚎浠诲姟鏄庣粏鐢熸垚");
         }
+    }
 
+    public Integer getStaEnd(Integer staNo){
+        switch (staNo){
+            case 118:
+            case 119:
+                return 131;
+            case 120:
+            case 121:
+                return 135;
+            default:
+                return staNo;
+        }
+    }
+
+    /*
+     * 鍑哄簱
+     * 鐩翠緵浜х嚎
+     * */
+    public void smallContainersBig99(SmallCompleteParam param) {//鐩翠緵浜х嚎//鍑哄簱
+        Long userId = 7777L;//mes
+        //鍒ゆ柇param鍙傛暟
+        if (Cools.isEmpty(param.getType())){
+            throw new CoolException("鍙傛暟锛氱被鍨� type涓虹┖");
+//        }else if (Cools.isEmpty(param.getStaNo())){
+//            throw new CoolException("鍙傛暟锛氭姇鏂欑偣浣� staNo涓虹┖");
+        }else if (Cools.isEmpty(param.getDevNo())){
+            throw new CoolException("鍙傛暟锛氫骇绾跨偣浣� devNo涓虹┖");
+        }else if (Cools.isEmpty(param.getMatnr())){
+            throw new CoolException("鍙傛暟锛氬搧鍙� matnr涓虹┖");
+        }else if (Cools.isEmpty(param.getWeight())){
+            throw new CoolException("鍙傛暟锛氱墿鏂欓噸閲� wright涓虹┖");
+        }else if (Cools.isEmpty(param.getBatchNum())){
+            throw new CoolException("鍙傛暟锛氬嚭搴撴暟閲� batchNum涓虹┖");
+        }
+        Integer devNo = param.getDevNo();
+        Integer batchNum = param.getBatchNum();
+
+
+        for (int i =0;i<batchNum;i++){
+            bareBoardHandler.startYx(devNo,99);
+        }
+    }
+
+    /*
+     * 鑾峰彇纭寲缃愪换鍔′俊鎭�  //
+     * */
+    @Override
+    @Transactional
+    public List<JarMastTableVo> getJatIdList(Integer id) {
+        List<BasJarMast> jarMasts = basJarMastService.selectList(new EntityWrapper<BasJarMast>().eq("jar_id", id));
+        if (Cools.isEmpty(jarMasts)){
+            return new ArrayList<JarMastTableVo>();
+        }
+        ArrayList<JarMastTableVo> jarMastTableVos = new ArrayList<>();
+        for (BasJarMast jarMast : jarMasts) {
+            JarMastTableVo jarMastTableVo = new JarMastTableVo();
+            WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("wrk_no", jarMast.getWrkNo()));
+            List<WrkDetl> wrkDetls = wrkDetlService.selectList(new EntityWrapper<WrkDetl>().eq("wrk_no", jarMast.getWrkNo()));
+            if (wrkDetls.isEmpty()){
+                WrkDetl wrkDetl = new WrkDetl();
+                wrkDetls.add(wrkDetl);
+            }
+            if (Cools.isEmpty(wrkMast) || Cools.isEmpty(wrkDetls)){
+                continue;
+            }
+            jarMastTableVo.setJarId(jarMast.getJarId());
+            jarMastTableVo.setJarWrkNo(jarMast.getWrkNo().toString());
+            jarMastTableVo.setStatus(jarMast.getStatus());
+            jarMastTableVo.setStatus$(jarMast.getStatus$());
+            jarMastTableVo.setMatnr(wrkDetls.get(0).getMatnr());
+            jarMastTableVo.setMaktx(wrkDetls.get(0).getMaktx());
+            jarMastTableVo.setWeight(wrkDetls.get(0).getWeight());
+            jarMastTableVos.add(jarMastTableVo);
+        }
+        return jarMastTableVos;
     }
 
     /*...........................浜冲窞鐓滄槦..............浠ヤ笂.............浜冲窞鐓滄槦...........................*/

--
Gitblit v1.9.1