From 9da0675fa67f1f03f48881b2664da4c01356d1b5 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期三, 23 七月 2025 15:01:08 +0800
Subject: [PATCH] 插回损--功能修改
---
src/views/quality/rawMaterial/index.vue | 197 +++++++++++++++++++++++++++++++++++++------------
1 files changed, 148 insertions(+), 49 deletions(-)
diff --git a/src/views/quality/rawMaterial/index.vue b/src/views/quality/rawMaterial/index.vue
index f9a611a..1152cfb 100644
--- a/src/views/quality/rawMaterial/index.vue
+++ b/src/views/quality/rawMaterial/index.vue
@@ -17,7 +17,7 @@
<template>
<div class="mod-config">
<basic-container>
- <ttable
+ <ttable
:table="table"
:resultData="resultData"
@handleSelectionChange="handleSelectionChange"
@@ -27,7 +27,7 @@
@queryParam="getQueryParam($event)"
ref="rawMaterialTable">
<template #toolbar>
- <el-button @click="exportRawMaterial" type="primary" >瀵煎嚭</el-button>
+ <!-- <el-button @click="exportRawMaterial" type="primary" >瀵煎嚭</el-button> -->
</template>
</ttable>
</basic-container>
@@ -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,12 +54,13 @@
</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,checkPutIFS } 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 printTemplate from './rawMaterial-print.vue'
+import { transformZip } from '@/util/fileTransform'
+import printTemplate from './rawMaterial-print'
export default {
data() {
return {
@@ -101,6 +102,29 @@
isSearch: true,
searchInfoType: 'text',
render: { fun: this.addOrUpdateHandle }
+ },
+ {
+ minWidth: '120',
+ prop: 'type',
+ label: '妫�楠岀被鍨�',
+ isTrue: true,
+ isSearch: true,
+ searchInfoType: 'select',
+ optList: () => {
+ return this.typeList
+ }
+ },
+ {
+ minWidth: '120',
+ prop: 'checkState',
+ label: '瀹℃牳鐘舵��',
+ isTrue: true,
+ isSearch: true,
+ searchInfoType: 'select',
+ formatter: this.checkStateFormat,
+ optList: () => {
+ return this.checkStateList
+ }
},
{
minWidth: '120',
@@ -163,12 +187,13 @@
},
{
minWidth: '120',
- prop: 'createTime',
+ prop: 'startTime',
label: '鎶ユ鏃ユ湡',
isTrue: true,
sort: true,
isSearch: true,
searchInfoType: 'text',
+ searchInfoType: 'datetimerange',
formatter: this.formatDateTime,
},
{
@@ -186,6 +211,7 @@
isTrue: true,
isSearch: true,
searchInfoType: 'text',
+ searchInfoType: 'datetimerange',
formatter: this.formatDateTime,
},
{
@@ -212,38 +238,17 @@
return this.StateList
}
},
- ],
- toolbar: [
{
- text: '鏂板',
- type: 'primary',
- fun: this.addOrUpdateHandle
+ minWidth: '120',
+ prop: 'remark',
+ label: '澶囨敞',
+ isTrue: true,
+ isSearch: true,
+ searchInfoType: 'text',
},
- {
- text: '涓嬭浇妫�楠屾姤鍛�',
- type: 'primary',
- fun: this.downloadReport
- }
],
- operator: [{
- text: '鎵撳嵃',
- type: 'text',
- size: 'small',
- fun: this.previewFun,
- show: {
- val: [
- '1',
- '0'
- ],
- key: 'judgeState'
- }
- },
- {
- text: '浣滃簾',
- type: 'text',
- size: 'small',
- fun: this.deleteHandle
- }],
+ toolbar: [],
+ operator: null,
operatorConfig: {
fixed: 'right',
label: '鎿嶄綔',
@@ -253,6 +258,8 @@
},
insStateList: [{label:'鍏ㄩ儴',value:''},{label:'宸叉娴�',value:'1'},{label:'鏈娴�',value:'0'}],
StateList: [{label:'鍏ㄩ儴',value:''},{label:'宸插悎鏍�',value:'1'},{label:'涓嶅悎鏍�',value:'0'}],
+ typeList: [{label:'鍏ㄩ儴',value:''},{label:'棣栨',value:'棣栨'},{label:'杩旀',value:'杩旀'}],
+ checkStateList: [{label:'鏈鏍�',value:'0'},{label:'瀹℃牳閫氳繃',value:'1'},{label:'瀹℃牳涓嶉�氳繃',value:'2'}],
}
},
components: {
@@ -260,7 +267,50 @@
RawMaterialForm,
printTemplate,
},
- created() { },
+ created() {
+ if(this.permissions.quality_rawMaterial_add){
+ this.table.toolbar.push({
+ text: '鏂板',
+ type: 'primary',
+ fun: this.addOrUpdateHandle
+ })
+ }
+ if(this.permissions.quality_rawMaterial_download){
+ this.table.toolbar.push({
+ text: '涓嬭浇妫�楠屾姤鍛�',
+ type: 'primary',
+ loading: false,
+ disabled: false,
+ fun: this.downloadReport,
+
+ })
+ }
+ if(this.permissions.quality_rawMaterial_check){
+ this.table.operator = [{
+ text: '瀹℃牳',
+ type: 'text',
+ size: 'small',
+ fun: this.examineHandle,
+ showFun: (row)=>{return row.type==='棣栨'&& row.insState==='1'},
+ show: {
+ key: 'checkState',
+ val: ['0','2']
+ }
+ }]
+ }
+ if(this.permissions.quality_rawMaterial_del){
+ this.table.operator.push({
+ text: '浣滃簾',
+ type: 'text',
+ size: 'small',
+ fun: this.deleteHandle,
+ show: {
+ key: 'judgeState',
+ val: ['',null]
+ }
+ })
+ }
+ },
computed: {
...mapGetters(['permissions'])
},
@@ -272,6 +322,29 @@
}
},
methods:{
+ examineHandle(val){
+ this.$confirm('鏄惁瀹℃牳閫氳繃璇ユ楠岄」?', '鎻愮ず', {
+ distinguishCancelAndClose: true,
+ confirmButtonText: '閫氳繃',
+ cancelButtonText: '涓嶉�氳繃',
+ type: 'warning'
+ }).then(() => {
+ this.checkPutIFSFun(val.id,1);
+ }).catch((action) => {
+ if(action === 'cancel'){
+ this.checkPutIFSFun(val.id,2);
+ }
+ });
+ },
+ checkPutIFSFun(id,result){
+ checkPutIFS(id, result).then(res=>{
+ if(res.status===200){
+ this.getData()
+ }
+ }).catch(error=>{
+ console.error(error)
+ })
+ },
downloadReport(){
let selection = this.multipleSelection
if(!selection || selection.length < 1){
@@ -285,7 +358,22 @@
this.$message.error("鍙兘閫夋嫨宸叉娴嬬殑鏁版嵁")
return
}
- console.log(selection)
+ let ids = []
+ selection.forEach(ele=>{
+ ids.push(ele.id)
+ })
+ this.table.toolbar.find((e) => e.text === '涓嬭浇妫�楠屾姤鍛�').loading = true
+ this.table.toolbar.find((e) => e.text === '涓嬭浇妫�楠屾姤鍛�').disabled = true
+ try{
+ downloadReport({ids : ids}).then(res=>{
+ transformZip(res)
+ })
+ }catch(error){
+ console.log(error)
+ } finally{
+ this.table.toolbar.find((e) => e.text === '涓嬭浇妫�楠屾姤鍛�').loading = false
+ this.table.toolbar.find((e) => e.text === '涓嬭浇妫�楠屾姤鍛�').disabled = false
+ }
}
},
//鏌ョ湅鎶ュ憡鎸夐挳
@@ -305,13 +393,12 @@
type: "html",
// header: "鍘熸潗鏂欐娴嬫姤鍛�",
targetStyles: ["*"],
- style: `@page {margin: 0mm 5mm;size: A4;};
- html {zoom:100%;};
+ style: `@page {margin: 0mm 5mm;size: A4 landscape;}
+ html {zoom:100%;}
@media print {
html,body{
- width:880pt;
- height:900pt;
- margin:0;
+ width:200mm;
+ height:297mm;
}
}`,
ignoreElements: ["no-ignore"],
@@ -323,7 +410,6 @@
},
exportRawMaterial(){
exportRawMaterial(this.queryParam).then(res=>{
- console.log(res)
this.downloadFun(res)
}).catch(error=>{
console.log(error);
@@ -367,10 +453,16 @@
},
// 鏂板 / 淇敼
addOrUpdateHandle(row) {
+ if(!this.permissions.quality_rawMaterial_edit && row.id!=null){
+ this.$message.error("璇ヨ鑹叉病鏈夋搷浣滄潈闄�")
+ return
+ }
this.$router.push({
name: 'rawMaterialForm',
- query: {
- id: row == null ? null : row.id,
+ query: {
+ id: row == null ? null : row.id
+ },
+ params: {
resultVal: row == null ? null : row.judgeState
}
})
@@ -384,12 +476,20 @@
}
},
formatJudgeState(row, column, cellValue){
- if(cellValue != undefined || cellValue != null){
+ if(cellValue != undefined && cellValue != null && cellValue != ''){
if(cellValue == 0){
return "<span style='color:#E84738;'>涓嶅悎鏍�</span>"
}
return "<span style='color:#34BD66;'>鍚堟牸</span>"
}
+ },
+ checkStateFormat(row, column, cellValue){
+ this.checkStateList.forEach((obj) => {
+ if (obj.value === cellValue) {
+ cellValue = obj.label
+ }
+ })
+ return cellValue
},
formatDateTime(row, column, cellValue) {
return cellValue ? fecha.format(new Date(cellValue), 'yyyy-MM-dd') : ''
@@ -430,4 +530,3 @@
}
}
</script>
-
\ No newline at end of file
--
Gitblit v1.9.3