| | |
| | | package com.example.springboot.component; |
| | | |
| | | import cn.hutool.json.JSONObject; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | |
| | | 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.mapper.HomeMapper; |
| | | import com.example.springboot.mapper.SpianMapper; |
| | | import com.example.springboot.service.JdbcConnections; |
| | | import com.example.springboot.service.North_Glass_Buffer1Service; |
| | | import com.example.springboot.service.OutSliceServive; |
| | | import com.example.springboot.service.SpianService; |
| | | |
| | | |
| | | public class Plchome extends Thread { |
| | | |
| | | @Autowired |
| | | private HomeMapper homeMapper; |
| | | private OutSliceServive outSliceServive; |
| | | private SpianMapper spianMapper; |
| | | private SpianService spianService; |
| | | private North_Glass_Buffer1Service north_Glass_Buffer1Service; |
| | | private JdbcConnections dbserve; |
| | | //出片队列是否允许出片 |
| | | public static Boolean isAllowQueue=true; |
| | | //铝框id |
| | | public static String FrameNo; |
| | | //是否需要手动确认玻璃 |
| | | public static Boolean isConfirm=false; |
| | | // public static Map b=new HashMap<>(); |
| | | // b.put() |
| | | @Override |
| | | public void run() { |
| | | while (this != null) { |
| | | try { |
| | | Thread.sleep(1000); |
| | | } catch (InterruptedException e) { |
| | | e.printStackTrace(); |
| | | } |
| | | JSONObject jsonObject = new JSONObject(); |
| | | |
| | | // 注入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); |
| | | // 笼子使用情况 |
| | | List<StorageCage> tableData = homeMapper.selectAll(); |
| | | jsonObject.append("tableData", tableData); |
| | | // 格理片笼格子状态 |
| | | List<StorageCage> cagelist1 = homeMapper.selectRack1(); |
| | | List<StorageCage> cagelist2 = homeMapper.selectRack2(); |
| | | List<StorageCage> cagelist3 = homeMapper.selectRack3(); |
| | | List<StorageCage> cagelist4 = homeMapper.selectRack4(); |
| | | jsonObject.append("cagelist1", cagelist1); |
| | | jsonObject.append("cagelist2", cagelist2); |
| | | jsonObject.append("cagelist3", cagelist3); |
| | | jsonObject.append("cagelist4", cagelist4); |
| | | // 进出片任务 |
| | | List<StorageCage> tasklist1 = homeMapper.selectinout(3); |
| | | List<StorageCage> tasklist2 = homeMapper.selectinout(2); |
| | | jsonObject.append("tasklist1", tasklist1); |
| | | jsonObject.append("tasklist2", tasklist2); |
| | | // 查询报警信息 |
| | | List<alarmmg> alarmmg = homeMapper.SelectAlarmmgInfo(); |
| | | jsonObject.append("alarmmg", alarmmg); |
| | | // 读去Plc进片车与出片车位置W |
| | | 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);// 获取进片车状态 |
| | | 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); |
| | | } |
| | | |
| | | // 伍 获取进是否有待确认的玻璃id |
| | | String queid = spianMapper.Selectqueueid(); |
| | | int state = spianMapper.Selectqueuestate(); |
| | | jsonObject.append("queid", queid); |
| | | jsonObject.append("state", state); |
| | | // 获取扫码位与上片位玻璃信息 |
| | | Queue form2 = homeMapper.GetQueueInfo(2); |
| | | Queue form3 = homeMapper.GetQueueInfo(1); |
| | | if(form2.getglassId()!=null&&form2.getglassId()!=""){ |
| | | jsonObject.append("form2", form2); |
| | | } |
| | | if(form3.getglassId()!=null&&form3.getglassId()!=""){ |
| | | jsonObject.append("form3", form3); |
| | | } |
| | | // 获取出片队列信息 |
| | | List<Out_slice> listoutslice=outSliceServive.SelectProductionqueue(); |
| | | // List<Out_slice> listoutslice = homeMapper.SelectProductionqueue(); |
| | | // for (Out_slice out_slice : listoutslice) { |
| | | // out_slice.setstorageCage(homeMapper.SelectStorageGlassById(out_slice.getGlassId())); |
| | | // } |
| | | jsonObject.append("listoutslice", listoutslice); |
| | | //获取当前出片队列状态 |
| | | jsonObject.append("isAllowQueue",Plchome.isAllowQueue); |
| | | |
| | | //获取铝框idDB106.DBW64 |
| | | // String frameno=spianService.queGlassid("DB106.24",14).toString(); |
| | | // if(frameno!=Plchome.FrameNo){ |
| | | // Plchome.FrameNo=frameno; |
| | | // } |
| | | // Plchome.FrameNo="123"; |
| | | // try { |
| | | // north_Glass_Buffer1Service.AddOutSliceS(Plchome.FrameNo); |
| | | // } catch (SQLException e) { |
| | | // // TODO Auto-generated catch block |
| | | // e.printStackTrace(); |
| | | // } |
| | | //是否需要人工确认上片玻璃 |
| | | jsonObject.append("isConfirm", isConfirm); |
| | | |
| | | //铝框线交互 |
| | | |
| | | // //铝框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); |
| | | // } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | dbserve = WebSocketServer.applicationContext.getBean(JdbcConnections.class); |
| | | 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, }); |
| | | WebSocketServer sendwServer = WebSocketServer.sessionMap.get("Home"); |
| | | if (sendwServer != null) { |
| | | sendwServer.sendMessage(jsonObject.toString()); |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | } |
| | | } |
| | | package com.example.springboot.component;
|
| | |
|
| | | import cn.hutool.json.JSONObject;
|
| | |
|
| | | import java.sql.SQLException;
|
| | | import java.util.ArrayList;
|
| | | import java.util.List;
|
| | |
|
| | | import org.springframework.beans.factory.annotation.Autowired;
|
| | |
|
| | | 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.mapper.HomeMapper;
|
| | | import com.example.springboot.mapper.SpianMapper;
|
| | | import com.example.springboot.service.JdbcConnections;
|
| | | import com.example.springboot.service.North_Glass_Buffer1Service;
|
| | | import com.example.springboot.service.OutSliceServive;
|
| | | import com.example.springboot.service.SpianService;
|
| | |
|
| | | public class Plchome extends Thread {
|
| | |
|
| | | @Autowired
|
| | | private HomeMapper homeMapper;
|
| | | private OutSliceServive outSliceServive;
|
| | | private SpianMapper spianMapper;
|
| | | private SpianService spianService;
|
| | | private North_Glass_Buffer1Service north_Glass_Buffer1Service;
|
| | | private JdbcConnections dbserve;
|
| | | // 出片队列是否允许出片
|
| | | public static Boolean isAllowQueue = true;
|
| | | // 铝框id
|
| | | public static String FrameNo;
|
| | | // 是否需要手动确认玻璃
|
| | | public static Boolean isConfirm = false;
|
| | |
|
| | | // public static Map b=new HashMap<>();
|
| | | // b.put()
|
| | | @Override
|
| | | public void run() {
|
| | | while (this != null) {
|
| | | try {
|
| | | Thread.sleep(1000);
|
| | | |
| | | } catch (InterruptedException e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | JSONObject jsonObject = new JSONObject();
|
| | |
|
| | | // 注入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);
|
| | | // 笼子使用情况
|
| | | List<StorageCage> tableData = homeMapper.selectAll();
|
| | | jsonObject.append("tableData", tableData);
|
| | | // 格理片笼格子状态
|
| | | List<StorageCage> cagelist1 = homeMapper.selectRack1();
|
| | | List<StorageCage> cagelist2 = homeMapper.selectRack2();
|
| | | List<StorageCage> cagelist3 = homeMapper.selectRack3();
|
| | | List<StorageCage> cagelist4 = homeMapper.selectRack4();
|
| | | jsonObject.append("cagelist1", cagelist1);
|
| | | jsonObject.append("cagelist2", cagelist2);
|
| | | jsonObject.append("cagelist3", cagelist3);
|
| | | jsonObject.append("cagelist4", cagelist4);
|
| | | // 进出片任务
|
| | | List<StorageCage> tasklist1 = homeMapper.selectinout(3);
|
| | | List<StorageCage> tasklist2 = homeMapper.selectinout(2);
|
| | | jsonObject.append("tasklist1", tasklist1);
|
| | | jsonObject.append("tasklist2", tasklist2);
|
| | | // 查询报警信息
|
| | | List<alarmmg> alarmmg = homeMapper.SelectAlarmmgInfo();
|
| | | jsonObject.append("alarmmg", alarmmg);
|
| | | // 读去Plc进片车与出片车位置W
|
| | | 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);// 获取进片车状态
|
| | | 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);
|
| | | }
|
| | | // 伍 获取进是否有待确认的玻璃id
|
| | | String queid = spianMapper.Selectqueueid();
|
| | | int state = spianMapper.Selectqueuestate();
|
| | | jsonObject.append("queid", queid);
|
| | | jsonObject.append("state", state);
|
| | | // 获取扫码位与上片位玻璃信息
|
| | | Queue form2 = homeMapper.GetQueueInfo(2);
|
| | | Queue form3 = homeMapper.GetQueueInfo(1);
|
| | | if (form2.getglassId() != null && form2.getglassId() != "") {
|
| | | jsonObject.append("form2", form2);
|
| | | }
|
| | | if (form3.getglassId() != null && form3.getglassId() != "") {
|
| | | jsonObject.append("form3", form3);
|
| | | }
|
| | | // 获取出片队列信息
|
| | | List<Out_slice> listoutslice = outSliceServive.SelectProductionqueue();
|
| | | jsonObject.append("listoutslice", listoutslice);
|
| | | // 获取当前出片队列状态
|
| | | jsonObject.append("isAllowQueue", Plchome.isAllowQueue);
|
| | |
|
| | | // 获取铝框idDB106.DBW64
|
| | | // String frameno=spianService.queGlassid("DB103.270",14).toString();
|
| | | // if(frameno!=Plchome.FrameNo&&frameno!=""){
|
| | | // Plchome.FrameNo=frameno;
|
| | | // }
|
| | | // try {
|
| | | // north_Glass_Buffer1Service.AddOutSliceS(Plchome.FrameNo);
|
| | | // } catch (SQLException e) {
|
| | | // // TODO Auto-generated catch block
|
| | | // e.printStackTrace();
|
| | | // }
|
| | | // 是否需要人工确认上片玻璃
|
| | | jsonObject.append("isConfirm", isConfirm);
|
| | |
|
| | | //获取进片请求状态
|
| | | List<Short> D01Request = S7control.getinstance().ReadWord("DB106.24", 1);
|
| | | boolean D01RequestState = D01Request.contains((short) 1);
|
| | | // boolean D01RequestState =true;
|
| | | jsonObject.append("D01RequestState", D01RequestState);
|
| | |
|
| | | //复位倒计时
|
| | | // 地址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);
|
| | | // 铝框线交互
|
| | |
|
| | | // //铝框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);
|
| | | // }
|
| | |
|
| | | dbserve = WebSocketServer.applicationContext.getBean(JdbcConnections.class);
|
| | | 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());
|
| | | }
|
| | | }
|
| | |
|
| | | }
|
| | | }
|
| | | }
|