From cdc12aeeb8aca9061796a27ecc2ceb3aa61c3737 Mon Sep 17 00:00:00 2001
From: zjj <zjj123456>
Date: 星期二, 05 十一月 2024 09:40:45 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   53 +++++++++++++++++++++++++++++++++++------------------
 1 files changed, 35 insertions(+), 18 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
index 2008ae6..deef97d 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -2082,7 +2082,7 @@
                                 && basDevp.getWrkNo() == 0 && basDevp.getCanining().equals("Y")){
 //                             鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
                             staProtocol.setWorkNo((short) 9997);
-                            staProtocol.setStaNo(basDevp.getDevNo().shortValue());
+                            staProtocol.setStaNo((short) (basDevp.getDevNo()==1004?1003:1013));
 //                            staProtocol.setStaNo((short) 1013);
                             devpThread.setPakMk(staProtocol.getSiteId(), false);
                             boolean result = MessageQueue.offer(SlaveType.Devp, devpThread.getSlave().getId(), new Task(2, staProtocol));
@@ -2152,17 +2152,19 @@
 //                        && staProtocol.isEmptyMk()
                         && staProtocol.getWorkNo() == 0
                 ) {
-                    WrkMast pakoutEmpty = wrkMastMapper.selectPakoutEmpty(sta.getStaNo());
+                    Integer staNo = sta.getStaNo();
+                    switch (staProtocol.getSiteId()){
+                        case 4007:
+                            staNo = 4002;break;
+                        case 4016:
+                            staNo = 4011;break;
+                    }
+                    WrkMast pakoutEmpty = wrkMastMapper.selectPakoutEmpty(staNo);
                     if (null != pakoutEmpty) {
                         return;
                     }
-                    switch (staProtocol.getSiteId()){
-                        case 4007:
-                            sta.setStaNo(4002);break;
-                        case 4016:
-                            sta.setStaNo(4011);break;
-                    }
-                    List<StaDesc> staDescs = staDescService.selectList(new EntityWrapper<StaDesc>().eq("stn_no", sta.getStaNo()));
+
+                    List<StaDesc> staDescs = staDescService.selectList(new EntityWrapper<StaDesc>().eq("stn_no", staNo));
                     for (StaDesc staDesc: staDescs){
                         BasCrnp basCrnp = basCrnpService.selectOne(new EntityWrapper<BasCrnp>().eq("crn_no", staDesc.getCrnNo()));
                         if (!basCrnp.getCrnSts().equals(3) || basCrnp.getCrnErr() != 0){
@@ -2533,8 +2535,8 @@
                 String batch2 = "";
                 short type = 0;
                 short type2 = 0;
-                short anfme = 0;
-                short anfme2 = 0;
+                short anfme = 1;
+                short anfme2 = 1;
                 Double weight = 0d;
                 Double weight2 = 0d;
 
@@ -2567,6 +2569,9 @@
 
 
                     } else if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk() && (staProtocol.getWorkNo()>=9900 || staProtocol.getWorkNo()==0)) {
+                        if (rgvSlave.getId() != 2 ){
+                            continue;
+                        }
                         workNo1 = workNo++;
                         souSta1 = Utils.getRgvStaNo(rgvSlave.getId(),inStn.getSourceStaNo());
                         if (inStn.getSourceStaNo() == 4007 && staProtocol.getTongType() == 1){
@@ -2583,12 +2588,13 @@
                             type = 1;
                         }
                         if(inStn.getSourceStaNo() == 2102){
-                            weight = staProtocol.getWeight().doubleValue();
+                            weight = staProtocol.getWeight().doubleValue()/10;
                         }
 
                         work1 = true;
                         if (inStn.getSourcePlcId() == 4 || inStn.getSourcePlcId() ==5){ //鐏岃绔欓渶瑕佽幏鍙栬緭閫佺嚎鐗╂枡浠g爜
                             matnr = staProtocol.getMatnr();
+                            batch = staProtocol.getBatch();
                         }
 
                         devpThread.setPakMk(inStn.getSourceStaNo(),false);
@@ -2627,6 +2633,9 @@
                                 devpThread.setPakMk(inStn.getSourceStaNo(),false);
                                 break;
                         } else if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable() && staProtocol.isPakMk() && (staProtocol.getWorkNo()>=9900 || staProtocol.getWorkNo()==0)) {
+                            if (rgvSlave.getId() != 2 ){
+                                continue;
+                            }
                             workNo2 = workNo++;
                             souSta2 = Utils.getRgvStaNo(rgvSlave.getId(),inStn.getSourceStaNo());
                             if (inStn.getSourceStaNo() == 4007 && staProtocol.getTongType() == 1){
@@ -2644,12 +2653,13 @@
                             }
 
                             if(inStn.getSourceStaNo() == 2102){
-                                weight2 = staProtocol.getWeight().doubleValue();
+                                weight2 = staProtocol.getWeight().doubleValue()/10;
                             }
 
                             work2 = true;
                             if (inStn.getSourcePlcId() == 4){
                                 matnr2 = staProtocol.getMatnr();
+                                batch2 = staProtocol.getBatch();
                             }
                             devpThread.setPakMk(inStn.getSourceStaNo(),false);
                             break;
@@ -2732,10 +2742,10 @@
                     log.info("{}鍙穜gv宸ヤ綅涓�宸ヤ綔瀹屾垚澶嶄綅,宸ヤ綔鍙�:{}",rgvSlave.getId(),rgvProtocol.getTaskNo1());
                     if (offer){
                         //瀹屾垚rgv浠诲姟
-                        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvProtocol.getRgvNo()).eq("wrk_no", rgvProtocol.getTaskNo1());
+                        Wrapper<WrkMastSta> wrkMastStaWrapper = new EntityWrapper<WrkMastSta>().eq("wrk_crn", rgvSlave.getId()).eq("wrk_no", rgvProtocol.getTaskNo1());
                         WrkMastSta wrkMastSta1 = wrkMastStaService.selectOne(wrkMastStaWrapper);
                         if (Cools.isEmpty(wrkMastSta1)){
-                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
+                            log.error("瀹屾垚{}鍙疯溅宸ヤ綅涓�浠诲姟鏈壘鍒板搴攔gv浠诲姟,{}",rgvSlave.getId(),rgvProtocol.getTaskNo1());
                         }else {
                             if (wrkMastSta1.getWrkType() == 8 ){
                                 wrkMastSta1.setWrkSts(3);
@@ -2838,7 +2848,7 @@
                 WrkMastSta wrkMastSta = wrkMastStaService.selectByRgvNoandWrkNo(rgvSlave.getId(), rgvProtocol.getTaskNo1());
                 WrkMast wrkMast = wrkMastService.selectByworkNo(rgvProtocol.getTaskNo1());
                 if (Cools.isEmpty(wrkMastSta)){
-                    log.error("鏈煡璇㈠埌rgv宸ヤ綔浠诲姟锛宺gv缂栧彿{},宸ヤ綔鍙穥}",rgvProtocol.getRgvNo(),rgvProtocol.getTaskNo1());
+                    log.error("鏈煡璇㈠埌rgv宸ヤ綔浠诲姟锛宺gv缂栧彿{},宸ヤ綔鍙穥}",rgvSlave.getId(),rgvProtocol.getTaskNo1());
                     continue;
                 }
                 for (RgvSlave.Sta outStn :rgvSlave.getOutStn()){
@@ -3209,7 +3219,7 @@
                     WaitPakin waitPakin = waitPakinService.selectOne(new EntityWrapper<WaitPakin>().eq("zpallet", barcode).eq("io_status", "N"));
                     if (Cools.isEmpty(waitPakin)) {
                         try {
-                            CreateComb(barcode, staProtocol.getMatnr(),staProtocol.getWorkNo().intValue(),staProtocol.getBatch());
+                            CreateComb(barcode, staProtocol.getMatnr(),staProtocol.getWorkNo().intValue(),staProtocol.getBatch(),inSta);
                         }catch (IOException e) {
                             throw new CoolException(e);
                         }
@@ -3279,7 +3289,7 @@
 
     }
 
-    public void CreateComb(String barcode,Integer code,Integer wrkNo,String batch) throws IOException {
+    public void CreateComb(String barcode,Integer code,Integer wrkNo,String batch,DevpSlave.Sta inSta) throws IOException {
         Double anfme = 0d;
         Double weight = 0d;
 
@@ -3330,6 +3340,13 @@
 
         }else {
             log.error("璇锋眰鎺ュ彛澶辫触锛侊紒锛乽rl锛歿}锛況equest锛歿}锛況esponse锛歿}", wmsUrl + "/mobile/comb/auth", JSON.toJSONString(combParam), response);
+//            log.info("{}鍙锋潯鐮佹壂鎻忓櫒妫�娴嬫潯鐮佷俊鎭細{}", inSta.getBarcode(), barcode);
+            //鏉$爜涓虹┖鎴栬�呬笉绗﹀悎锛岄��搴撳埌
+            LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, inSta.getLed());
+            if (ledThread != null) {
+                String errorMsg = "鎵爜澶辫触锛岃閲嶈瘯";
+                MessageQueue.offer(SlaveType.Led, inSta.getLed(), new Task(3, errorMsg));
+            }
         }
     }
 

--
Gitblit v1.9.1