From eeb25c1d45e28f0c09145d335d6a3e9535891bad Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期三, 27 十二月 2023 21:53:44 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/SiteController.java    |   72 +++++++++++++++++++++++++++---------
 src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java |   17 +++++++-
 src/main/webapp/views/pipeline.html                         |    2 
 src/main/resources/application.yml                          |    6 ++-
 4 files changed, 73 insertions(+), 24 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/SiteController.java b/src/main/java/com/zy/asrs/controller/SiteController.java
index d3dab66..2ef5e89 100644
--- a/src/main/java/com/zy/asrs/controller/SiteController.java
+++ b/src/main/java/com/zy/asrs/controller/SiteController.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.core.annotations.ManagerAuth;
+import com.core.common.Cools;
 import com.core.common.R;
 import com.zy.asrs.domain.vo.PlcErrorTableVo;
 import com.zy.asrs.domain.vo.SiteTableVo;
@@ -101,31 +102,66 @@
             Map<Integer, StaProtocol> station = devpThread.getStation();
 
             for(Map.Entry<Integer, StaProtocol> entry : station.entrySet()) {
-                StaProtocol staProtocol = entry.getValue();
-//                if (staProtocol) {
-//                    PlcErrorTableVo vo = new PlcErrorTableVo();
-//                    vo.setNo(entry.getKey());   //  搴忓彿
-//
-//                    vo.setPlcDesc("");  //  todo:luxiaotao plc閿欒鎻忚堪
-//                    vo.setError("");    //  todo:luxiaotao 寮傚父淇℃伅
-//                    list.add(vo);
-//                }
+                if (!Cools.isEmpty(staPlcErr(entry))){
+                    list.add(staPlcErr(entry).get(0)) ;
+                }
+
             }
 
         }
 
-        list.sort((o1, o2) -> {
-            if (o1.getNo().compareTo(o2.getNo()) > 0){
-                return 1;
-            }else if (o1.getNo().compareTo(o2.getNo()) < 0){
-                return 0;
-            }else{
-                return -1;
-            }
 
-        });
         return R.ok().add(list);
     }
+    public List<PlcErrorTableVo> staPlcErr(Map.Entry<Integer, StaProtocol> entry){
+        List<PlcErrorTableVo> list = new ArrayList<>();
+        StaProtocol staProtocol = entry.getValue();
+        if (staProtocol.isFrontErr()){
+            PlcErrorTableVo vo = new PlcErrorTableVo();
+            vo.setNo(entry.getKey());   //  搴忓彿
+            vo.setPlcDesc("鍓嶈秴闄�");
+            vo.setError("鍓嶈秴闄�");
+            list.add(vo);
+        }
+        if (staProtocol.isBackErr()){
+            PlcErrorTableVo vo = new PlcErrorTableVo();
+            vo.setNo(entry.getKey());   //  搴忓彿
+            vo.setPlcDesc("鍚庤秴闄�");
+            vo.setError("鍚庤秴闄�");
+            list.add(vo);
+        }
+        if (staProtocol.isHighErr()){
+            PlcErrorTableVo vo = new PlcErrorTableVo();
+            vo.setNo(entry.getKey());   //  搴忓彿
+            vo.setPlcDesc("楂樿秴闄�");
+            vo.setError("楂樿秴闄�");
+            list.add(vo);
+        }
+        if (staProtocol.isLeftErr()){
+            PlcErrorTableVo vo = new PlcErrorTableVo();
+            vo.setNo(entry.getKey());   //  搴忓彿
+            vo.setPlcDesc("宸﹁秴闄�");
+            vo.setError("宸﹁秴闄�");
+            list.add(vo);
+        }
+        if (staProtocol.isRightErr()){
+            PlcErrorTableVo vo = new PlcErrorTableVo();
+            vo.setNo(entry.getKey());   //  搴忓彿
+            vo.setPlcDesc("鍙宠秴闄�");
+            vo.setError("鍙宠秴闄�");
+            list.add(vo);
+        }
+        if (staProtocol.isBarcodeErr()){
+            PlcErrorTableVo vo = new PlcErrorTableVo();
+            vo.setNo(entry.getKey());   //  搴忓彿
+            vo.setPlcDesc("鎵爜澶辫触");
+            vo.setError("鎵爜澶辫触");
+            list.add(vo);
+        }
+
+
+        return list;
+    }
 
     @PostMapping("/output/site")
     @ManagerAuth(memo = "绔欑偣璁惧鎶ユ枃鏃ュ織杈撳嚭")
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 6aa9b68..662e8d7 100644
--- a/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MainServiceImpl.java
@@ -369,7 +369,7 @@
                         && staProtocol.isLoading()
                         && staProtocol.isInEnable()
                         && staProtocol.isPakMk()
-                        && staProtocol.getWorkNo() == 9991) {
+                        && staProtocol.getWorkNo() == 9999) {
 //                    WrkMast wrkMast = wrkMastMapper.selectPickStep(barcode);
                     LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, pickSta.getLed());
                     if (barcode.equals("") || barcode.equals("99999999")) {
@@ -389,7 +389,8 @@
                         continue;
                     }
 
-                    WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
+//                    WrkMast wrkMast = wrkMastMapper.selectPakInStep3(staProtocol.getWorkNo().intValue());
+                    WrkMast wrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().eq("barcode", barcode));
                     ledThread.errorReset();
                     if (wrkMast == null) {
                         wrkMast = wrkMastMapper.selectPickStep(barcode);
@@ -474,6 +475,8 @@
                     boolean result = MessageQueue.offer(SlaveType.Devp, devp.getId(), new Task(2, staProtocol));
                     if (!result) {
                         log.error("鍙戝竷鍛戒护鑷宠緭閫佺嚎闃熷垪澶辫触锛侊紒锛� [plc缂栧彿锛歿}]", devp.getId());
+                    }else {
+                        ledThread.errorReset();
                     }
 
                 }
@@ -1293,6 +1296,7 @@
                 // 鑾峰彇绌烘澘鍏ュ簱绔欎俊鎭�
                 SiemensDevpThread devpThread = (SiemensDevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
                 StaProtocol staProtocol = devpThread.getStation().get(emptyInSta.getStaNo());
+                LedThread ledThread = (LedThread) SlaveConnection.get(SlaveType.Led, emptyInSta.getLed());
                 if (staProtocol == null) {
                     continue;
                 } else {
@@ -1303,6 +1307,13 @@
                 if (staProtocol.isAutoing() && staProtocol.isLoading() && staProtocol.isInEnable()
                         && staProtocol.isEmptyMk() && (staProtocol.getWorkNo() >= 9990
                         && staProtocol.getWorkNo() <= 9999) && staProtocol.isPakMk()) {
+                    List<WrkMast> wrkMasts = wrkMastService.selectList(new EntityWrapper<WrkMast>()
+                            .eq("sta_no", emptyInSta.getStaNo())
+                            .eq("io_type", 10)
+                            .eq("wrk_sts", 2));
+                    if (!Cools.isEmpty(wrkMasts)){
+                        continue;
+                    }
                     try {
                         LocTypeDto locTypeDto = new LocTypeDto(staProtocol);
 
@@ -1319,7 +1330,7 @@
                         JSONObject jsonObject = JSON.parseObject(response);
                         if (jsonObject.getInteger("code").equals(200)) {
                             StartupDto dto = jsonObject.getObject("data", StartupDto.class);
-
+                            ledThread.errorReset();
                             // 鏇存柊绔欑偣淇℃伅 涓� 涓嬪彂plc鍛戒护
                             staProtocol.setWorkNo(dto.getWorkNo().shortValue());
                             staProtocol.setStaNo(dto.getStaNo().shortValue());
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index 820db48..76c8efb 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -160,17 +160,19 @@
     # 绌烘澘鍏ュ簱鍙�1
     emptyInSta[0]:
       staNo: 1002
+      led: ${wcs-slave.led[0].id}
     emptyInSta[1]:
       staNo: 1012
+      led: ${wcs-slave.led[3].id}
     # 鎷f枡鍏ュ簱鍙�1
     pickSta[0]:
-      staNo: 1003
+      staNo: 1002
       barcode: ${wcs-slave.barcode[0].id}
       backSta: 1001
       led: ${wcs-slave.led[0].id}
     # 鎷f枡鍏ュ簱鍙�2
     pickSta[1]:
-      staNo: 1013
+      staNo: 1012
       barcode: ${wcs-slave.barcode[1].id}
       backSta: 1011
       led: ${wcs-slave.led[3].id}
diff --git a/src/main/webapp/views/pipeline.html b/src/main/webapp/views/pipeline.html
index 4ed983e..b73dbf2 100644
--- a/src/main/webapp/views/pipeline.html
+++ b/src/main/webapp/views/pipeline.html
@@ -61,7 +61,7 @@
                     <table id="plc-error-table">
                         <thead>
                         <tr>
-                            <th style="width: 200px">搴忓彿</th>
+                            <th style="width: 200px">绔欑偣</th>
                             <th style="width: 400px">PLC閿欒鎻忚堪</th>
                             <th style="width: 400px">寮傚父</th>
                         </tr>

--
Gitblit v1.9.1