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/quality/processconfiguration/index.vue | 399 ++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 310 insertions(+), 89 deletions(-) diff --git a/src/views/quality/processconfiguration/index.vue b/src/views/quality/processconfiguration/index.vue index 6302a67..b364506 100644 --- a/src/views/quality/processconfiguration/index.vue +++ b/src/views/quality/processconfiguration/index.vue @@ -9,6 +9,7 @@ :prelang="prelang" :options="options" :ajaxFun="ajaxFun" + @queryParam="getQueryParam($event)" ref="processconfiguration" > <template #toolbar></template> @@ -19,23 +20,79 @@ ref="addOrUpdate" @refreshDataList="getData" ></table-form> + <table></table> </basic-container> + <div> + <el-dialog title="鏈�缁堝缃剰瑙�" :visible.sync="dialogVisible" width="30%"> + <el-form label-width="120px"> + <div v-if="type === '鍘熸潗鏂欐楠�'"> + <!-- <el-form-item label="鏈�缁堝缃剰瑙侊細"> + <el-input type="textarea" :rows="3" placeholder="璇疯緭鍏ュ唴瀹�" v-model="WayIdea" /> + </el-form-item> --> + <el-radio-group v-model="checkList"> + <el-radio label="杩斾慨">杩斾慨</el-radio> + <el-radio label="鎹㈣揣">鎹㈣揣</el-radio> + <el-radio label="閫�璐�">閫�璐�</el-radio> + <el-radio label="璁╂鎺ユ敹">璁╂鎺ユ敹</el-radio> + <el-radio label="鎺ユ敹">鎺ユ敹</el-radio> + </el-radio-group> + </div> + <div v-if="type === '浜у搧妫�楠�' "> + <el-radio-group v-model="checkList"> + <el-radio label="杩斾慨">杩斾慨</el-radio> + <el-radio label="鎺ユ敹">鎺ユ敹</el-radio> + <el-radio label="闄嶇骇浣跨敤">闄嶇骇浣跨敤</el-radio> + <el-radio label="鎶ュ簾">鎶ュ簾</el-radio> + <el-radio label="闄嶄负浠栫敤">闄嶄负浠栫敤</el-radio> + </el-radio-group> + </div> + <div v-if="type === '杩囩▼妫�楠�'"> + <el-radio-group v-model="checkList"> + <el-row> + <div style="padding: 20px;"> + <el-radio label="杩斾慨">杩斾慨</el-radio> + <el-radio label="鎺ユ敹">鎺ユ敹</el-radio> + <el-radio label="闄嶇骇浣跨敤">闄嶇骇浣跨敤</el-radio> + <el-radio label="鎶ュ簾">鎶ュ簾</el-radio> + </div> + <div style="padding: 20px;"> + <el-radio label="杩斿伐">杩斿伐</el-radio> + <el-radio label="闄嶄负浠栫敤">闄嶄负浠栫敤</el-radio> + </div> + </el-row> + </el-radio-group> + </div> + </el-form> + <span slot="footer" > + <el-button @click="WayCancel()">鍙� 娑�</el-button> + <el-button type="primary" @click="WaySure()">纭� 瀹�</el-button> + </span> + </el-dialog> + </div> </div> </template> <script> -import { - getqualityUnqualifiedConfiguration, - delqualityUnqualifiedConfiguration +import { + UnqualifiedList, + pullInsUnapi, + AuditSuggestion, + exportData } from '@/api/quality/unqualifiedprocess' import TableForm from './table-form' import { mapGetters } from 'vuex' -import { remote } from '@/api/admin/dict' +// import { remote } from '@/api/admin/dict' +import { transform } from '@/util/fileTransform' import ttable from '@/views/common/ztt-table.vue' export default { data() { return { - ajaxFun: getqualityUnqualifiedConfiguration, + queryParam: {}, + checkList: "", + // WayIdea:'', + UserId:{}, + type:'', + ajaxFun: UnqualifiedList,pullInsUnapi,AuditSuggestion, addOrUpdateVisible: false, multipleSelection: [], typeOptions: [], @@ -45,6 +102,7 @@ isShow: false, url: '' }, + dialogVisible: false, prelang: 'operation', options: { height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾 @@ -56,7 +114,8 @@ multiSelect: true, // seqNo: true, isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳 - isSearch: false, // 楂樼骇鏌ヨ鎸夐挳 + isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳 + isSearch: true, // 楂樼骇鏌ヨ鎸夐挳 defaultOrderBy: { column: 'createTime', direction: 'desc' } }, table: { @@ -66,114 +125,276 @@ data: [], // 鏍囬 column: [ - // 缂栧彿 + // 浜у搧澶х被 { minWidth: '140', - prop: 'workShop', - label: '杞﹂棿', - sort: true, + prop: 'type', + label: '妫�楠岀被鍨�', + isTrue: true, + isSearch: true, + searchInfoType: 'select', + formatter: this.materialTypeList, + optList: () => { + return this.materialType + // render: { fun: this.addOrUpdateHandle } + } + }, + // 浜у搧鍚嶇О + { + minWidth: '140', + prop: 'material', + label: '浜у搧鍚嶇О', isTrue: true, isSearch: true, searchInfoType: 'text', - render: { fun: this.addOrUpdateHandle } }, - // 浜у搧绫诲瀷 - { - minWidth: '120', - prop: 'type', - label: '浜у搧绫诲瀷', - sort: true, + // 瑙勬牸鍨嬪彿 + { + minWidth: '140', + prop: 'specs', + label: '瑙勬牸鍨嬪彿', isTrue: true, isSearch: true, - searchInfoType: 'select', - formatter: this.formatType, - optList: () => { - return this.typeOptions - } + searchInfoType: 'text', }, - // 澶勭悊鏂瑰紡 - { - minWidth: '200', - prop: 'processMode', - label: '澶勭悊鏂瑰紡', - sort: true, - isTrue: true, - isSearch: true, - searchInfoType: 'select', - formatter: this.formatProcessMode, - optList: () => { - return this.processModeOptions - } - }, - // 鍙戣捣浜� - // { - // minWidth: '200', - // prop: 'originator', - // label: '鍙戣捣浜�', - // sort: true, - // isTrue: true, - // isSearch: true, - // searchInfoType: 'text' - // }, - // 瀹℃牳浜� { minWidth: '140', - prop: 'examiner', - label: '瀹℃牳浜�', - sort: true, + prop: 'materialCode', + label: '闆朵欢鍙�', isTrue: true, isSearch: true, - searchInfoType: 'text' + searchInfoType: 'text', }, - // 澶勭悊浜� - { - minWidth: '120', - prop: 'handler', - label: '澶勭悊浜�', - sort: true, + // 涓嶅悎鏍煎搧鏁伴噺 + { + minWidth: '140', + prop: 'number', + label: '涓嶅悎鏍煎搧鏁伴噺', isTrue: true, isSearch: true, - searchInfoType: 'text' - } + searchInfoType: 'text', + }, + { + minWidth: '140', + prop: 'reason', + label: '鐜拌薄鎻忚堪', + isTrue: true, + isSearch: true, + searchInfoType: 'text', + }, + // 澶勭悊鎰忚 + { + minWidth: '140', + prop: 'way', + label: '澶勭悊鎰忚', + isTrue: true, + isSearch: true, + searchInfoType: 'text', + }, + { + minWidth: '120', + prop: 'faultyMaterials', + label: '鏄惁鐟曠柕', + isTrue: true, + isSearch: true, + searchInfoType: 'select', + formatter: this.flaw, + optList: () => { + return this.insStateList + } + }, + // 鐢宠浜� + { + minWidth: '140', + prop: 'createUser', + label: '鐢宠浜�', + isTrue: true, + isSearch: true, + searchInfoType: 'text', + }, + // 鏃ユ湡 + { + minWidth: '130', + width: '150', + prop: 'dealTime', + label: '瀹℃牳鏃堕棿', + sort: true, + isTrue: true, + isSearch: true, + searchInfoType: 'datetimerange', + formatter: this.formatDateTime, + }, + { + minWidth: '120', + prop: 'state', + label: '鐘舵��', + isTrue: true, + isSearch: true, + searchInfoType: 'select', + formatter: this.formatInsState, + optList: () => { + return this.StateList + } + }, + // { + // minWidth: '120', + // prop: '', + // label: '浜у搧鍚嶇О', + // sort: true, + // isTrue: true, + // isSearch: true, + // searchInfoType: 'select', + // formatter: this.formatType, + // optList: () => { + // return this.typeOptions + // } + // }, + // 澶勭悊鏂瑰紡 + // { + // minWidth: '200', + // prop: 'processMode', + // label: '澶勭悊鏂瑰紡', + // sort: true, + // isTrue: true, + // isSearch: true, + // searchInfoType: 'select', + // formatter: this.formatProcessMode, + // optList: () => { + // return this.processModeOptions + // } + // }, + ], toolbar: [ - { - text: '鏂板', - type: 'primary', - fun: this.addOrUpdateHandle - } + // { + // text: '瀵煎嚭', + // type: 'primary', + // fun: this.handleExport + // }, ], - operator: [ - { - text: '鍒犻櫎', - type: 'text', - size: 'small', - fun: this.deleteHandle - } - ], + operator: null, operatorConfig: { fixed: 'right', label: '鎿嶄綔', - width: 100, + width: 150, minWidth: 100 } - } + }, + materialType: [{label:'鍘熸潗鏂欐楠�',value:'鍘熸潗鏂欐楠�'},{label:'杩囩▼妫�楠�',value:'杩囩▼妫�楠�'},{label:'浜у搧妫�楠�',value:'浜у搧妫�楠�'},{label:'鍖呰妫�楠�',value:'鍖呰妫�楠�'}], + StateList: [{label:'鍏ㄩ儴',value:''},{label:'宸叉彁浜ゅ鏍�',value:'1'},{label:'寰呭鐞�',value:'0'},{label:'宸插鐞�',value:'2'}], + insStateList: [{label:'鍏朵粬',value:''},{label:'鐟曠柕',value:'1'}], } }, components: { + ttable, TableForm, - ttable }, computed: { ...mapGetters(['permissions']) + }, created() { - this.getType() + // this.getType() + let arr = [] + if(this.permissions.quality_processconfiguration_submit){ + arr.push({ + text: '鎻愪氦瀹℃牳', + type: 'text', + size: 'small', + fun: this.Submitreview + }) + } + if(this.permissions.quality_processconfiguration_result){ + arr.push({ + text: '瀹℃牳缁撴灉', + type: 'text', + size: 'small', + fun: this.AuditResult + }) + } + this.table.operator = arr.length>0 ? arr : null }, methods: { + getQueryParam(data){ + this.queryParam = data + }, + handleExport(){ + exportData(this.queryParam).then(res=>{ + this.downloadFun(res) + }).catch(error=>{ + console.log(error); + }) + }, + downloadFun(result){ + if(result == null || result == undefined){ + return; + } + var nameList = result.headers['content-disposition']; + nameList = decodeURI(nameList); + var fileName = nameList.split('=')[1]; + const blob = new Blob([result.data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' }) + const downloadElement = document.createElement('a') // 鏂板缓涓�涓狣OM鑺傜偣 + const href = window.URL.createObjectURL(blob) // 鍒涘缓涓嬭浇鐨勯摼鎺� + downloadElement.href = href + downloadElement.download = fileName // 涓嬭浇鍚庢枃浠跺悕 + document.body.appendChild(downloadElement) // 灏嗘柊澧炵殑鑺傜偣鎸傝浇鍒伴〉闈笂 + downloadElement.click() // 鐐瑰嚮涓嬭浇 + document.body.removeChild(downloadElement) // 涓嬭浇瀹屾垚绉婚櫎鍏冪礌 + window.URL.revokeObjectURL(href) + }, + //瀹℃牳缁撴灉 + AuditResult(row){ + this.UserId = row.id + this.type = row.type + this.dialogVisible = true; + + }, + WayCancel(){ + this.dialogVisible = false + this.checkList = null + this.WayIdea = null + }, + WaySure(){ + AuditSuggestion({id:this.UserId,way:this.checkList}).then( + res =>{ + this.checkList = null + this.WayIdea = null + this.$refs.processconfiguration.refreshData() + ;}) + this.dialogVisible = false + }, + //鎻愪氦瀹℃牳 + Submitreview(row){ + pullInsUnapi({id:row.id}).then(res =>{ + this.$refs.processconfiguration.refreshData() + }) + }, + + //鐘舵�� + formatInsState(row, column, cellValue){ + if(cellValue != undefined || cellValue != null){ + if(cellValue == 0){ + return "<span style='color:#E84738;'>寰呭鐞�</span>" + } + if(cellValue == 1){ + return "<span style='color:#34BD66;'>宸叉彁浜ゅ鏍�</span>" + } + if(cellValue == 2){ + return "<span style='color:#34BD66;'>宸插鐞�</span>" + } + } + }, + flaw(row, column, cellValue){ + if(cellValue != undefined || cellValue != null){ + if(cellValue == 1){ + return "<span style='color:#E84738;'>鐟曠柕鍝�</span>" + } + return "<span style='color:#34BD66;'></span>" + } + }, // 鑾峰彇鏁版嵁鍒楄〃 getData() { - this.$refs.processconfiguration.getDataList() + // this.$refs.processconfiguration.getDataList() }, handleSelectionChange(val) { // 澶氳閫変腑 @@ -202,18 +423,18 @@ }) return cellValue }, - getType() { - remote('unqualified_handle_type').then((response) => { - if (response.data.code === 0) { - this.typeOptions = response.data.data - } - }) - remote('unqualified_process_mode').then((response) => { - if (response.data.code === 0) { - this.processModeOptions = response.data.data - } - }) - }, + // getType() { + // remote('unqualified_handle_type').then((response) => { + // if (response.data.code === 0) { + // this.typeOptions = response.data.data + // } + // }) + // remote('unqualified_process_mode').then((response) => { + // if (response.data.code === 0) { + // this.processModeOptions = response.data.data + // } + // }) + // }, // 鍒犻櫎 deleteHandle(row) { this.$confirm('鏄惁纭鍒犻櫎杞﹂棿涓猴細' + row.workShop, '鎻愮ず', { -- Gitblit v1.9.3