From c0b596275d583b0874e501f49a90e7a1dfd879e3 Mon Sep 17 00:00:00 2001
From: wuyouming666 <2265557248@qq.com>
Date: 星期四, 09 五月 2024 09:37:48 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes
---
springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java | 438 +++++++++++++++++++++++++++++++++---------------------
1 files changed, 264 insertions(+), 174 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 a1e7574..8fa8143 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
@@ -1,29 +1,25 @@
package com.example.springboot.component;
-import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
+import lombok.extern.slf4j.Slf4j;
-import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import com.example.springboot.service.*;
+
import org.springframework.beans.factory.annotation.Autowired;
-import com.example.springboot.entity.Glass;
import com.example.springboot.entity.Out_slice;
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.entity.device.PlcParameterObject;
import com.example.springboot.mapper.HomeMapper;
import com.example.springboot.mapper.SpianMapper;
+@Slf4j
public class Plchome extends Thread {
@Autowired
@@ -41,7 +37,7 @@
// 閾濇id
public static String FrameNo = "";
// 鏄惁闇�瑕佹墜鍔ㄧ‘璁ょ幓鐠�
- public static Boolean isConfirm = false;
+ public static Boolean isConfirm = true;
// 寰呯‘璁ょ殑鍑虹墖闃熷垪
public static List<north_glass_buffer1> AluminumFrame;
@@ -51,6 +47,13 @@
public static Boolean FeedState = false;
+ public static StringBuilder feedglassid;
+
+ public static Boolean dbconnected = false;
+
+ public static Boolean plc1 = true;
+ public static Boolean plc2 = false;
+
// public Plchome() throws IOException {
// config = new Configuration("config.properties");
// }
@@ -59,12 +62,7 @@
// b.put()
@Override
public void run() {
- while (this != null) {
- JSONObject jsonObject = new JSONObject();
- try {
- Thread.sleep(1000);
- // 娉ㄥ叆mapper
- homeMapper = WebSocketServer.applicationContext.getBean(HomeMapper.class);
+ homeMapper = WebSocketServer.applicationContext.getBean(HomeMapper.class);
spianMapper = WebSocketServer.applicationContext.getBean(SpianMapper.class);
spianService = WebSocketServer.applicationContext.getBean(SpianService.class);
outSliceServive = WebSocketServer.applicationContext.getBean(OutSliceServive.class);
@@ -72,6 +70,50 @@
.getBean(North_Glass_Buffer1Service.class);
storageCageService = WebSocketServer.applicationContext.getBean(StorageCageService.class);
dbserve = WebSocketServer.applicationContext.getBean(JdbcConnections.class);
+ while (this != null) {
+ Short zhi = 0;
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.append("feedglassid", feedglassid);
+
+ try {
+ Thread.sleep(1000);
+ // 娉ㄥ叆mapper
+
+
+ // boolean dbconnected = false;
+ try {
+ dbserve.getConn();
+ dbconnected = true;
+ } catch (Exception e) {
+ e.printStackTrace();
+ dbconnected = false;
+ log.info("dbconnected:" + dbconnected);
+ }
+ jsonObject.append("dbconnected", dbconnected);
+ // // 鑾峰彇褰撳墠鎵爜鏋幓鐠僫d
+ // String CurrrentGlassId = "X22595911002GV";
+ // if (CurrrentGlassId.toString() != "" && CurrrentGlassId.toString() != null) {
+ // north_glass_buffer1 form6 =
+ // dbserve.SelectGlassByGlassIdOrderIdFrameIdouts(CurrrentGlassId, "",
+ // "");
+ // if (form6.getbarcode() != null) {
+ // jsonObject.append("form6", form6);
+ // double width = 0;
+ // double height = 0;
+ // if (form6.getglassheightmm() < form6.getglasslengthmm()) {
+ // height = form6.getglassheightmm();
+ // width = form6.getglasslengthmm();
+ // } else {
+ // height = form6.getglasslengthmm();
+ // width = form6.getglassheightmm();
+ // }
+ // if (height < 380 || width < 380 || height > 1810 || width > 2760) {
+ // zhi = 600;
+ // } else {
+ // zhi = spianService.selectAlls(form6);
+ // }
+ // }
+ // }
// 绗煎瓙浣跨敤鎯呭喌
List<StorageCage> tableData = homeMapper.selectAll();
@@ -125,22 +167,33 @@
// String E01id = new String( S7controlLK.getinstance().ReadByte("DB17.0",16));
// String J01id = new String( S7controlLK.getinstance().ReadByte("DB17.22",14));
-
- // if (S7control.getinstance().CheckConnected() == true) {
-
-
-
- // 閾濇绾夸氦浜�
- if (S7controlLK.getinstance().CheckConnected() == true) {
+ try {
+ // 閾濇绾夸氦浜�
+ // if (S7controlLK.getinstance().CheckConnected() == true) {
+ // E02鐜荤拑id
+ // log.info("frame1"+S7controlLK.getinstance().CheckConnected());
+ String E02id="";
+ try {
+ E02id= S7controlLK.getinstance().readStrings("DB17.40");
+ plc2=true;
+ } catch (Exception e) {
+ // TODO: handle exception
+ plc2=false;
+ e.printStackTrace();
+ }
+
+ jsonObject.append("Plc2", plc2);
+ // log.info("閾濇绾胯鍙�2"+S7controlLK.getinstance().CheckConnected());
+
+ // log.info("E02id"+E02id);
+ outSliceServive.FrameStateUpdate(E02id);
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);
+ // log.info("liststate:" + liststate);
if (framerequest == 1) {
// 閾濇id
String position;
@@ -153,176 +206,213 @@
}
Short send;
if (position.equals("0")) {
- send = 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{
+ // log.info("Plc2"+S7controlLK.getinstance().CheckConnected());
+ // jsonObject.append("Plc2", false);
+ // }
+ } catch (Exception e) {
+ e.printStackTrace();
}
- // 鑾峰彇褰撳墠鎵爜鏂瑰紡
- List<Boolean> Scanningmethods = S7control.getinstance().ReadBits("DB101.11.4", 1);
- if (Scanningmethods != null) {
- for (Boolean Scanningmethod : Scanningmethods) {
- jsonObject.append("Scanningmethod", Scanningmethod);
+ 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);
+ }
}
- }
- // 鑾峰彇褰撳墠鎵爜鏋幓鐠僫d
- 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");
- addressList.add("DB106.0");
- List<Short> paramlist = S7control.getinstance().ReadWord(addressList);
- if (paramlist != null) {
- jsonObject.append("params", paramlist);
- }
- // // 鑾峰彇杩涚墖杞︾姸鎬�
- // List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8",
- // 1);// 鑾峰彇杩涚墖杞︾姸鎬�
- // if (datas1ListState != null) {
- // boolean exist1 = datas1ListState.contains((short) 0);
- // jsonObject.append("zhuangtai", exist1);
- // }
-
- // // 鑾峰彇杩涚墖鐜荤拑淇℃伅
- // List<Short> inglassInfo = S7control.getinstance().ReadWord("DB106.24", 1);
- // if (inglassInfo != null) {
- // if (inglassInfo.size() > 0) {
- // jsonObject.append("loadglassheight", inglassInfo.get(0) * 70);
- // }
- // }
- // // 鑾峰彇閾濇idDB106.DBW64锛屾坊鍔犲埌鍑虹墖闃熷垪
- // String frameno="X21763329601FB";
- String frameno = spianService.queGlassid("DB103.270", 14).toString();
- if (!frameno.equals(Plchome.FrameNo)) {
- Plchome.FrameNo = frameno;
- try {
- 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;
+ // 鑾峰彇褰撳墠鎵爜鏋幓鐠僫d
+ String CurrrentGlassId = spianService.queGlassid("DB103.256", 14).toString();
+ if (CurrrentGlassId.toString() != "" && CurrrentGlassId.toString() != null) {
+ north_glass_buffer1 form6 = dbserve.SelectGlassByGlassIdOrderIdFrameIdouts(CurrrentGlassId, "",
+ "");
+ if (form6.getbarcode() != null) {
+ jsonObject.append("form6", form6);
+ double width = 0;
+ double height = 0;
+ if (form6.getglassheightmm() < form6.getglasslengthmm()) {
+ height = form6.getglassheightmm();
+ width = form6.getglasslengthmm();
+ } else {
+ height = form6.getglasslengthmm();
+ width = form6.getglassheightmm();
}
- num++;
+ if (height < 380 || width < 380 || height > 1810 || width > 2760) {
+ zhi = 600;
+ } else {
+ zhi = spianService.selectAlls(form6);
+ }
}
- if (num == north_glass_buffer1s.size()) {
- north_Glass_Buffer1Service.AddOutSliceS(Plchome.FrameNo);
+ }
+
+ 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");
+ addressList.add("DB106.0");
+ List<Short> paramlist = S7control.getinstance().ReadWord(addressList);
+ if (paramlist != null) {
+ jsonObject.append("params", paramlist);
+ }
+ // // 鑾峰彇杩涚墖杞︾姸鎬�
+ // List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8",
+ // 1);// 鑾峰彇杩涚墖杞︾姸鎬�
+ // if (datas1ListState != null) {
+ // boolean exist1 = datas1ListState.contains((short) 0);
+ // jsonObject.append("zhuangtai", exist1);
+ // }
+
+ // // 鑾峰彇杩涚墖鐜荤拑淇℃伅
+ // List<Short> inglassInfo = S7control.getinstance().ReadWord("DB106.24", 1);
+ // if (inglassInfo != null) {
+ // if (inglassInfo.size() > 0) {
+ // jsonObject.append("loadglassheight", inglassInfo.get(0) * 70);
+ // }
+ // }
+ // // 鑾峰彇閾濇idDB106.DBW64锛屾坊鍔犲埌鍑虹墖闃熷垪
+ // String frameno="X21763329601FB";
+ String frameno = spianService.queGlassid("DB103.270", 11).toString();
+ if (!frameno.equals(Plchome.FrameNo)) {
+ Plchome.FrameNo = frameno;
+ try {
+ 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);
+ }
+
+ // 澶嶄綅鍊掕鏃�
+ // 鍦板潃104.9.6
+ List<Boolean> countdown = S7control.getinstance().ReadBits("DB104.9.6", 1);
+ for (Boolean countdowns : countdown) {
+ jsonObject.append("countdown", countdowns);
+ }
+ // jsonObject.append("countdown", true);
+ // 澶嶄綅瀹屾垚淇″彿
+ List<Boolean> resetss = S7control.getinstance().ReadBits("DB103.284", 1);
+ for (Boolean reset : resetss) {
+ jsonObject.append("reset", reset);
+ }
+
+ // 鏄惁鎬ュ仠
+ List<Boolean> emergencystops = S7control.getinstance().ReadBits("DB104.5.1", 1);
+ for (Boolean emergencystop : emergencystops) {
+ jsonObject.append("emergencystop", emergencystop);
+ }
+ // 鑾峰彇杩涚墖璇锋眰鐘舵��
+ List<Short> D01Request = S7control.getinstance().ReadWord("DB106.24", 1);
+ boolean D01RequestState = D01Request.contains((short) 1);
+ jsonObject.append("D01RequestState", D01RequestState);
+
+ // 鑾峰彇杩涚墖鍙戦�佺姸鎬�
+ List<Short> D01respnse = S7control.getinstance().ReadWord("DB106.16", 1);
+ boolean D01ResponseState = D01respnse.contains((short) 1);
+ // jsonObject.append("D01RequestState", D01RequestState);
+ // 鑷姩杩涚墖
+ if (isConfirm == true && form3.getglassId() != null && form3.getglassId() != "") {
+ double width = 0;
+ double height = 0;
+ if (form3.getglassheight() < form3.getglasswidth()) {
+ height = form3.getglassheight();
+ width = form3.getglasswidth();
} else {
- Plchome.AluminumFrame = north_glass_buffer1s;
+ height = form3.getglasswidth();
+ width = form3.getglassheight();
}
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
+ if (height < 380 || width < 380 || height > 1810 || width > 2760) {
+ zhi = 600;
+ } else {
+ if (D01RequestState == true && D01ResponseState != true) {
+ zhi = storageCageService.InsertQueueGlassIds((short) 1, form3);
+ }
+ }
}
+ plc1=true;
+ } else {
+ plc1=false;
+ log.info("Plc1" + S7controlLK.getinstance().CheckConnected());
}
- if (AluminumFrame != null) {
- jsonObject.append("AluminumFrame", AluminumFrame);
- }
-
- // 澶嶄綅鍊掕鏃�
- // 鍦板潃104.9.6
- List<Boolean> countdown = S7control.getinstance().ReadBits("DB104.9.6", 1);
- for (Boolean countdowns : countdown) {
- jsonObject.append("countdown", countdowns);
- }
- // jsonObject.append("countdown", true);
- // 澶嶄綅瀹屾垚淇″彿
- List<Boolean> resetss = S7control.getinstance().ReadBits("DB103.284", 1);
- for (Boolean reset : resetss) {
- jsonObject.append("reset", reset);
- }
-
- // 鏄惁鎬ュ仠
- List<Boolean> emergencystops = S7control.getinstance().ReadBits("DB104.5.1", 1);
- for (Boolean emergencystop : emergencystops) {
- jsonObject.append("emergencystop", emergencystop);
- }
- // 鑾峰彇杩涚墖璇锋眰鐘舵��
- List<Short> D01Request = S7control.getinstance().ReadWord("DB106.24", 1);
- boolean D01RequestState = D01Request.contains((short) 1);
- jsonObject.append("D01RequestState", D01RequestState);
-
- // 鑾峰彇杩涚墖鍙戦�佺姸鎬�
- List<Short> D01respnse = S7control.getinstance().ReadWord("DB106.16", 1);
- boolean D01ResponseState = D01respnse.contains((short) 1);
- // jsonObject.append("D01RequestState", D01RequestState);
- // 鑷姩杩涚墖
- isConfirm=true;
- if (isConfirm == true && form3.getglassId() != null && form3.getglassId() != "") {
- if ((form3.getglassheight() < 380 || form3.getglasswidth() < 390 || form3.getglassheight() > 1810
- || form3.getglasswidth() > 2760)
- || (form3.getglassheight() < 390 || form3.getglasswidth() < 380
- || form3.getglassheight() > 2760 || form3.getglasswidth() > 1810)) {
- FeedState = true;
- jsonObject.append("FeedState", FeedState);
- FeedState = false;
- } else {
- if (D01RequestState == true && D01ResponseState != true) {
- storageCageService.InsertQueueGlassId((short) 1, form3);
+ jsonObject.append("zhi", zhi);
+ jsonObject.append("Plc1", plc1);
+ // jsonObject.append("params", new short[] { 30, 40, });
+ ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("Home");
+ if (sendwServer != null) {
+ for (WebSocketServer webserver : sendwServer) {
+ if (webserver != null && webserver.session.isOpen()) {
+ webserver.sendMessage(jsonObject.toString());
+ List<String> messages = webserver.getMessages();
+ if (!messages.isEmpty()) {
+ // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛�
+ webserver.clearMessages();
+ }
+ } else {
+ log.info("Home is closed");
}
}
}
-
- // }
-
- } catch (InterruptedException e) {
+ } catch (InterruptedException | SQLException e) {
e.printStackTrace();
}
- boolean dbconnected = false;
- try {
- dbserve.getConn();
- dbconnected = true;
- } catch (Exception e) {
- // TODO: handle exception
- dbconnected = false;
- }
- jsonObject.append("dbconnected", dbconnected);
- // jsonObject.append("params", new short[] { 30, 40, });
- ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("Home");
- if (sendwServer != null) {
- for (WebSocketServer webserver : sendwServer) {
- webserver.sendMessage(jsonObject.toString());
-
- if (webserver != null) {
-
- List<String> messages = webserver.getMessages();
-
- if (!messages.isEmpty()) {
- // // 灏嗘渶鍚庝竴涓秷鎭浆鎹负鏁存暟绫诲瀷鐨勫垪琛�
- webserver.clearMessages();
- }
-
- }
-
- }
- }
}
}
}
--
Gitblit v1.8.0