From b55cd11535741868b878139f9ca24d72e8cf693f Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期二, 15 十月 2024 15:33:32 +0800
Subject: [PATCH] 标签打印页面更新

---
 src/components/view/b1-inspection-order.vue |  115 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 107 insertions(+), 8 deletions(-)

diff --git a/src/components/view/b1-inspection-order.vue b/src/components/view/b1-inspection-order.vue
index d0d3072..acf7a90 100644
--- a/src/components/view/b1-inspection-order.vue
+++ b/src/components/view/b1-inspection-order.vue
@@ -385,6 +385,78 @@
 		<div style="width: 100%;height: 100%;" v-if="active >0">
 			<Add :active="active" :currentId="currentId" v-if="active<4" :examine = "examine" />
 		</div>
+    <el-dialog title="鏍囩鎵撳嵃" :visible.sync="printDialogVisible" width="38%" top="5vh">
+      <div style="width:100%;height: 400px;overflow-y: auto;" v-loading="loadPint">
+        <div class="dia_body">
+          <el-checkbox
+          style="margin: 10px 5px;"
+          :indeterminate="isIndeterminate"
+          v-model="checkAll"
+          @change="handleCheckAllChange">鍏ㄩ��</el-checkbox>
+          <el-checkbox-group @change="changePrintCode()" v-model="checkIndexList">
+            <el-card class="box-card" v-for="(item, i) in qrData" :key="i+'wwwww'" style="margin-bottom: 15px; font-size: 16px !important;">
+              <el-checkbox :label="i" :key="i" style="position: relative;top:-10px;left:5px"><br></el-checkbox>
+              <div>
+                <p style="text-align: center;font-size: 18px;font-weight: 700;">{{ item.sample }}</p>
+                <barcode :value="item.sampleCode" :height="34" :width="2" :displayValue="false" style="display: flex;justify-content: center;width: 100%;"></barcode>
+                <div>
+                  <div style="width: 100%;line-height: 30px;">
+                    <el-row style="font-size: 16px;">
+                      <el-col :span="16"><span>&nbsp;&nbsp;&nbsp;&nbsp;鏍峰搧缂栧彿:&nbsp; </span>{{ item.sampleCode }}</el-col>
+                      <el-col :span="8"><span>&nbsp;&nbsp;&nbsp;&nbsp;瑙勬牸鍨嬪彿:&nbsp; </span>{{ item.model }}</el-col>
+                    </el-row>
+                    <el-row style="margin-top: 1px;font-size: 16px;">
+                      <el-col :span="16"><span>&nbsp;&nbsp;&nbsp;&nbsp;濮旀墭鍗曞彿:&nbsp; </span>{{ item.code }}</el-col>
+                      <el-col :span="8"><span>&nbsp;&nbsp;&nbsp;&nbsp;鐢垫満缂栧彿:&nbsp; </span>{{ item.motorNumber }}</el-col>
+                    </el-row>
+                    <el-row style="margin-top: 1px;font-size: 16px;">
+                      <el-col><span>&nbsp;&nbsp;&nbsp;&nbsp;鏍锋満瀹屾垚鏃堕棿:&nbsp; </span>{{ item.issueTime }}</el-col>
+                    </el-row>
+                    <el-row style="margin-top: 1px;font-size: 16px;" class="ellipsis-multiline">
+                      <el-col><span>&nbsp;&nbsp;&nbsp;&nbsp;妫�娴嬮」鐩�:&nbsp; </span>{{ item.item }}</el-col>
+                    </el-row>
+                  </div>
+                </div>
+              </div>
+            </el-card>
+          </el-checkbox-group>
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-row>
+          <el-button @click="printDialogVisible=false">鍙� 娑�</el-button>
+          <el-button type="primary" @click="submitPrint" :loading="printLoading">鎵� 鍗�</el-button>
+        </el-row>
+      </span>
+    </el-dialog>
+    <div class="el-dialog__body" style="overflow-y: auto;position: fixed;top:0;right: 20px;z-index: 9999;">
+        <div id="printMOrder" class="printMOrder" ref="printMOrder">
+          <el-card class="box-card" v-for="(item, i) in checkDataList" :key="i+'uuuuu'" style="font-size: 16px !important;page-break-after: always;color: #000;box-shadow: none;margin: 0 !important;padding: 0 !important;">
+            <div>
+              <p style="text-align: center;font-size: 18px;font-weight: 500;margin-top: 10px;">{{ item.sample }}</p>
+              <barcode :value="item.sampleCode" :height="34" :width="2" :displayValue="false" style="display: flex;justify-content: center;width: 100%;"></barcode>
+              <div>
+                <div style="width: 100%;line-height: 30px;">
+                  <el-row style="font-size: 16px;">
+                    <el-col :span="16"><span>鏍峰搧缂栧彿:&nbsp; </span>{{ item.sampleCode }}</el-col>
+                    <el-col :span="7"><span>瑙勬牸鍨嬪彿:&nbsp; </span>{{ item.model }}</el-col>
+                  </el-row>
+                  <el-row style="margin-top: 1px;font-size: 16px;">
+                    <el-col :span="16"><span>濮旀墭鍗曞彿:&nbsp; </span>{{ item.code }}</el-col>
+                    <el-col :span="7"><span>鐢垫満缂栧彿:&nbsp; </span>{{ item.motorNumber }}</el-col>
+                  </el-row>
+                  <el-row style="margin-top: 1px;font-size: 16px;">
+                    <el-col><span>鏍锋満瀹屾垚鏃堕棿:&nbsp; </span>{{ item.issueTime }}</el-col>
+                  </el-row>
+                  <el-row style="margin-top: 1px;font-size: 16px;" class="ellipsis-multiline">
+                    <el-col><span>妫�娴嬮」鐩�:&nbsp; </span>{{ item.item }}</el-col>
+                  </el-row>
+                </div>
+              </div>
+            </div>
+          </el-card>
+        </div>
+    </div>
     <el-dialog title="鏍锋満缂栧彿" :visible.sync="BZDialogVisible" width="60%">
 				<div class="body" style="max-height: 60vh;" v-if="BZDialogVisible">
 				</div>
@@ -414,7 +486,7 @@
 						<el-button type="primary" @click="submitForm3" :loading="upLoad">纭� 瀹�</el-button>
 					</el-row>
 				</span>
-			</el-dialog>
+		</el-dialog>
 	</div>
 </template>
 
@@ -422,7 +494,7 @@
 	import ValueTable from '../tool/value-table.vue'
 	import Add from '../do/b1-ins-order/add.vue'
   import vueQr from 'vue-qr'
-import { Header } from 'iview';
+  import PrintJS from 'print-js'
 	export default {
 		components: {
 			ValueTable,
@@ -729,11 +801,7 @@
         more:false,
         insOrderRow:{},
         checkIndexList:[],
-        checkDataList:[
-          {
-            sampleCode:'11111'
-          }
-        ],
+        checkDataList:[],
         qrData:[],
         multipleSelection:[],
         sonLaboratoryList:[],
@@ -840,7 +908,6 @@
             a.item = [...new Set(arr1)].join(',')
           })
           this.qrData = arr
-          console.log(this.qrData)
 				})
       },
       //閫夋嫨瑕佹墦鍗扮殑浜岀淮鐮�
@@ -865,6 +932,38 @@
         }
         this.isIndeterminate = false;
       },
+      submitPrint(){
+        if(this.checkDataList.length < 1){
+          this.$message.warning("璇烽�夋嫨瑕佹墦鍗扮殑浜岀淮鐮�")
+          return
+        }
+        PrintJS({
+          targetStyles: ["*"], // 浣跨敤dom鐨勬墍鏈夋牱寮忥紝寰堥噸瑕�
+          printable: 'printMOrder',//椤甸潰
+          type: "html",//鏂囨。绫诲瀷
+          maxWidth:360,
+          header: '',
+          style:
+            `@page {
+              margin: 0.4cm;
+              margin-right: 0.4cm;
+              margin-top: 0.4cm;
+              margin-bottom: 0.4cm;
+              padding-bottom: 0px;
+              size: 400px 75px collapse;
+            }
+            html{
+              zoom:100%;
+
+            }
+            @media print{
+              width: 400px;
+              height: 75px;
+              margin:0;
+            }`,
+          font_size: '0.29cm',
+        });
+      },
       async print(){
         if(this.multipleSelection.length==0){
             this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�')

--
Gitblit v1.9.3