From 4e2bb29096ac63837f8d2c5e25766ee094f45d6c Mon Sep 17 00:00:00 2001 From: zouyu <2723363702@qq.com> Date: 星期三, 27 十二月 2023 14:35:49 +0800 Subject: [PATCH] modified: src/page/index/top/index.vue modified: src/views/common/part.vue modified: src/views/equipment/equipment/index.vue modified: src/views/equipment/metering/index.vue modified: src/views/plan/manufacturingorder/auto-operationtask.vue modified: src/views/plan/operationtask/operationtask-form.vue modified: src/views/quality/Packaging_ledger/index.vue modified: src/views/quality/packageinspect/index.vue modified: src/views/quality/processconfiguration/index.vue modified: src/views/quality/teststandard/index.vue modified: vue.config.js --- src/views/equipment/metering/index.vue | 141 +++++++++++++++++++++++++++++++++++++--------- 1 files changed, 112 insertions(+), 29 deletions(-) diff --git a/src/views/equipment/metering/index.vue b/src/views/equipment/metering/index.vue index bbd003d..7660b19 100644 --- a/src/views/equipment/metering/index.vue +++ b/src/views/equipment/metering/index.vue @@ -19,6 +19,36 @@ @refreshDataList="getData" ></table-form> </basic-container> + <el-dialog title="鏍囩鍒楄〃" :visible.sync="diaPrintTab" width="500px" top="5vh"> + <div style="width:100%;height:400px;overflow-y: auto;"> + <div class="dia_body" id="printMetering"> + <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 10px; font-size: 16px !important;"> + <el-row> + <el-col :span="10" :offset="3">搴忓彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">缂栧彿锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">璁惧鍚嶇О锛�</el-col> + <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col> + </el-row> + <el-row> + <el-col :span="10" :offset="3">璁惧浜岀淮鐮侊細</el-col> + <el-col :span="10"> + <vueQr :text="tem.code+'id@'+tem.id" :size="80" :margin="2"></vueQr> + </el-col> + </el-row> + </el-card> + </div> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="diaPrintTab = false">鍙� 娑�</el-button> + <el-button type="primary" @click="printFun">鎵� 鍗�</el-button> + </span> + </el-dialog> </div> </template> @@ -29,6 +59,8 @@ import { mapGetters } from 'vuex' import * as fecha from 'element-ui/lib/utils/date' import { remote } from '../../../api/admin/dict' + import vueQr from 'vue-qr' + import PrintJS from 'print-js' export default { data() { return { @@ -36,7 +68,8 @@ multipleSelection: [], uploadInfo: { // 鏄惁灞曠ず涓婁紶EXCEL浠ュ強瀵瑰簲鐨剈rl - isShow: true, + Download:false, + isShow: true, url: '/mes/equipmentDevice/upload' }, prelang: 'workstation', @@ -52,7 +85,7 @@ isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳 isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳 isSearch: false, // 楂樼骇鏌ヨ鎸夐挳 - defaultOrderBy: { column: 'manufactureDate', direction: 'desc' } + defaultOrderBy: { column: 'id', direction: 'desc' } }, table: { total: 0, @@ -114,7 +147,7 @@ minWidth: '150', width: '250', prop: 'createTime', - label: '鍒涘缓鏃堕棿', + label: '鏍″噯鏃堕棿', sort: true, isTrue: true, formatter: this.formatReceiveTime, @@ -126,7 +159,7 @@ minWidth: '150', width: '250', prop: 'updateTime', - label: '淇敼鏃堕棿', + label: '鏍″噯鍒版湡鏃堕棿', sort: true, isTrue: true, formatter: this.formatReceiveTime, @@ -174,7 +207,7 @@ }, { minWidth: '30', - prop: 'InspectionUnit', + prop: 'inspectionUnit', label: '妫�楠屽崟浣�', sort: true, isTrue: true, @@ -210,7 +243,7 @@ }, { minWidth: '30', - prop: 'FixedPointPosition', + prop: 'fixedPointPosition', label: '瀹氱偣浣嶇疆', sort: true, isTrue: true, @@ -228,11 +261,6 @@ }, ], toolbar: [ - { - text: '鏂板', - type: 'primary', - fun: this.addOrUpdateHandle - }, // { // text: '鍚屾', // type: 'primary', @@ -240,22 +268,7 @@ // fun: this.pullEquipFun // } ], - operator: [ - { - text: '淇敼', - icon: 'el-icon-edit', - type: 'text', - size: 'small', - fun: this.addOrUpdateHandle - }, - { - text: '鍒犻櫎', - icon: 'el-icon-delete', - type: 'text', - size: 'small', - fun: this.deleteHandle - } - ], + operator: null, operatorConfig: { fixed: 'right', label: '鎿嶄綔', @@ -264,17 +277,54 @@ } }, addOrUpdateVisible: false, - workshopList: [] + workshopList: [], + diaPrintTab: false } }, components: { ttable, - TableForm + TableForm, + vueQr }, computed: { ...mapGetters(['permissions']) }, created() { + this.uploadInfo.isShow = this.permissions.equipment_metering_upload + if(this.permissions.equipment_metering_add){ + this.table.toolbar.push({ + text: '鏂板', + type: 'primary', + fun: this.addOrUpdateHandle + }) + } + if(this.permissions.equipment_metering_labelprint){ + this.table.toolbar.push({ + text: '鏍囩鎵撳嵃', + type: 'primary', + fun: this.labelPrint + }) + } + let arr = [] + if(this.permissions.equipment_metering_edit){ + arr.push({ + text: '淇敼', + icon: 'el-icon-edit', + type: 'text', + size: 'small', + fun: this.addOrUpdateHandle + }) + } + if(this.permissions.equipment_metering_del){ + arr.push({ + text: '鍒犻櫎', + icon: 'el-icon-delete', + type: 'text', + size: 'small', + fun: this.deleteHandle + }) + } + this.table.operator = arr.length>0 ? arr : null remote('work_shop').then((response) => { if (response.data.code === 0) { this.workshopList = response.data.data @@ -284,6 +334,32 @@ }) }, methods: { + printFun() { + this.diaPrintTab = false; + PrintJS({ + printable: 'printMetering',//椤甸潰 + type: "html",//鏂囨。绫诲瀷 + maxWidth:450, + targetStyles:['*'], + style: `@page { + margin:0; + padding: 0; + size: 360px 170px; + } + html{ + zoom:100%; + } + @media print{ + width: 360px; + height: 170px; + margin:0; + padding: 0; + }`, + onPrintDialogClose: this.erexcel=false, + targetStyles: ["*"], // 浣跨敤dom鐨勬墍鏈夋牱寮忥紝寰堥噸瑕� + font_size: '', + }); + }, pullEquipFun(){ this.table.toolbar.find((e) => e.text === '鍚屾').loading = true pullEquip().then(res=>{ @@ -336,6 +412,13 @@ this.$message.success('鍒犻櫎鎴愬姛') this.getData() }) + }, + labelPrint(){ + if(this.multipleSelection.length==0){ + this.$message.warning('璇烽�夋嫨涓�鏉℃暟鎹�') + return + } + this.diaPrintTab = true } } } -- Gitblit v1.9.3