From b454340c14d789c5fe41350d092ea2f14d6454b3 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期一, 06 五月 2024 10:21:45 +0800
Subject: [PATCH] 添加plc连接不上时报警,主界面后端推送数据超时提示

---
 CanadaMes-ui/src/views/home/index.vue                                       |   31 ++++++---
 CanadaMes-ui/src/lang/locales/en-US.json                                    |    3 +
 springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java |   94 ++++++++++++++++--------------
 CanadaMes-ui/src/lang/locales/zh-CN.json                                    |    3 +
 4 files changed, 76 insertions(+), 55 deletions(-)

diff --git a/CanadaMes-ui/src/lang/locales/en-US.json b/CanadaMes-ui/src/lang/locales/en-US.json
index d2c1e7d..85be4ab 100644
--- a/CanadaMes-ui/src/lang/locales/en-US.json
+++ b/CanadaMes-ui/src/lang/locales/en-US.json
@@ -1,6 +1,9 @@
 {
   "Clear":"Clear",
   "ip":"localhost",
+  "Mes Connection failed":"Mes Connection failed",
+  "Plc1 Connection failed":"Plc1 Connection failed",
+  "Plc2 Connection failed":"Plc2 Connection failed",
   "Remaining width:":"Remaining width:",
   "systemTitle": "Login System",
   "usernamePlaceholder": "Please enter username",
diff --git a/CanadaMes-ui/src/lang/locales/zh-CN.json b/CanadaMes-ui/src/lang/locales/zh-CN.json
index 4e53f34..6d244ff 100644
--- a/CanadaMes-ui/src/lang/locales/zh-CN.json
+++ b/CanadaMes-ui/src/lang/locales/zh-CN.json
@@ -1,6 +1,9 @@
 {
   "Clear":"娓呴櫎",
   "ip":"localhost",
+  "Mes Connection failed":"Mes杩炴帴澶辫触",
+  "Plc1 Connection failed":"Plc1杩炴帴澶辫触",
+  "Plc2 Connection failed":"Plc2杩炴帴澶辫触",
   "Remaining width:":"鍓╀綑瀹藉害:",
   "systemTitle": "鐧诲綍绯荤粺",
   "usernamePlaceholder": "璇疯緭鍏ョ敤鎴峰悕",
diff --git a/CanadaMes-ui/src/views/home/index.vue b/CanadaMes-ui/src/views/home/index.vue
index e9f658f..901bcdb 100644
--- a/CanadaMes-ui/src/views/home/index.vue
+++ b/CanadaMes-ui/src/views/home/index.vue
@@ -235,6 +235,7 @@
     height: 15px;
     position: absolute;
 }
+
 </style>
 <template>
     <el-container>
@@ -243,7 +244,7 @@
             <div class="box" @click="dialogFormVisible2 = true">
                 <div class="text">
                     <!-- Alarm: -->
-                    {{ this.text }}
+                    {{ this.text }}{{this.plc1}}{{this.plc2}}
                     <label v-for="item in this.alarm" :key="item['id']">
                         {{ item['content'] }}
                     </label>
@@ -1013,20 +1014,22 @@
             count2: 1,
             loadname: "",
             form6state:0,
-            StateColor:"green"
+            StateColor:"green",
+            plc1:"",
+            plc2:""
         };
     },
     created() {
         this.load();
-        // setInterval(() => {
-        //     if(this.count1<this.count2){
-        //         this.count1=this.count2;
-        //     }else{
-        //         const now = new Date();
-        //         console.log(now);
-        //         alert("websocket鍋滄"+now);
-        //     }
-        // }, 3000);
+        setInterval(() => {
+            if(this.count1<this.count2){
+                this.count1=this.count2;
+            }else{
+                const now = new Date();
+                console.log(this.count1,this.count2);
+                alert(this.$t('Mes Connection failed')+now);
+            }
+        }, 30000);
     },
     activated() {
         this.init();
@@ -1063,6 +1066,12 @@
                         // this.car1 = 210 + 11.25 * (obj.params[0][1]-this.carlist[1]['start'])/(this.carlist[1]['end']-this.carlist[1]['start'])*100;
                         // this.car2 = 300 + 11.25 * (obj.params[0][1]-this.carlist[1]['start'])/(this.carlist[1]['end']-this.carlist[1]['start'])*100;
                     }
+                    if (obj.Plc1 != null) {
+                        this.plc1=this.$t('Plc1 Connection failed');
+                    }
+                    if (obj.Plc2 != null) {
+                        this.plc2=this.$t('Plc2 Connection failed');
+                    }
 
                     this.tableData = obj.tableData[0];
                     this.cagelist1 = obj.cagelist1[0];
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
index b55f30b..b11acd4 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
@@ -161,52 +161,56 @@
                 // String E01id = new String( S7controlLK.getinstance().ReadByte("DB17.0",16));
                 // String J01id = new String( S7controlLK.getinstance().ReadByte("DB17.22",14));
 
+                // 閾濇绾夸氦浜�
+                if (S7controlLK.getinstance().CheckConnected() == true) {
+                    // E02鐜荤拑id
+                    String E02id = S7controlLK.getinstance().readStrings("DB17.40");
+                    // log.info("E02id"+E02id);
+                    outSliceServive.FrameStateUpdate(E02id);
+                    if (CurrentFrame.getBarCode() != null) {
+                        S7controlLK.getinstance().writeStrings(CurrentFrame.getBarCode(), "DB17.0");
+                    }
+                    String J01id = S7controlLK.getinstance().readStrings("DB17.22");
+                    List<Short> liststate = S7controlLK.getinstance().ReadWord("DB17.20", 1);
+                    Short framerequest = liststate.get(0);
+                    // log.info("liststate:" + liststate);
+                    if (framerequest == 1) {
+                        // 閾濇id
+                        String position;
+                        try {
+                            position = dbserve.SelectPositionByFrameBarcode(J01id);
+                        } catch (SQLException e) {
+                            // TODO Auto-generated catch block
+                            position = "0";
+                            e.printStackTrace();
+                        }
+                        Short send;
+                        if (position.equals("0")) {
+                            send = 2;
+                        } else {
+                            send = 1;
+                        }
+                        if (J01id != null) {
+                            int barcodeState = spianMapper.SelectOverState(J01id);// 鑾峰彇璇ラ摑妗嗙殑鐘舵��
+                            if (barcodeState == 0) {// 褰撹閾濇鎵�鏈夌殑鐜荤拑閮芥槸瀹屾垚鐘舵�佹椂鍒犻櫎鍦ㄥ嚭鐗囬槦鍒楃殑鏁版嵁
+                                spianMapper.DeleteQueue(J01id);
+                                // log.info("deleteoutslice:" + J01id);
+                            }
+                        }
+                        S7controlLK.getinstance().WriteWord("DB17.38", (short) send);
+                    }
+                    
+                    String E01id = S7controlLK.getinstance().readStrings("DB17.0");
+                    // log.info("frameno:" + E01id);
+                    List<Short> liststates = S7controlLK.getinstance().ReadWord("DB17.38", 1);
+                    // log.info("frameflip:" + liststates);
+                }else{
+                    jsonObject.append("Plc2", false);
+                }
+
                 if (S7control.getinstance().CheckConnected() == true) {
 
-                    // 閾濇绾夸氦浜�
-                    if (S7controlLK.getinstance().CheckConnected() == true) {
-                        // E02鐜荤拑id
-                        String E02id = S7controlLK.getinstance().readStrings("DB17.40");
-                        // log.info("E02id"+E02id);
-                        outSliceServive.FrameStateUpdate(E02id);
-                        if (CurrentFrame.getBarCode() != null) {
-                            S7controlLK.getinstance().writeStrings(CurrentFrame.getBarCode(), "DB17.0");
-                        }
-                        String J01id = S7controlLK.getinstance().readStrings("DB17.22");
-                        List<Short> liststate = S7controlLK.getinstance().ReadWord("DB17.20", 1);
-                        Short framerequest = liststate.get(0);
-                        // log.info("liststate:" + liststate);
-                        if (framerequest == 1) {
-                            // 閾濇id
-                            String position;
-                            try {
-                                position = dbserve.SelectPositionByFrameBarcode(J01id);
-                            } catch (SQLException e) {
-                                // TODO Auto-generated catch block
-                                position = "0";
-                                e.printStackTrace();
-                            }
-                            Short send;
-                            if (position.equals("0")) {
-                                send = 2;
-                            } else {
-                                send = 1;
-                            }
-                            if (J01id != null) {
-                                int barcodeState = spianMapper.SelectOverState(J01id);// 鑾峰彇璇ラ摑妗嗙殑鐘舵��
-                                if (barcodeState == 0) {// 褰撹閾濇鎵�鏈夌殑鐜荤拑閮芥槸瀹屾垚鐘舵�佹椂鍒犻櫎鍦ㄥ嚭鐗囬槦鍒楃殑鏁版嵁
-                                    spianMapper.DeleteQueue(J01id);
-                                    // log.info("deleteoutslice:" + J01id);
-                                }
-                            }
-                            S7controlLK.getinstance().WriteWord("DB17.38", (short) send);
-                        }
-                        
-                        String E01id = S7controlLK.getinstance().readStrings("DB17.0");
-                        // log.info("frameno:" + E01id);
-                        List<Short> liststates = S7controlLK.getinstance().ReadWord("DB17.38", 1);
-                        // log.info("frameflip:" + liststates);
-                    }
+                    
 
                     // 鑾峰彇褰撳墠鎵爜鏂瑰紡
                     List<Boolean> Scanningmethods = S7control.getinstance().ReadBits("DB101.11.4", 1);
@@ -360,6 +364,8 @@
                             }
                         }
                     }
+                }else{
+                    jsonObject.append("Plc1", false);
                 }
                 jsonObject.append("zhi", zhi);
                 

--
Gitblit v1.8.0