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