From 6d313a4a6f9f9d7ea65ec50ab0d4491e595edb97 Mon Sep 17 00:00:00 2001 From: admin <15939171744@163.com> Date: 星期二, 15 十月 2024 09:47:26 +0800 Subject: [PATCH] -打印bug修改 --- jcdm-ui/src/views/main/kb/stationTerminal/index.vue | 304 +++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 234 insertions(+), 70 deletions(-) diff --git a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue index 94f9903..ed56f0d 100644 --- a/jcdm-ui/src/views/main/kb/stationTerminal/index.vue +++ b/jcdm-ui/src/views/main/kb/stationTerminal/index.vue @@ -40,12 +40,6 @@ <el-descriptions-item label="灏忚溅鐮�"> <span>{{headContent.cardCode}}</span> </el-descriptions-item> -<!-- <el-descriptions-item label="浜у搧鍨嬪彿">--> -<!-- <span>{{workpieceInformation.productModel}}</span>--> -<!-- </el-descriptions-item>--> -<!-- <el-descriptions-item label="浜у搧鍚嶇О">--> -<!-- <span>{{workpieceInformation.productName}}</span>--> -<!-- </el-descriptions-item>--> <el-descriptions-item label="寮�濮嬫椂闂�"> <span>{{workpieceInformation.inboundTime}}</span> </el-descriptions-item> @@ -88,21 +82,75 @@ </el-col> </el-row> - <el-row v-show="showInput" style="margin-top: 20px"> - <el-col></el-col> - <span style="width: 130px;" class="head-font">棰勮鎬绘垚鍙� : {{headContent.yzSfcCode}}</span> - </el-row> -<!-- <el-row v-show="showInput" style="margin-top: 20px">--> -<!-- <el-button @click="bindYzSfc" type="primary">缁戝畾</el-button>--> -<!-- </el-row>--> -<!-- <el-row v-show="onLineBinDing" style="margin-top: 20px">--> -<!-- <el-col></el-col>--> -<!-- <span style="width: 130px;" class="head-font">灏忚溅鐮� : {{headContent.cardCode}}</span>--> -<!-- </el-row>--> -<!-- <el-row v-show="onLineBinDing" style="margin-top: 20px">--> -<!-- <el-button @click="bindcardCode" type="primary">缁戝畾</el-button>--> -<!-- </el-row>--> + <el-row v-show="goOnlineFlag" style="margin-top: 20px"> + <el-button @click="getWorkOrders" type="primary">鎺ユ敹宸ュ崟</el-button> + + <div style="display: none"> + <div id="getWorkOrdersPrintPrintMe" style="width: 500px;"> + <div ref="canvasWrapper" id="canvasWrapper3" style="display: flex;justify-content: center;"></div> + <p style="font-size: 10px;word-break: break-all;display: flex;justify-content: center;">{{packCode}}</p> + </div> +<!-- <el-button @click="print">鎵撳嵃</el-button>--> + <el-button @click="test1">鐢熸垚浜岀淮鐮�</el-button> + </div> + </el-row> + + <el-row v-show="offlineFlag" style="margin-top: 20px"> + <el-button id="printBack" v-print="'#printMeBack'" type="primary">鎵撳嵃涓�鑱旂爜</el-button><br> + <el-button style="margin-top: 20px" id="print" v-print="'#printMe'" type="primary">鎵撳嵃涓夎仈鐮�</el-button> + <el-button style="display: none" @click="test1">鐢熸垚浜岀淮鐮�</el-button> + <el-button style="display: none" @click="test2">鐢熸垚 + <span style="font-size: 10px;margin-left: 52px">MADE IN CHINA</span><br> + <br> + <br>浜岀淮鐮�</el-button> + <el-button style="display: none" @click="test4">鐢熸垚浜岀淮鐮�</el-button> + <el-button style="display: none" @click="test5">鐢熸垚 + <span style="font-size: 10px;margin-left: 52px">MADE IN CHINA</span><br> + <br> + <br>浜岀淮鐮�</el-button> + <div style="display: none"> + <div id="printMe"> + <br> + <p style="margin-left: 53px">{{printInfoData.partNumber}}</p> + <p style="margin-left: 53px">{{printInfoData.hardwareVersion}}</p> + <p style="margin-left: 53px">{{printInfoData.softwareVersion}}</p> + <br> + <br> + <br> + <br> + <img style="width: 140px;height: 20px;margin-left: 30px" :src="require('@/assets/images/a8963a24920640508e96150a053fc41.png')"/> + <span style="margin-left: 72px">{{printInfoData.printModel}}</span><br> + <span style="margin-left: 73px">{{printInfoData.supplierCode}}</span><br> + <span style="margin-left: 55px">{{printInfoData.partNumber}}</span><br> + <span style="font-size: 10px;margin-left: 28px;">{{headContent.sfcCode}}</span><br> + <span style="font-size: 10px;margin-left: 60px">MADE IN CHINA</span><br> + + <br> + <br> + <br> + <div ref="canvasWrapper" id="canvasWrapper1" style="display: flex;justify-content: center;margin-top: -27px;"></div> + <span style="font-size: 10px;word-break: break-all;display: flex;justify-content: center;width: 155px;margin-left: 20px;margin-top: 3px">P{{printInfoData.partNumber}}#T{{headContent.sfcCode}}#V{{printInfoData.supplierCode}}#S{{printInfoData.softwareVersion}}#H{{printInfoData.hardwareVersion}}#NBMS#</span> + <br> + <br> + <div ref="canvasWrapper" id="canvasWrapper2" style="display: flex;justify-content: center;margin-top: -27px"></div> + <span style="font-size: 10px;word-break: break-all;display: flex;justify-content: center;width: 155px;margin-left: 20px;margin-top: 3px">P{{printInfoData.partNumber}}#T{{headContent.sfcCode}}#V{{printInfoData.supplierCode}}#S{{printInfoData.softwareVersion}}#H{{printInfoData.hardwareVersion}}#NBMS#</span> + </div> + </div> + + <div style="display: none"> + <div id="printMeBack"> + <br> + <br> + <div ref="canvasWrapper" id="canvasWrapper4" style="display: flex;justify-content: center;margin-top: -27px"></div> + <span style="font-size: 10px;word-break: break-all;display: flex;justify-content: center;width: 155px;margin-left: 20px;margin-top: 3px">P{{printInfoData.partNumber}}#T{{headContent.sfcCode}}#V{{printInfoData.supplierCode}}#S{{printInfoData.softwareVersion}}#H{{printInfoData.hardwareVersion}}#NBMS#</span> + <br> + <br> + <div ref="canvasWrapper" id="canvasWrapper5" style="display: flex;justify-content: center;margin-top: -27px"></div> + <span style="font-size: 10px;word-break: break-all;display: flex;justify-content: center;width: 155px;margin-left: 20px;margin-top: 3px">P{{printInfoData.partNumber}}#T{{headContent.sfcCode}}#V{{printInfoData.supplierCode}}#S{{printInfoData.softwareVersion}}#H{{printInfoData.hardwareVersion}}#NBMS#</span> + </div> + </div> + </el-row> </el-card> </el-col> @@ -112,16 +160,10 @@ <span slot="label"> <a class="el-icon-date"></a>棣栭〉</span> <el-col :span="24"> <el-table height="500" :cell-style="rowStyle" :data="formulaChildList"> -<!-- <el-table-column label="鎺掑簭" width="60" align="center" type="index">--> -<!-- </el-table-column>--> <el-table-column label="鎷х揣姝ュ彿" width="80" align="center" prop="stepSort"> </el-table-column> <el-table-column label="鎿嶄綔鍐呭" align="center" prop="operationSteps"> </el-table-column> -<!-- <el-table-column label="涓婇檺" width="60" align="center" prop="spareField3">--> -<!-- </el-table-column>--> -<!-- <el-table-column label="涓嬮檺" width="60" align="center" prop="spareField4">--> -<!-- </el-table-column>--> <el-table-column label="浜у搧缂栧彿" width="80" align="center" prop="productCode"> </el-table-column> <el-table-column label="鐗╂枡缂栫爜" width="140" align="center" prop="materialCode"> @@ -133,34 +175,7 @@ </el-table> </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-tabs> </el-col> </el-row> @@ -334,14 +349,24 @@ saveCampaignTimeParameters, replaceAssemblyCode, checkRecordDataDone, enterWeighing, } from "@/api/main/da/paramCollection/paramCollection"; +import QRCode from "qrcodejs2"; +import {listEquipmentArchives} from "@/api/main/em/equipmentArchives/equipmentArchives"; export default { name: "stationTerminal", data() { return { + printInfoData: { + softwareVersion: 'SW001.001', //杞欢鐗堟湰鍙� + hardwareVersion: 'HW001.001', //纭欢鐗堟湰鍙� + printModel: 'H2155D', //鍨嬪彿 + partNumber: '9900200136', //闆堕儴浠跺彿 + supplierCode: '993983', //渚涘簲鍟嗙紪鐮� + }, carCode: '', - showInput: false, - onLineBinDing: false, + goOnlineFlag: false, + offlineFlag: false, + serialPortContent: '', // 鏌ヨ鍙傛暟 @@ -426,6 +451,7 @@ originalArray: [], yzSfcFlag: 1, endYz: false, + packCode: 'test111' } }, beforeDestroy() { @@ -459,9 +485,137 @@ computed: { isDisable() { return this.btnType === "danger"; - }, + } }, methods: { + + //鎺ユ敹宸ュ崟-------寮�濮� + getWorkOrdersPrint() { + let newStr = document.getElementById('getWorkOrdersPrintPrintMe').innerHTML; + const printFrame = document.createElement('iframe'); + printFrame.style.display = 'none'; + document.body.appendChild(printFrame); + const content = document.getElementById('getWorkOrdersPrintPrintMe').innerHTML; + printFrame.contentDocument.write(content); + printFrame.contentWindow.print(); + document.body.removeChild(printFrame); + return false; + }, + async getWorkOrders(){ + await receivingWorkOrders().then(response => { + this.packCode = response.msg; + this.getWorkOrdersTest1() + }); + setTimeout(() => { + this.getWorkOrdersPrint() + },50) + }, + getWorkOrdersTest1(){ + document.getElementById('canvasWrapper3').innerHTML = '' + this.$nextTick(() => { + let qrCode = new QRCode('canvasWrapper3',{ + width: 80, + height: 80, + padding: 0, + margin: 0, + text: this.packCode, + colorDark: '#000', + colorLight: '#fff' + }) + }) + }, + //鎺ユ敹宸ュ崟-------缁撴潫 + + //涓嬬嚎鎵撳嵃-------寮�濮� + initializePrintInfoData(){ + listEquipmentArchives().then(response => { + this.printInfoData.softwareVersion = response.rows[0].equipmentCode + this.printInfoData.hardwareVersion = response.rows[0].equipmentName + this.printInfoData.supplierCode = response.rows[0].equipmentSpec + this.printInfoData.printModel = response.rows[0].equipmentBrand + this.printInfoData.partNumber = response.rows[0].equipmentTypeName + console.log(response.rows[0]) + }); + }, + test1(){ + document.getElementById('canvasWrapper1').innerHTML = ''; + this.$nextTick(() => { + let qrCode = new QRCode('canvasWrapper1',{ + width: 120, + height: 120, + text: 'P'+this.printInfoData.partNumber+'#T'+ this.headContent.sfcCode +'#V'+this.printInfoData.supplierCode+'#S'+this.printInfoData.softwareVersion+'#H'+this.printInfoData.hardwareVersion+'#NBMS#', + colorDark: '#000', + colorLight: '#fff' + }) + } + ) + }, + test2(){ + document.getElementById('canvasWrapper2').innerHTML = ''; + this.$nextTick(() => { + let qrCode = new QRCode('canvasWrapper2',{ + width: 120, + height: 120, + text: 'P'+this.printInfoData.partNumber+'#T'+ this.headContent.sfcCode +'#V'+this.printInfoData.supplierCode+'#S'+this.printInfoData.softwareVersion+'#H'+this.printInfoData.hardwareVersion+'#NBMS#', + colorDark: '#000', + colorLight: '#fff' + }) + } + ) + }, + test4(){ + document.getElementById('canvasWrapper4').innerHTML = ''; + this.$nextTick(() => { + let qrCode = new QRCode('canvasWrapper4',{ + width: 120, + height: 120, + text: 'P'+this.printInfoData.partNumber+'#T'+ this.headContent.sfcCode +'#V'+this.printInfoData.supplierCode+'#S'+this.printInfoData.softwareVersion+'#H'+this.printInfoData.hardwareVersion+'#NBMS#', + colorDark: '#000', + colorLight: '#fff' + }) + } + ) + }, + test5(){ + document.getElementById('canvasWrapper5').innerHTML = ''; + this.$nextTick(() => { + let qrCode = new QRCode('canvasWrapper5',{ + width: 120, + height: 120, + text: 'P'+this.printInfoData.partNumber+'#T'+ this.headContent.sfcCode +'#V'+this.printInfoData.supplierCode+'#S'+this.printInfoData.softwareVersion+'#H'+this.printInfoData.hardwareVersion+'#NBMS#', + colorDark: '#000', + colorLight: '#fff' + }) + } + ) + }, + print1() { + // 浣跨敤鎻掍欢鎵撳嵃鏂瑰紡 + // this.$print(this.$refs.printMe) + // this.initializePrintInfoData() + // if(this.headContent.sfcCode){ + // //鏂伴〉闈㈡墦鍗� + // // let newStr = document.getElementById('printMe').innerHTML; + // // let newWin = window.open('', '_blank',st); + // // newWin.document.body.innerHTML = newStr; + // // newWin.print(); + // // 鏈〉闈㈡墦鍗� + // let newStr = document.getElementById('printMe').innerHTML; + // const printFrame = document.createElement('iframe'); + // printFrame.style.display = 'none'; + // document.body.appendChild(printFrame); + // const content = document.getElementById('printMe').innerHTML; + // printFrame.contentDocument.write(content); + // printFrame.contentWindow.print(); + // console.log(printFrame) + // // document.body.removeChild(printFrame); + // console.log(printFrame) + // return false; + // }else { + // this.$message.error('鏈壂鎻忔�绘垚鐮佺姝㈡墦鍗帮紒'); + // } + }, + //涓嬬嚎鎵撳嵃-------鎴 bindcardCode(scanValue){ // this.$message('缁戝畾鎴愬姛锛�'); let param = { @@ -608,6 +762,7 @@ }, /** 鏌ヨ宸ュ崟鍒楄〃 */ async getList() { + this.initializePrintInfoData() await listProductionOrde(this.queryParams).then(response => { let rowsData = response.rows[0]; console.log(rowsData) @@ -618,6 +773,12 @@ this.headContent.cardCode = rowsData.trolleyYard; this.formulaChildParams.artificialNgFlag = rowsData.artificialNgFlag; }); + if(this.headContent.processesCode === 'POP430'){ + this.test1() + this.test2() + this.test4() + this.test5() + } this.getListFormulaChild() // this.addOverStationCollection() this.workpieceInformation.inboundTime = this.getCurrentTime() @@ -695,6 +856,13 @@ this.cakeLamp.InPlace = response.data }); + if(this.headContent.processesCode === 'POP230'){ + this.goOnlineFlag = true + } + if(this.headContent.processesCode === 'POP430'){ + this.offlineFlag = true + } + }); this.conCom() console.log('websocket杩炴帴宸ヤ綅涓�' + this.headContent.processesCode) @@ -702,11 +870,19 @@ this.ws = new WebSocket(wsuri); const self = this; this.ws.onopen = function (event) { - this.$message('websocket杩炴帴鎴愬姛锛�'); + self.$message('websocket杩炴帴鎴愬姛锛�'); }; this.ws.onmessage = function (event) { - if (event.data === "IN") { + if (event.data === "reportError") { + self.$message.error('涓嬬嚎鎶ュ伐寮傚父澶辫触锛�'); + }else if (event.data === "reportSuccess") { + self.$message('涓嬬嚎鎶ュ伐鎴愬姛锛�'); + }else if (event.data === "print") { + self.$message('postman璋冪敤鎵撳嵃鏂规硶鎵撳嵃锛�'); + // self.print1() + document.getElementById('print').click(); + }else if (event.data === "IN") { self.cakeLamp.InPlace = 1; } else if (event.data === "NG") { //缁檖lc鍙戜笅绾夸俊鍙� @@ -750,14 +926,6 @@ inboundTime: self.workpieceInformation.inboundTime, formulaChildEntity: self.formulaChildList[formulaChildIndex] } - - // if(param.locationCode === 'POP430'){ - // let enterWeighingparam = { - // sfcCode: param.productBarcode, - // } - // enterWeighing(enterWeighingparam).then(response => { - // }); - // } console.log("杩涘叆鏈�缁堟柟娉�") self.endSaveData(param) @@ -840,10 +1008,6 @@ console.log("sfc=--"+this.headContent.sfcCode+"--") if(this.headContent.sfcCode !== '' && this.headContent.sfcCode !== null && this.headContent.sfcCode !== undefined){ - // if(scanValue.includes("P9900173252")){ - // this.headContent.yzSfcCode = scanValue - // this.bindYzSfc(); - // }else if(scanValue.includes("0RSP1TE") && this.headContent.processesCode === 'POP230'){ this.headContent.cardCode = scanValue this.bindcardCode(scanValue); -- Gitblit v1.9.3