From 4ceb4a8697b05d3176c30e00191296969a98016d Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期三, 19 八月 2020 09:53:42 +0800
Subject: [PATCH] Merge branch 'jsasrs' of https://gitee.com/luxiaotao1123/zy-wcs

---
 src/main/java/com/zy/asrs/controller/SiteController.java |   52 +++++++-----
 src/main/webapp/views/pipeline.html                      |   26 +-----
 src/main/java/com/zy/asrs/domain/vo/SiteTableVo.java     |  103 +++----------------------
 src/main/java/com/zy/core/thread/DevpThread.java         |   23 +++++
 4 files changed, 68 insertions(+), 136 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/SiteController.java b/src/main/java/com/zy/asrs/controller/SiteController.java
index 5679e8f..ca3242f 100644
--- a/src/main/java/com/zy/asrs/controller/SiteController.java
+++ b/src/main/java/com/zy/asrs/controller/SiteController.java
@@ -4,15 +4,18 @@
 import com.core.common.R;
 import com.zy.asrs.domain.vo.PlcErrorTableVo;
 import com.zy.asrs.domain.vo.SiteTableVo;
+import com.zy.core.cache.SlaveConnection;
+import com.zy.core.enums.SlaveType;
+import com.zy.core.model.DevpSlave;
+import com.zy.core.model.protocol.StaProtocol;
+import com.zy.core.properties.SlaveProperties;
+import com.zy.core.thread.DevpThread;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-import java.util.Random;
-import java.util.concurrent.atomic.AtomicInteger;
+import java.util.*;
 
 /**
  * 杈撻�佽澶囨帴鍙�
@@ -22,31 +25,34 @@
 @RequestMapping("/site")
 public class SiteController {
 
-    private AtomicInteger integer = new AtomicInteger();
+    @Autowired
+    private SlaveProperties slaveProperties;
 
     @PostMapping("/table/site")
     @ManagerAuth(memo = "绔欑偣淇℃伅琛�")
     public R siteTable(){
         List<SiteTableVo> list = new ArrayList<>();
-        for (int i=0;i<32;i++){
-            SiteTableVo vo = new SiteTableVo();
-            vo.setDevNo(String.valueOf(i));
-            vo.setWorkNo("1204");
-            vo.setAutoing("Y");
-            vo.setCanining("Y");
-            vo.setCanouting("N");
-            vo.setHighLow("1");
-            vo.setInreqIn("Y");
-            vo.setInreqOut("N");
-            vo.setLoading("Y");
-            if (integer.get()%5 == 0) {
-                vo.setStaNo("0000");
-            } else {
-                vo.setStaNo("9998");
+
+        for (DevpSlave devp : slaveProperties.getDevp()) {
+            DevpThread devpThread = (DevpThread) SlaveConnection.get(SlaveType.Devp, devp.getId());
+            Map<Integer, StaProtocol> station = devpThread.getStation();
+            for (Map.Entry<Integer, StaProtocol> entry : station.entrySet()) {
+                StaProtocol staProtocol = entry.getValue();
+                SiteTableVo vo = new SiteTableVo();
+
+                vo.setDevNo(entry.getKey());    // 绔欑偣缂栧彿
+                vo.setWorkNo(staProtocol.getWorkNo());   //  宸ヤ綔鍙�
+                vo.setAutoing(staProtocol.isAutoing()?"Y":"N");     //  鑷姩
+                vo.setLoading(staProtocol.isLoading()?"Y":"N");     // 鏈夌墿
+                vo.setInEnable(staProtocol.isInEnable()?"Y":"N");   // 鍙叆
+                vo.setOutEnable(staProtocol.isOutEnable()?"Y":"N"); // 鍙嚭
+                vo.setInreq1(staProtocol.isInreq1()?"Y":"N");       // 闇�姹�1
+                vo.setEmptyMk(staProtocol.isEmptyMk()?"Y":"N");     // 绌烘澘淇″彿
+                vo.setStaNo(staProtocol.getStaNo());                // 鐩爣绔�
+
+                list.add(vo);
             }
-            list.add(vo);
         }
-        integer.getAndIncrement();
         return R.ok().add(list);
     }
 
diff --git a/src/main/java/com/zy/asrs/domain/vo/SiteTableVo.java b/src/main/java/com/zy/asrs/domain/vo/SiteTableVo.java
index e4ff581..54cde54 100644
--- a/src/main/java/com/zy/asrs/domain/vo/SiteTableVo.java
+++ b/src/main/java/com/zy/asrs/domain/vo/SiteTableVo.java
@@ -1,15 +1,18 @@
 package com.zy.asrs.domain.vo;
 
+import lombok.Data;
+
 /**
  * Created by vincent on 2020-06-02
  */
+@Data
 public class SiteTableVo {
 
     // 绔欏彿
-    private String devNo;
+    private Integer devNo;
 
     // 宸ヤ綔鍙�
-    private String workNo;
+    private Short workNo;
 
     // 鑷姩
     private String autoing;
@@ -18,100 +21,18 @@
     private String loading;
 
     // 鍙叆
-    private String canining;
+    private String inEnable;
 
     // 鍙嚭
-    private String canouting;
+    private String outEnable;
 
-    // 闇�姹傚叆
-    private String inreqIn;
+    // 闇�姹�1
+    private String inreq1;
 
-    // 闇�姹傚嚭
-    private String inreqOut;
-
-    // 楂樹綆搴�
-    private String highLow;
+    // 绌烘澘淇″彿
+    private String emptyMk;
 
     // 鐩爣绔�
-    private String staNo;
+    private Short staNo;
 
-    public String getDevNo() {
-        return devNo;
-    }
-
-    public void setDevNo(String devNo) {
-        this.devNo = devNo;
-    }
-
-    public String getWorkNo() {
-        return workNo;
-    }
-
-    public void setWorkNo(String workNo) {
-        this.workNo = workNo;
-    }
-
-    public String getAutoing() {
-        return autoing;
-    }
-
-    public void setAutoing(String autoing) {
-        this.autoing = autoing;
-    }
-
-    public String getLoading() {
-        return loading;
-    }
-
-    public void setLoading(String loading) {
-        this.loading = loading;
-    }
-
-    public String getCanining() {
-        return canining;
-    }
-
-    public void setCanining(String canining) {
-        this.canining = canining;
-    }
-
-    public String getCanouting() {
-        return canouting;
-    }
-
-    public void setCanouting(String canouting) {
-        this.canouting = canouting;
-    }
-
-    public String getInreqIn() {
-        return inreqIn;
-    }
-
-    public void setInreqIn(String inreqIn) {
-        this.inreqIn = inreqIn;
-    }
-
-    public String getInreqOut() {
-        return inreqOut;
-    }
-
-    public void setInreqOut(String inreqOut) {
-        this.inreqOut = inreqOut;
-    }
-
-    public String getHighLow() {
-        return highLow;
-    }
-
-    public void setHighLow(String highLow) {
-        this.highLow = highLow;
-    }
-
-    public String getStaNo() {
-        return staNo;
-    }
-
-    public void setStaNo(String staNo) {
-        this.staNo = staNo;
-    }
 }
diff --git a/src/main/java/com/zy/core/thread/DevpThread.java b/src/main/java/com/zy/core/thread/DevpThread.java
index 387fef4..7f092a0 100644
--- a/src/main/java/com/zy/core/thread/DevpThread.java
+++ b/src/main/java/com/zy/core/thread/DevpThread.java
@@ -5,15 +5,19 @@
 import HslCommunication.Profinet.Siemens.SiemensPLCS;
 import HslCommunication.Profinet.Siemens.SiemensS7Net;
 import com.alibaba.fastjson.JSON;
+import com.core.common.DateUtils;
 import com.zy.core.Slave;
 import com.zy.core.ThreadHandler;
 import com.zy.core.cache.MessageQueue;
+import com.zy.core.cache.OutputQueue;
 import com.zy.core.enums.SlaveType;
 import com.zy.core.model.Task;
 import com.zy.core.model.protocol.StaProtocol;
 import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 
+import java.text.MessageFormat;
+import java.util.Date;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
 
@@ -56,6 +60,9 @@
                     default:
                         break;
                 }
+
+                // 蹇冭烦
+                heartbeat();
                 Thread.sleep(400);
             } catch (Exception e) {
                 e.printStackTrace();
@@ -73,8 +80,10 @@
         OperateResult connect = siemensS7Net.ConnectServer();
         if(connect.IsSuccess){
             result = true;
+            OutputQueue.CRN.offer(MessageFormat.format( "銆恵0}銆戣緭閫佺嚎plc杩炴帴鎴愬姛 ===>> [id:{}] [ip:{}] [port:{}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
             log.info("杈撻�佺嚎plc杩炴帴鎴愬姛 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
         } else {
+            OutputQueue.CRN.offer(MessageFormat.format( "銆恵0}銆戣緭閫佺嚎plc杩炴帴澶辫触锛侊紒锛� ===>> [id:{}] [ip:{}] [port:{}]", DateUtils.convert(new Date()), slave.getId(), slave.getIp(), slave.getPort()));
             log.error("杈撻�佺嚎plc杩炴帴澶辫触锛侊紒锛� ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
         }
         siemensS7Net.ConnectClose();
@@ -82,7 +91,7 @@
     }
 
     /**
-     * 璇诲彇鐘舵��
+     * 璇诲彇鐘舵�� ====> 鏁村潡plc
      */
     private void read(){
         OperateResultExOne<byte[]> result = siemensS7Net.Read("DB100.0", (short) 40);
@@ -111,7 +120,7 @@
     }
 
     /**
-     * 鍐欏叆
+     * 鍐欏叆 =====> 鍗曠珯鐐瑰啓鍏�
      */
     private void write(StaProtocol staProtocol){
         if (null == staProtocol) {
@@ -131,6 +140,16 @@
         }
     }
 
+    /**
+     * 蹇冭烦
+     */
+    private void heartbeat(){
+        OperateResult write = siemensS7Net.Write("DB100.50", (short) 1);
+        if (!write.IsSuccess) {
+            log.error("杈撻�佺嚎plc缂栧彿={} 蹇冭烦澶辫触", slave.getId());
+        }
+    }
+
     @Override
     public void close() {
         siemensS7Net.ConnectClose();
diff --git a/src/main/webapp/views/pipeline.html b/src/main/webapp/views/pipeline.html
index 96ba05f..4dc6a30 100644
--- a/src/main/webapp/views/pipeline.html
+++ b/src/main/webapp/views/pipeline.html
@@ -61,9 +61,8 @@
                     <th>鏈夌墿</th>
                     <th>鍙叆</th>
                     <th>鍙嚭</th>
-                    <th>闇�姹傚叆</th>
-                    <th>闇�姹傚嚭</th>
-                    <th>楂樹綆搴�</th>
+                    <th>闇�姹�1</th>
+                    <th>绌烘澘淇″彿</th>
                     <th>鐩爣绔�</th>
                 </tr>
             </thead>
@@ -147,23 +146,11 @@
                         setVal(tr.children("td").eq(1), table[i-1].workNo);
                         setVal(tr.children("td").eq(2), table[i-1].autoing);
                         setVal(tr.children("td").eq(3), table[i-1].loading);
-                        setVal(tr.children("td").eq(4), table[i-1].canining);
-                        setVal(tr.children("td").eq(5), table[i-1].canouting);
-                        setVal(tr.children("td").eq(6), table[i-1].inreqIn);
-                        setVal(tr.children("td").eq(7), table[i-1].inreqOut);
-                        setVal(tr.children("td").eq(8), table[i-1].highLow);
+                        setVal(tr.children("td").eq(4), table[i-1].inEnable);
+                        setVal(tr.children("td").eq(5), table[i-1].outEnable);
+                        setVal(tr.children("td").eq(6), table[i-1].inreq1);
+                        setVal(tr.children("td").eq(7), table[i-1].emptyMk);
                         setVal(tr.children("td").eq(9), table[i-1].staNo);
-
-                        // tr.children("td").eq(0).html(table[i-1].devNo);
-                        // tr.children("td").eq(1).html(table[i-1].workNo);
-                        // tr.children("td").eq(2).html(table[i-1].autoing);
-                        // tr.children("td").eq(3).html(table[i-1].loading);
-                        // tr.children("td").eq(4).html(table[i-1].canining);
-                        // tr.children("td").eq(5).html(table[i-1].canouting);
-                        // tr.children("td").eq(6).html(table[i-1].inreqIn);
-                        // tr.children("td").eq(7).html(table[i-1].inreqOut);
-                        // tr.children("td").eq(8).html(table[i-1].highLow);
-                        // tr.children("td").eq(9).html(table[i-1].staNo);
                     }
                 } else if (res.code === 403){
                     window.location.href = baseUrl+"/login";
@@ -240,7 +227,6 @@
         var html = "";
         for (var i = 0; i < line; i ++){
             html += " <tr>\n" +
-                "       <td></td>\n" +
                 "       <td></td>\n" +
                 "       <td></td>\n" +
                 "       <td></td>\n" +

--
Gitblit v1.9.1