From a97ed98a732f533edd1b2b61ca3dbcaec7406306 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期三, 29 十一月 2023 10:41:46 +0800
Subject: [PATCH] Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before
---
src/views/quality/rawMaterial/index.vue | 180 +++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 137 insertions(+), 43 deletions(-)
diff --git a/src/views/quality/rawMaterial/index.vue b/src/views/quality/rawMaterial/index.vue
index 297bd4e..fcfe4bf 100644
--- a/src/views/quality/rawMaterial/index.vue
+++ b/src/views/quality/rawMaterial/index.vue
@@ -37,21 +37,40 @@
ref="addOrUpdate"
@refreshDataList="getData"
></RawMaterialForm>
+ <el-dialog
+ top="7vh"
+ title="鎵撳嵃棰勮"
+ :visible.sync="printDialogVisible"
+ 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">
+ <el-button @click="()=>{printDialogVisible = false;this.printFormData=null}">鍙� 娑�</el-button>
+ <el-button type="primary" @click="printFun()">鎵� 鍗�</el-button>
+ </span>
+ </el-dialog>
</div>
</template>
<script>
import ttable from '@/views/common/ztt-table.vue'
-import { getRawInspectList,delObj,exportRawMaterial } 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() {
return {
+ printFormData: null,
+ printDialogVisible: false,
queryParam: {},
resultData:[],
addOrUpdateVisible: false,
type: [1],
+ multipleSelection: [],
prelang: 'rawMaterial',
ajaxFun: getRawInspectList,
options: {
@@ -77,12 +96,20 @@
column: [
{
minWidth: '120',
- prop: 'code',
- label: '鍘熸潗鏂欑紪鐮�',
+ prop: 'rawInsNo',
+ label: '鍘熸潗鏂欐楠岀紪鍙�',
isTrue: true,
isSearch: true,
searchInfoType: 'text',
render: { fun: this.addOrUpdateHandle }
+ },
+ {
+ minWidth: '120',
+ prop: 'code',
+ label: '鍘熸潗鏂欑紪鐮�',
+ isTrue: true,
+ isSearch: true,
+ searchInfoType: 'text'
},
{
minWidth: '120',
@@ -188,12 +215,32 @@
},
],
toolbar: [
+ {
+ 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: 'primary',
- fun: this.addOrUpdateHandle
- }],
- operator: [{
text: '浣滃簾',
type: 'text',
size: 'small',
@@ -210,25 +257,73 @@
StateList: [{label:'鍏ㄩ儴',value:''},{label:'宸插悎鏍�',value:'1'},{label:'涓嶅悎鏍�',value:'0'}],
}
},
- // props:{
- // queryParam:{
- // type: Object,
- // default: ()=>{
- // return {}
- // }
- // }
- // },
components: {
ttable,
RawMaterialForm,
+ printTemplate,
},
- created() {
-
- },
+ created() { },
computed: {
...mapGetters(['permissions'])
},
+ watch:{
+ printFormData(newVal){
+ if(newVal){
+ this.printFormData = newVal
+ }
+ }
+ },
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
+ }
+ console.log(selection)
+ downloadReport().then(res=>{
+ transformZip(res)
+ }).catch(error=>{
+ console.log(error)
+ })
+ }
+ },
+ //鏌ョ湅鎶ュ憡鎸夐挳
+ previewFun(row){
+ getObj(row.id).then(res=>{
+ this.printFormData = res.data.data
+ this.printDialogVisible = true
+ }).catch(error=>{
+ console.log(error);
+ })
+ },
+ //鎵撳嵃鎸夐挳
+ printFun() {
+ this.printDialogVisible = false;
+ PrintJS({
+ printable: "printRaw",
+ type: "html",
+ // header: "鍘熸潗鏂欐娴嬫姤鍛�",
+ targetStyles: ["*"],
+ style: `@page {margin: 0mm 5mm;size: A4;}
+ html {zoom:100%;}
+ @media print {
+ html,body{
+ width:200mm;
+ height:297mm;
+ }
+ }`,
+ ignoreElements: ["no-ignore"],
+ orientation: 'portrait'
+ });
+ },
getQueryParam(data){
this.queryParam = data
},
@@ -307,37 +402,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