From c880739ec4cd5ede33b31eb98ad5f7628ea288e5 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期一, 11 十二月 2023 17:41:40 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- src/views/quality/rawMaterial/index.vue | 137 ++++++++++++++++++++++++++++----------------- 1 files changed, 86 insertions(+), 51 deletions(-) diff --git a/src/views/quality/rawMaterial/index.vue b/src/views/quality/rawMaterial/index.vue index bdad739..0c11eb8 100644 --- a/src/views/quality/rawMaterial/index.vue +++ b/src/views/quality/rawMaterial/index.vue @@ -38,11 +38,11 @@ @refreshDataList="getData" ></RawMaterialForm> <el-dialog - top="10vh" + top="7vh" title="鎵撳嵃棰勮" :visible.sync="printDialogVisible" - width="60%"> - <div style="width:100%;height: 60vh;overflow-y: scroll;"> + width="70%"> + <div style="width:90%;margin-left:5%;height: 60vh;overflow-y: scroll;"> <printTemplate id="printRaw" :formData="printFormData"></printTemplate> </div> <span slot="footer" class="dialog-footer"> @@ -54,11 +54,12 @@ </template> <script> import ttable from '@/views/common/ztt-table.vue' -import { getRawInspectList,delObj,exportRawMaterial,getObj } from '@/api/quality/rawMaterial' +import { getRawInspectList,delObj,exportRawMaterial,getObj,downloadReport } from '@/api/quality/rawMaterial' import RawMaterialForm from './rawMaterial-form' import * as fecha from 'element-ui/lib/utils/date' import { mapGetters } from 'vuex' import PrintJS from 'print-js' +import { transformZip } from '@/util/fileTransform' import printTemplate from './rawMaterial-print.vue' export default { data() { @@ -69,6 +70,7 @@ resultData:[], addOrUpdateVisible: false, type: [1], + multipleSelection: [], prelang: 'rawMaterial', ajaxFun: getRawInspectList, options: { @@ -213,24 +215,31 @@ }, ], toolbar: [ - { - text: '鏂板', - type: 'primary', - fun: this.addOrUpdateHandle - }], - operator: [{ - text: '鎵撳嵃', - type: 'text', - size: 'small', - fun: this.previewFun, - show: { - val: [ - '1', - '0' - ], - key: 'judgeState' + { + text: '鏂板', + type: 'primary', + fun: this.addOrUpdateHandle + }, + { + text: '涓嬭浇妫�楠屾姤鍛�', + type: 'primary', + fun: this.downloadReport } - }, + ], + operator: [ + // { + // text: '鎵撳嵃', + // type: 'text', + // size: 'small', + // fun: this.previewFun, + // show: { + // val: [ + // '1', + // '0' + // ], + // key: 'judgeState' + // } + // }, { text: '浣滃簾', type: 'text', @@ -253,9 +262,7 @@ RawMaterialForm, printTemplate, }, - created() { - - }, + created() { }, computed: { ...mapGetters(['permissions']) }, @@ -267,6 +274,30 @@ } }, methods:{ + downloadReport(){ + let selection = this.multipleSelection + if(!selection || selection.length < 1){ + this.$message.error("璇峰厛閫夋嫨妫�楠屾暟鎹�") + return + }else{ + let arr = selection.filter(s=>{ + return s.judgeState==null || s.judgeState=='' + }) + if(arr.length > 0){ + this.$message.error("鍙兘閫夋嫨宸叉娴嬬殑鏁版嵁") + return + } + let ids = [] + selection.forEach(ele=>{ + ids.push(ele.id) + }) + downloadReport({ids : ids}).then(res=>{ + transformZip(res) + }).catch(error=>{ + console.log(error) + }) + } + }, //鏌ョ湅鎶ュ憡鎸夐挳 previewFun(row){ getObj(row.id).then(res=>{ @@ -282,10 +313,16 @@ PrintJS({ printable: "printRaw", type: "html", - maxWidth: 880, // header: "鍘熸潗鏂欐娴嬫姤鍛�", - style: '@page {margin: 10mm 5mm;}', targetStyles: ["*"], + style: `@page {margin: 0mm 5mm;size: A4;} + html {zoom:100%;} + @media print { + html,body{ + width:200mm; + height:297mm; + } + }`, ignoreElements: ["no-ignore"], orientation: 'portrait' }); @@ -295,7 +332,6 @@ }, exportRawMaterial(){ exportRawMaterial(this.queryParam).then(res=>{ - console.log(res) this.downloadFun(res) }).catch(error=>{ console.log(error); @@ -368,37 +404,36 @@ }, getData() { this.$refs.rawMaterialTable.getDataList() - }, // table鑷甫浜嬩欢 handleSelectionChange(val) { + this.multipleSelection = val // 鏍规嵁鐘舵�侊紝绂佺敤琛ㄥご鎸夐挳 // 绛涢�夊嚭閫変腑璁板綍鐨勭姸鎬� - var stateArr = val.map(function(value, index) { - return value.coState - }) + // var stateArr = val.map(function(value, index) { + // return value.coState + // }) // 閫変腑鐘舵�佹暟缁勫厓绱犲幓閲� - var uniqueStateArr = [] - for (var i = 0; i < stateArr.length; i++) { - if (uniqueStateArr.indexOf(stateArr[i]) == -1) { - uniqueStateArr.push(stateArr[i]) - } - } + // var uniqueStateArr = [] + // for (var i = 0; i < stateArr.length; i++) { + // if (uniqueStateArr.indexOf(stateArr[i]) == -1) { + // uniqueStateArr.push(stateArr[i]) + // } + // } // 寰幆鑷畾涔夋寜閽紝鍒ゆ柇姣忎釜鎸夐挳鐨刾ermitArr鏄惁瀹屽叏鍖呭惈閫変腑鐘舵�侊紝鑻ュ畬鍏ㄥ寘鍚紝鍒欐寜閽寒锛屽惁鍒欐寜閽伆 - for (var i = 0; i < this.stateTagArr.length; i++) { - if ( - uniqueStateArr.every((val) => - this.stateTagArr[i].permitArr.length <= 0 - ? true - : this.stateTagArr[i].permitArr.includes(val) - ) - ) { - this.stateTagArr[i].disabled = false - } else { - this.stateTagArr[i].disabled = true - } - } - this.multipleSelection = val + // for (var i = 0; i < this.stateTagArr.length; i++) { + // if ( + // uniqueStateArr.every((val) => + // this.stateTagArr[i].permitArr.length <= 0 + // ? true + // : this.stateTagArr[i].permitArr.includes(val) + // ) + // ) { + // this.stateTagArr[i].disabled = false + // } else { + // this.stateTagArr[i].disabled = true + // } + // } }, } } -- Gitblit v1.9.3