From dd5432591b4018bd1244102b8cf86c22569ec163 Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期三, 24 一月 2024 16:40:15 +0800
Subject: [PATCH] 地址参数设置增加  设定按钮

---
 springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java |  245 ++++++++++++++++++++++--------------------------
 1 files changed, 114 insertions(+), 131 deletions(-)

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 2977c20..d81c8d7 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
@@ -16,6 +16,7 @@
 import com.example.springboot.entity.Queue;
 import com.example.springboot.entity.StorageCage;
 import com.example.springboot.entity.alarmmg;
+import com.example.springboot.entity.north_glass_buffer1;
 import com.example.springboot.mapper.HomeMapper;
 import com.example.springboot.mapper.SpianMapper;
 
@@ -31,39 +32,41 @@
     // 鍑虹墖闃熷垪鏄惁鍏佽鍑虹墖
     public static Boolean isAllowQueue = true;
     public static Boolean isAllowReordering = true;
+    // 鍑虹墖闃熷垪璀﹀憡
+    public static Boolean isQueueWarning = false;
     // 閾濇id
     public static String FrameNo = "";
     // 鏄惁闇�瑕佹墜鍔ㄧ‘璁ょ幓鐠�
     public static Boolean isConfirm = false;
+    // 寰呯‘璁ょ殑鍑虹墖闃熷垪
+    public static List<north_glass_buffer1> AluminumFrame;
 
-    private Configuration config;
+    // private Configuration config;
 
     private StorageCageService storageCageService;
 
-    public Plchome() throws IOException {
-        config = new Configuration("config.properties");
-    }
+    // public Plchome() throws IOException {
+    // config = new Configuration("config.properties");
+    // }
 
     // public static Map b=new HashMap<>();
     // b.put()
     @Override
     public void run() {
         while (this != null) {
+            JSONObject jsonObject = new JSONObject();
             try {
                 Thread.sleep(1000);
-
-            } catch (InterruptedException e) {
-                e.printStackTrace();
-            }
-            JSONObject jsonObject = new JSONObject();
-
-            // 娉ㄥ叆mapper
+                // 娉ㄥ叆mapper
 
             homeMapper = WebSocketServer.applicationContext.getBean(HomeMapper.class);
             spianMapper = WebSocketServer.applicationContext.getBean(SpianMapper.class);
             spianService = WebSocketServer.applicationContext.getBean(SpianService.class);
             outSliceServive = WebSocketServer.applicationContext.getBean(OutSliceServive.class);
             north_Glass_Buffer1Service = WebSocketServer.applicationContext.getBean(North_Glass_Buffer1Service.class);
+            storageCageService = WebSocketServer.applicationContext.getBean(StorageCageService.class);
+            dbserve = WebSocketServer.applicationContext.getBean(JdbcConnections.class);
+
             // 绗煎瓙浣跨敤鎯呭喌
             List<StorageCage> tableData = homeMapper.selectAll();
             jsonObject.append("tableData", tableData);
@@ -104,21 +107,91 @@
             jsonObject.append("listoutslice", listoutslice);
             // 鑾峰彇褰撳墠鍑虹墖闃熷垪鍑虹墖鐘舵��
             jsonObject.append("isAllowQueue", Plchome.isAllowQueue);
+            // 鑾峰彇鍑虹墖闃熷垪璀﹀憡鐘舵��
+            jsonObject.append("isQueueWarning", Plchome.isQueueWarning);
             // 鑾峰彇褰撳墠鍑虹墖闃熷垪璋冨簭鐘舵��
             jsonObject.append("isAllowReordering", Plchome.isAllowReordering);
             // 鏄惁闇�瑕佷汉宸ョ‘璁や笂鐗囩幓鐠�
             jsonObject.append("isConfirm", isConfirm);
-            String framenos="X21763329601FB";
-                if (!framenos.equals(Plchome.FrameNo)) {
-                    Plchome.FrameNo = framenos;
+            // 鏌ヨ褰撳墠閾濇淇℃伅
+            Out_slice CurrentFrame = outSliceServive.SelectCurrentFrame();
+            jsonObject.append("CurrentFrame", CurrentFrame);
+
+            // String E01id = new String( S7controlLK.getinstance().ReadByte("DB17.0",16));
+            // String J01id = new String( S7controlLK.getinstance().ReadByte("DB17.22",14));
+
+            
+
+            
+            
+
+           
+
+            // 閾濇绾夸氦浜�
+            if (CurrentFrame != null) {
+                S7controlLK.getinstance().writeStrings(CurrentFrame.getBarCode(),"DB17.0");
+            }
+            String E01id=S7controlLK.getinstance().readStrings("DB17.0");
+            String J01id=S7controlLK.getinstance().readStrings("DB17.22");
+            
+            List<Short> liststates=S7controlLK.getinstance().ReadWord("DB17.38", 1);
+            List<Short> liststate=S7controlLK.getinstance().ReadWord("DB17.20", 1);
+            Short framerequest = liststate.get(0);
+                if (framerequest == 1) {
+                    // 閾濇id
+                    String position;
                     try {
-                        north_Glass_Buffer1Service.AddOutSliceS(Plchome.FrameNo);
+                        position = dbserve.SelectPositionByFrameBarcode(J01id);
                     } catch (SQLException e) {
                         // TODO Auto-generated catch block
+                        position = "0";
                         e.printStackTrace();
                     }
+                    Short send;
+                    if (position.equals("0")) {
+                        send = 0;
+                    } else {
+                        send = 1;
+                    }
+                    S7controlLK.getinstance().WriteWord("DB17.38", (short) send);
                 }
+            
+            
+
             if (S7control.getinstance().CheckConnected() == true) {
+                // 鑾峰彇褰撳墠鎵爜鏂瑰紡
+
+                List<Boolean> Scanningmethods = S7control.getinstance().ReadBits("DB101.11.4", 1);
+                if (Scanningmethods != null) {
+                    for (Boolean Scanningmethod : Scanningmethods) {
+                        jsonObject.append("Scanningmethod", Scanningmethod);
+                    }
+                }
+
+                String CurrrentGlassId = spianService.queGlassid("DB103.256", 14).toString();
+                jsonObject.append("CurrrentGlassId", CurrrentGlassId);
+
+                // 鑾峰彇D01-D06,A01,A02,B01,B02鐘舵��
+                List<Short> DeviceList = S7control.getinstance().ReadWord("DB103.0", 10);
+                jsonObject.append("DeviceList", DeviceList);
+                // 鑾峰彇D01-D06,A01,A02,B01,B02鐜荤拑id
+                List<String> GlassIdList = new ArrayList<String>();
+                GlassIdList.add(spianService.queGlassid("DB103.44", 14).toString());
+                GlassIdList.add(spianService.queGlassid("DB103.58", 14).toString());
+
+                GlassIdList.add(spianService.queGlassid("DB103.184", 14).toString());
+                GlassIdList.add(spianService.queGlassid("DB103.212", 14).toString());
+
+                GlassIdList.add(spianService.queGlassid("DB103.128", 14).toString());
+                GlassIdList.add(spianService.queGlassid("DB103.142", 14).toString());
+                GlassIdList.add(spianService.queGlassid("DB103.156", 14).toString());
+
+                GlassIdList.add(spianService.queGlassid("DB103.72", 14).toString());
+                GlassIdList.add(spianService.queGlassid("DB103.86", 14).toString());
+                GlassIdList.add(spianService.queGlassid("DB103.100", 14).toString());
+                GlassIdList.add(spianService.queGlassid("DB103.114", 14).toString());
+                jsonObject.append("GlassIdList", GlassIdList);
+
                 // 璇诲幓Plc杩涚墖杞︿笌鍑虹墖杞︿綅缃甒
                 List<String> addressList = new ArrayList<String>();
                 addressList.add("DB106.12");
@@ -141,21 +214,34 @@
                     if (inglassInfo.size() > 0) {
                         jsonObject.append("loadglassheight", inglassInfo.get(0) * 70);
                     }
-
                 }
-
-                // 鑾峰彇閾濇idDB106.DBW64锛屾坊鍔犲埌鍑虹墖闃熷垪
+                // // 鑾峰彇閾濇idDB106.DBW64锛屾坊鍔犲埌鍑虹墖闃熷垪
+                // String frameno="X21763329601FB";
                 String frameno = spianService.queGlassid("DB103.270", 14).toString();
-                // String frameno="X12345611002GV";
-                frameno="X21763329601FB";
                 if (!frameno.equals(Plchome.FrameNo)) {
                     Plchome.FrameNo = frameno;
                     try {
-                        north_Glass_Buffer1Service.AddOutSliceS(Plchome.FrameNo);
+                        Short num = 0;
+                        List<north_glass_buffer1> north_glass_buffer1s = north_Glass_Buffer1Service
+                                .SelectAluminumFrameInfoById(Plchome.FrameNo);
+                        for (north_glass_buffer1 north_glass_buffer1 : north_glass_buffer1s) {
+                            if (north_glass_buffer1.getstorageCage() == null) {
+                                break;
+                            }
+                            num++;
+                        }
+                        if (num == north_glass_buffer1s.size()) {
+                            north_Glass_Buffer1Service.AddOutSliceS(Plchome.FrameNo);
+                        } else {
+                            Plchome.AluminumFrame = north_glass_buffer1s;
+                        }
                     } catch (SQLException e) {
                         // TODO Auto-generated catch block
                         e.printStackTrace();
                     }
+                }
+                if (AluminumFrame != null) {
+                    jsonObject.append("AluminumFrame", AluminumFrame);
                 }
 
                 // 鑾峰彇杩涚墖璇锋眰鐘舵��
@@ -182,61 +268,15 @@
                 for (Boolean emergencystop : emergencystops) {
                     jsonObject.append("emergencystop", emergencystop);
                 }
-
-                // 缁堟缁х画鎸夐挳
-                List<String> niuanaddressList3 = Arrays.asList(config.getProperty("Parameter2.stop").split(","));
-                List<Boolean> anniuread = S7control.getinstance().readBits(niuanaddressList3);
-                // Boolean[] value4 = { false, false};
-                // List<Boolean> anniuread = new ArrayList<>(Arrays.asList(value4));
-                Boolean[] value5 = { true };
-                List<Boolean> resets = new ArrayList<>(Arrays.asList(value5));
-                short[] anniuparams = new short[anniuread.size()];
-                for (int i = 0; i < anniuread.size(); i++) {
-                    boolean value = anniuread.get(i);
-                    anniuparams[i] = value ? (short) 1 : (short) 0;
-                }
-
-                short[] resets2 = new short[resets.size()];
-                for (int i = 0; i < resets.size(); i++) {
-                    boolean value = resets.get(i);
-                    resets2[i] = value ? (short) 1 : (short) 0;
-                }
-
-                for (short number : resets2) {
-
-                    if (number == 1) {
-                        jsonObject.append("Abort", anniuparams);
-
-                    }
-
-                }
             }
 
-            // 閾濇绾夸氦浜�
+            } catch (InterruptedException e) {
+                e.printStackTrace();
+            }
+            
 
-            // //閾濇id璇锋眰瀛�
-            // List<Short> framerequest = S7control.getinstance().ReadWord("閾濇id璇锋眰瀛楀湴鍧�", 1);
-            // if(framerequest!=null){
-            // //閾濇id
-            // String franmeno= spianService.queGlassid("閾濇id鍦板潃", 14).toString();
-            // String position;
-            // try {
-            // position=dbserve.SelectPositionByFrameBarcode(franmeno);
-            // } catch (SQLException e) {
-            // // TODO Auto-generated catch block
-            // position="0";
-            // e.printStackTrace();
-            // }
-            // Short send;
-            // if(position=="0"){
-            // send=0;
-            // }else{
-            // send=1;
-            // }
-            // S7control.getinstance().WriteWord("閾濇缈昏浆鍙戦�佸湴鍧�", (short)send);
-            // }
-            storageCageService = WebSocketServer.applicationContext.getBean(StorageCageService.class);
-            dbserve = WebSocketServer.applicationContext.getBean(JdbcConnections.class);
+            
+            
             boolean dbconnected = false;
             try {
                 dbserve.getConn();
@@ -257,64 +297,7 @@
                         List<String> messages = webserver.getMessages();
 
                         if (!messages.isEmpty()) {
-                            // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛�
-                            // String lastMessage = messages.get(messages.size() - 1);
-                            // System.out.println("lastMessage锛�" + lastMessage);
-                            // JSONArray messageArray = new JSONArray(lastMessage);
-                            // 
-                            // try {
-                            //     // 妫�鏌ョ储寮曟槸鍚︽湁鏁�
-                            //     if (messageArray.getJSONArray(0).size() > 0) {
-                            //         // 鑾峰彇娑堟伅鏁扮粍
-                            //         JSONArray jsonArray = messageArray.getJSONArray(0);
-                            //         // 鍒涘缓涓�涓竷灏斿�煎垪琛�
-                            //         List<Boolean> sValue = new ArrayList<>();
-                            //         // 閬嶅巻娑堟伅鏁扮粍
-                            //         for (int i = 0; i < jsonArray.size(); i++) {
-                            //             // 鑾峰彇娑堟伅鏁扮粍涓殑鍊�
-                            //             Object value = jsonArray.get(i);
-                            //             // 妫�鏌ュ�兼槸鍚︽湁鏁�
-                            //             if (value != null && !value.toString().equals("null")) {
-                            //                 try {
-                            //                     // 绉婚櫎闈炴暟瀛楀拰鏁板瓧瀛楃
-                            //                     String cleanedValue = value.toString().replaceAll("[^0-9-]", "");
-                            //                     // 瑙f瀽涓哄竷灏斿��
-                            //                     boolean val = "1".equals(cleanedValue.trim());
-                            //                     // 灏嗗竷灏斿�兼坊鍔犲埌甯冨皵鍊煎垪琛ㄤ腑
-                            //                     sValue.add(val);
-                            //                     System.out.println(
-                            //                             "messageValue: " + Arrays.asList(val) + " added to the list");
-
-                            //                 } catch (NumberFormatException e) {
-                            //                     // 濡傛灉鏃犳硶瑙f瀽涓� boolean 绫诲瀷锛屽垯蹇界暐璇ラ儴鍒�
-                            //                     System.err.println("Could not parse value: " + value);
-                            //                 }
-                            //             }
-                            //         }
-                            //         // 缁堟杩涚墖浠诲姟
-                            //         boolean Value1 = sValue.get(0);
-                            //         boolean Value2 = sValue.get(1);
-
-                            //         if (Value1) {
-                            //             storageCageService.EndTask(0);
-
-                            //         }
-                            //         if (Value2) {
-                            //             storageCageService.EndTask(1);
-
-                            //         }
-                            //         // 妫�鏌ュ竷灏斿�煎垪琛ㄦ槸鍚︿负绌�
-                            //         if (!sValue.isEmpty()) {
-
-                            //             // 璋冪敤 S7control.getinstance().WriteBit 鏂规硶灏嗗竷灏斿�煎垪琛ㄥ啓鍏ュ湴鍧�鍒楄〃
-                            //             S7control.getinstance().WriteBit(niuanaddressList3, sValue);
-                            //             System.out.println(
-                            //                     "Values " + sValue + " written to PLC at address " + niuanaddressList3);
-                            //         }
-                            //     }
-                            // } catch (Exception e) {
-                            //     System.err.println("An error occurred while writing bit to PLC: " + e.getMessage());
-                            // }
+                            // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛�
                             webserver.clearMessages();
                         }
 

--
Gitblit v1.8.0