From 49138a936668c30fbb4063e5d0bb518a400e6c39 Mon Sep 17 00:00:00 2001 From: 懒羊羊 <15939171744@163.com> Date: 星期五, 26 一月 2024 09:30:45 +0800 Subject: [PATCH] 工位终端 --- jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java | 7 ++ jcdm-main/pom.xml | 6 ++ jcdm-ui/src/views/main/kb/stationTerminal/index.vue | 116 ++++++++++++++++++++++++-------------- 3 files changed, 87 insertions(+), 42 deletions(-) diff --git a/jcdm-main/pom.xml b/jcdm-main/pom.xml index 6c58209..4518cee 100644 --- a/jcdm-main/pom.xml +++ b/jcdm-main/pom.xml @@ -90,6 +90,12 @@ <artifactId>stack-server</artifactId> <version>0.3.6</version> </dependency> + + <!-- 绯荤粺妯″潡--> + <dependency> + <groupId>com.jcdm</groupId> + <artifactId>jcdm-framework</artifactId> + </dependency> </dependencies> </project> \ No newline at end of file diff --git a/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java b/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java index b2ce549..2f5a299 100644 --- a/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java +++ b/jcdm-main/src/main/java/com/jcdm/main/da/opcuaconfig/cert/MethodName.java @@ -1,5 +1,7 @@ package com.jcdm.main.da.opcuaconfig.cert; +import com.jcdm.framework.websocket.WebSocketServer; +import com.jcdm.framework.websocket.WebSocketUsers; import com.jcdm.main.da.collectionParamConf.domain.DaCollectionParamConf; import com.jcdm.main.da.collectionParamConf.service.IDaCollectionParamConfService; import com.jcdm.main.da.opcuaconfig.client.ClientHandler; @@ -13,14 +15,17 @@ import org.eclipse.milo.opcua.stack.core.types.builtin.DataValue; import org.eclipse.milo.opcua.stack.core.types.builtin.NodeId; +import javax.websocket.Session; import java.util.Date; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; import static com.jcdm.main.da.opcuaconfig.client.ClientHandler.readValues; @Slf4j public class MethodName { + Map<String, Session> map = WebSocketUsers.getUsers(); private IDaCollectionParamConfService collectionParamConfService = BeanUtils.getBean(IDaCollectionParamConfService.class); private IDaParamCollectionService daParamCollectionService = BeanUtils.getBean(IDaParamCollectionService.class); private IDaPassingStationCollectionService daPassingStationCollectionService = BeanUtils.getBean(IDaPassingStationCollectionService.class); @@ -47,6 +52,7 @@ PassingStationCollection.setInboundTime(new Date()); daPassingStationCollectionService.insertDaPassingStationCollection(PassingStationCollection); log.info("鑺傜偣:{},鍝嶅簲缁撴灉:{}", node1.getIdentifier(),out1); + WebSocketUsers.sendMessageToUserByText(map.get(parts[1]), "IN"); break; case "2": //璇锋眰璁板綍宸ヤ綅鏁版嵁 List<DaCollectionParamConf> b; @@ -83,6 +89,7 @@ //鏇存柊PLC鑺傜偣鐘舵�� NodeEntity node2= NodeEntity.builder().index(2).identifier(parts[0]+"."+parts[1]+".RecordDataDone").value("21").type("short").build(); Boolean out2=clientHandler.write(node2); + WebSocketUsers.sendMessageToUserByText(map.get(parts[1]), "OUT"); log.info("鑺傜偣:{},鍝嶅簲缁撴灉:{}", node2.getIdentifier(),out2); break; default: diff --git a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue index 7e60eb6..d0d7943 100644 --- a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue +++ b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue @@ -81,6 +81,17 @@ <span style="display: none">{{cakeLamp.release}}</span> <span> 鍏佽鏀捐</span> </el-col> + + </el-row> + <el-row style="margin-top: 20px"> + <el-col :span="12"> + <el-input v-model="serialPortContent" style="width: 150px;" placeholder="璇疯緭鍏ュ唴瀹�"></el-input> + + </el-col> + <el-col :span="12"> + <el-button @click="serialPortMethod" type="primary">涓插彛鑾峰彇鏁版嵁</el-button> + + </el-col> </el-row> </el-card> @@ -139,6 +150,7 @@ name: "stationTerminal", data() { return { + serialPortContent: '', // 鏌ヨ鍙傛暟 formulaChildParams: { pageNum: 1, @@ -183,7 +195,7 @@ }, content: '', activeName: 'first', - url: "ws://192.168.10.196:8080/websocket/message/", + url: "ws://192.168.10.184:8080/websocket/message/", message: "", text_content: "", ws: null, @@ -204,11 +216,13 @@ }, methods: { + serialPortMethod(){ + + }, /** 鏌ヨ閰嶆柟閰嶇疆瀛愪俊鎭垪琛� */ getListFormulaChild() { this.formulaChildParams.productCode = this.workpieceInformation.productCode listFormulaChild(this.formulaChildParams).then(response => { - console.log(this.formulaChildList) this.formulaChildList = response.rows; }); }, @@ -224,12 +238,14 @@ this.headContent.sfcCode = this.content this.queryParams.sfcCode = this.content this.getList() - this.getListFormulaChild() + // this.getListFormulaChild() this.cakeLamp.scanFinish = 1 + this.cakeLamp.startWork = 1 + }, /** 鏌ヨ鎶ュ伐璁板綍 琛ㄥ垪琛� */ - getList() { - listWorkReport(this.queryParams).then(response => { + async getList() { + await listWorkReport(this.queryParams).then(response => { let rowsData = response.rows[0]; this.workpieceInformation.workOrderCode = rowsData.workOrderCode; this.workpieceInformation.productCode = rowsData.productCode; @@ -239,46 +255,50 @@ this.workpieceInformation.beat++; }, 1000); }); + this.getListFormulaChild() + }, allowRelease(){ clearInterval(this.timer); this.$message('淇濆瓨鑺傛媿涓�'+this.workpieceInformation.beat+'绉�'); }, /** 鏌ヨ宸ヤ綅缁堢閰嶇疆鍒楄〃 */ - async getStationConfList() { - await getIpv4().then(response => { - this.StationConfQueryParams.ipAddress = response.msg - console.log('鏌ヨ鍒版湰宸ヤ綅IP涓�'+this.StationConfQueryParams.ipAddress) - }); - listStationConf(this.StationConfQueryParams).then(response => { - let rows = response.rows[0] - if(response.rows.length===0){ - this.$message('璇ュ伐浣嶆病鏈夐厤缃甀P锛岃鑱旂郴绠$悊鍛橀厤缃甀P'); - return - } - this.headContent.processesName = rows.processesName - this.headContent.processesCode = rows.processesCode - console.log('璁剧疆宸ヤ綅缂栫爜'+this.headContent.processesCode) - - }); - }, - connectWebsocket() { - console.log('websocket杩炴帴宸ヤ綅涓�'+this.headContent.processesCode) - const wsuri = this.url + this.headContent.processesCode; - this.ws = new WebSocket(wsuri); - const self = this; - this.ws.onopen = function (event) { - // self.text_content = self.text_content + "宸茬粡鎵撳紑杩炴帴!" + "\n"; - this.$message('websocket杩炴帴鎴愬姛锛�'); - }; - this.ws.onmessage = function (event) { - self.text_content = event.data + "\n"; - console.log(event.data) - if(event.data === "1"){ - self.cakeLamp.InPlace = "1" - } - }; - }, + // async getStationConfList() { + // await getIpv4().then(response => { + // this.StationConfQueryParams.ipAddress = response.msg + // console.log('鏌ヨ鍒版湰宸ヤ綅IP涓�'+this.StationConfQueryParams.ipAddress) + // }); + // listStationConf(this.StationConfQueryParams).then(response => { + // let rows = response.rows[0] + // if(response.rows.length===0){ + // this.$message('璇ュ伐浣嶆病鏈夐厤缃甀P锛岃鑱旂郴绠$悊鍛橀厤缃甀P'); + // return + // } + // this.headContent.processesName = rows.processesName + // this.headContent.processesCode = rows.processesCode + // console.log('璁剧疆宸ヤ綅缂栫爜'+this.headContent.processesCode) + // + // }); + // }, + // connectWebsocket() { + // console.log('websocket杩炴帴宸ヤ綅涓�'+this.headContent.processesCode) + // const wsuri = this.url + this.headContent.processesCode; + // this.ws = new WebSocket(wsuri); + // const self = this; + // this.ws.onopen = function (event) { + // // self.text_content = self.text_content + "宸茬粡鎵撳紑杩炴帴!" + "\n"; + // this.$message('websocket杩炴帴鎴愬姛锛�'); + // }; + // this.ws.onmessage = function (event) { + // self.text_content = event.data + "\n"; + // console.log(event.data) + // if(event.data === "IN"){ + // self.cakeLamp.InPlace = "1" + // }else if(event.data === "OUT"){ + // self.cakeLamp.outRsSign = "1" + // } + // }; + // }, exit() { if (this.ws) { this.ws.close(); @@ -313,16 +333,28 @@ this.ws = new WebSocket(wsuri); const self = this; this.ws.onopen = function (event) { - // self.text_content = self.text_content + "宸茬粡鎵撳紑杩炴帴!" + "\n"; this.$message('websocket杩炴帴鎴愬姛锛�'); }; this.ws.onmessage = function (event) { self.text_content = event.data + "\n"; console.log(event.data) - if(event.data === "1"){ - self.cakeLamp.InPlace = "1" + if(event.data === "IN"){ + self.cakeLamp.InPlace = 1 + }else if(event.data === "OUT"){ + self.cakeLamp.release = 1 + setTimeout(() => { + this.resetting() + }, 2000); // 寤舵椂2绉掕Е鍙� } }; + }, + resetting() { + this.cakeLamp = { + InPlace: 0, + release: 0, + startWork: 0, + scanFinish: 0, + } } } } -- Gitblit v1.9.3