From 406ad2e52a8963f1748c399b0da9dfae8cd58b49 Mon Sep 17 00:00:00 2001 From: hdy <1105738590@qq.com> Date: 星期六, 16 三月 2024 11:08:41 +0800 Subject: [PATCH] 设备保养项目、计划修改 --- jcdm-ui/src/views/main/kb/stationTerminal/index.vue | 193 ++++++++++++++++++++++++++++++------------------ 1 files changed, 120 insertions(+), 73 deletions(-) diff --git a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue index e138770..55e2968 100644 --- a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue +++ b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue @@ -34,7 +34,7 @@ <el-descriptions-item label="宸ュ崟缂栧彿"> <span>{{workpieceInformation.workOrderNo}}</span> </el-descriptions-item> - <el-descriptions-item label="浜у搧搴忓垪鍙�"> + <el-descriptions-item label="浜у搧缂栧彿"> <span>{{workpieceInformation.productCode}}</span> </el-descriptions-item> <el-descriptions-item label="浜у搧鍨嬪彿"> @@ -105,42 +105,48 @@ <el-tabs type="border-card" style="height: 600px" v-model="activeName" @tab-click="changeMenu"> <el-tab-pane name="first"> <span slot="label"> <a class="el-icon-date"></a>棣栭〉</span> - <el-col :span="10"> + <el-col :span="24"> <el-table :cell-style="rowStyle" :data="formulaChildList"> <el-table-column label="鎺掑簭" width="60" align="center" prop="stepSort"> </el-table-column> <el-table-column label="鎿嶄綔鍐呭" :show-overflow-tooltip='true' align="center" prop="operationSteps"> </el-table-column> + <el-table-column label="浜у搧缂栧彿" align="center" prop="productCode"> + </el-table-column> + <el-table-column label="閲囬泦鍊�" align="center" prop="collectData"> + </el-table-column> + <el-table-column label="缁撴灉" align="center" prop="results"> + </el-table-column> </el-table> </el-col> - <el-col :span="14"> - <el-image style="height: 520px;width: 100%" :src="imgSrc"></el-image> - </el-col> +<!-- <el-col :span="14">--> +<!-- <el-image style="height: 520px;width: 100%" :src="imgSrc"></el-image>--> +<!-- </el-col>--> </el-tab-pane> - <el-tab-pane name="second"> - <span slot="label"> <b class="el-icon-date"></b>鐗╂枡BOM</span> - <el-empty> - <span slot="description">鏆傛棤鏁版嵁</span> - </el-empty> - </el-tab-pane> - <el-tab-pane name="third"> - <span slot="label"> <b class="el-icon-date"></b>閲囬泦娓呭崟</span> - <el-empty> - <span slot="description">鏆傛棤鏁版嵁</span> - </el-empty> - </el-tab-pane> - <el-tab-pane name="fourth"> - <span slot="label"> <b class="el-icon-date"></b>瀹夌伅鐘舵��</span> - <el-empty> - <span slot="description">鏆傛棤鏁版嵁</span> - </el-empty> - </el-tab-pane> - <el-tab-pane name="fifth"> - <span slot="label"> <b class="el-icon-date"></b>宸ヨ壓閰嶆柟</span> - <el-empty> - <span slot="description">鏆傛棤鏁版嵁</span> - </el-empty> - </el-tab-pane> +<!-- <el-tab-pane name="second">--> +<!-- <span slot="label"> <b class="el-icon-date"></b>鐗╂枡BOM</span>--> +<!-- <el-empty>--> +<!-- <span slot="description">鏆傛棤鏁版嵁</span>--> +<!-- </el-empty>--> +<!-- </el-tab-pane>--> +<!-- <el-tab-pane name="third">--> +<!-- <span slot="label"> <b class="el-icon-date"></b>閲囬泦娓呭崟</span>--> +<!-- <el-empty>--> +<!-- <span slot="description">鏆傛棤鏁版嵁</span>--> +<!-- </el-empty>--> +<!-- </el-tab-pane>--> +<!-- <el-tab-pane name="fourth">--> +<!-- <span slot="label"> <b class="el-icon-date"></b>瀹夌伅鐘舵��</span>--> +<!-- <el-empty>--> +<!-- <span slot="description">鏆傛棤鏁版嵁</span>--> +<!-- </el-empty>--> +<!-- </el-tab-pane>--> +<!-- <el-tab-pane name="fifth">--> +<!-- <span slot="label"> <b class="el-icon-date"></b>宸ヨ壓閰嶆柟</span>--> +<!-- <el-empty>--> +<!-- <span slot="description">鏆傛棤鏁版嵁</span>--> +<!-- </el-empty>--> +<!-- </el-tab-pane>--> </el-tabs> </el-col> </el-row> @@ -286,12 +292,22 @@ <script> import {listWorkReport} from "@/api/main/om/workReport/workReport"; import {listStationConf,getIpv4} from "@/api/main/sc/stationConf"; -import {listFormulaChild, releaseCheck, updateResults, workpieceRelease} from "@/api/main/bs/formulaChild/formulaChild"; +import { + listFormulaChild, + releaseCheck, + updateResults, + updateTighteningFormula, + workpieceRelease +} from "@/api/main/bs/formulaChild/formulaChild"; import MySerialPort from "@/utils/MySerialPort"; import USBDevice from "@/utils/usb.json"; import {listProductionOrde} from "@/api/main/om/productionOrde/productionOrde"; import {addPassingStationCollection} from "@/api/main/da/passingStationCollection/passingStationCollection"; -import {addBasicParameters, addParamCollection} from "@/api/main/da/paramCollection/paramCollection"; +import { + addBasicParameters, + addParamCollection, + addTighteningParameters +} from "@/api/main/da/paramCollection/paramCollection"; export default { name: "stationTerminal", @@ -312,7 +328,7 @@ headContent: { processesCode: 'OP1010', processesName: '璐存爣鏈�-璐寸爜', - sfcCode: '10', + sfcCode: '', }, workpieceInformation: { workOrderNo: null, @@ -343,7 +359,7 @@ }, content: '', activeName: 'first', - url: "ws://192.168.11.134:8080/websocket/message/", + url: "ws://192.168.11.76:8080/websocket/message/", message: "", text_content: "", ws: null, @@ -371,6 +387,7 @@ title: "", passingStationForm: {}, + originalArray: [], } }, beforeDestroy() { @@ -440,8 +457,20 @@ // }); }, serialPortMethod(value){ + // let formulaChilds = ""; + // this.formulaChildList.forEach((formulaChild) => { + // let operationType = formulaChild.operationType; + // let results = formulaChild.results; + // let materialCode = formulaChild.materialCode; + // if(operationType === '2' && value.includes(materialCode) && (results === "" || results === null || results === 'NG')){ + // formulaChilds = formulaChild; + // return; // 浣跨敤return浠f浛break + // } + // }); + // console.log(formulaChilds) let formulaChildParams = { - materialCode: value, + scanBarcode: value, + sfcBarcode: this.headContent.sfcCode, workOrderNo: this.workpieceInformation.workOrderNo, productCode: this.workpieceInformation.productCode, locationCode: this.headContent.processesCode, @@ -465,8 +494,10 @@ this.formulaChildParams.processesCode = this.headContent.processesCode listFormulaChild(this.formulaChildParams).then(response => { this.formulaChildList = response.rows; + console.log(this.formulaChildList) }); }, + changeMenu(tab, event) { console.log(tab, event); }, @@ -512,10 +543,8 @@ productBarcode: this.headContent.sfcCode, inboundTime: new Date() } - addPassingStationCollection(this.passingStationForm).then(response => { - }); - addBasicParameters(this.passingStationForm).then(response => { - }); + addPassingStationCollection(this.passingStationForm).then(response => {}); + addBasicParameters(this.passingStationForm).then(response => {}); }, allowRelease(){ clearInterval(this.timer); @@ -571,23 +600,23 @@ alert("鏈繛鎺ュ埌鏈嶅姟鍣�"); } }, - async initStation(){ + initStation: async function () { await getIpv4().then(response => { this.StationConfQueryParams.ipAddress = response.msg - console.log('鏌ヨ鍒版湰宸ヤ綅IP涓�'+this.StationConfQueryParams.ipAddress) + console.log('鏌ヨ鍒版湰宸ヤ綅IP涓�' + this.StationConfQueryParams.ipAddress) }); await listStationConf(this.StationConfQueryParams).then(response => { let rows = response.rows[0] - if(response.rows.length===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) + console.log('璁剧疆宸ヤ綅缂栫爜' + this.headContent.processesCode) }); - console.log('websocket杩炴帴宸ヤ綅涓�'+this.headContent.processesCode) + console.log('websocket杩炴帴宸ヤ綅涓�' + this.headContent.processesCode) const wsuri = this.url + this.headContent.processesCode; this.ws = new WebSocket(wsuri); const self = this; @@ -596,49 +625,67 @@ }; this.ws.onmessage = function (event) { const DELAY_TIME = 2000; - switch (event.data) { - case "IN": - self.cakeLamp.InPlace = 1; - break; - case "IN0": + if (event.data === "IN") { + self.cakeLamp.InPlace = 1; + } else if (event.data === "IN0") { + self.cakeLamp.InPlace = 0; + } else if (event.data === "OUT") { + self.cakeLamp.release = 1; + setTimeout(() => { self.cakeLamp.InPlace = 0; - break; - case "OUT": - self.cakeLamp.release = 1; - setTimeout(() => { - self.cakeLamp.InPlace = 0; - self.cakeLamp.release = 0; - self.cakeLamp.startWork = 0; - self.cakeLamp.scanFinish = 0; - self.Release(); - }, DELAY_TIME); - break; - case "TIGHTEN": - this.formulaChildList = []; - self.getListFormulaChild(); - break; - default: - break; + self.cakeLamp.release = 0; + self.cakeLamp.startWork = 0; + self.cakeLamp.scanFinish = 0; + self.Release(); + }, DELAY_TIME); + } else if (event.data === "TIGHTEN") { + this.formulaChildList = []; + self.getListFormulaChild(); + } else if (event.data.includes("[")) { + // console.log('event.data'+event.data) + // let eventArr = event.data.split("[")[1].split("]")[0].split(", "); + // let eventArr1 = event.data.replace('[', '').replace(']', '').trim().split(', '); + // console.log(eventArr1) + // console.log(Array.isArray(eventArr)) + let formulaChilds = ""; + self.formulaChildList.forEach((formulaChild) => { + let operationType = formulaChild.operationType; + let results = formulaChild.results; + if(operationType === '1' && (results === '' || results === null || results === 'NG')){ + formulaChilds = formulaChild; + return; // 浣跨敤return浠f浛break + } + // 鎵ц鍏朵粬鎿嶄綔 + }); + const param = { + tightenTheArray: event.data, + paramCode: formulaChilds.paramCode, + workOrderNo: self.workpieceInformation.workOrderNo, + productCode: self.workpieceInformation.productCode, + locationCode: self.headContent.processesCode, + productBarcode: self.headContent.sfcCode, + } + addTighteningParameters(param).then(response => {}); + updateTighteningFormula(param).then(response => { + }); + self.getListFormulaChild() } }; }, - //鎺ュ彈鏁版嵁鐨勫洖璋� callBack(value) { if (this.form1.isShowHistory) this.form1.desc = this.readLi().join(""); else { const scanValue = this.myserialport.hex2atostr(value).replace(/[\r\n]/g, ''); - // if (value.length > 0) - // this.form1.desc = this.myserialport.hex2atostr(value); this.$message('鎵爜瀹屾垚'+this.content); - if (/T/.test(scanValue)) { - console.log('瀛楃涓插寘鍚瓧姣�"T"'); + + if(this.headContent.sfcCode !== ''){ + console.log(scanValue) this.serialPortMethod(scanValue) - } else { - console.log('瀛楃涓蹭笉鍖呭惈瀛楁瘝"T"'); + }else { this.headContent.sfcCode = scanValue; - this.queryParams.sfcCode = scanValue; + this.queryParams.productNum = scanValue; this.getList() // this.getListFormulaChild() this.cakeLamp.scanFinish = 1 -- Gitblit v1.9.3