From c5b7788a691f1ac4bc22c26e0203626cfdc3555f Mon Sep 17 00:00:00 2001 From: 王震 <10952869+daywangzhen@user.noreply.gitee.com> Date: 星期一, 06 十一月 2023 10:37:21 +0800 Subject: [PATCH] modified: src/views/quality/processconfiguration/index.vue modified: src/views/quality/rawMaterial/index.vue --- src/views/quality/processconfiguration/index.vue | 408 ++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 327 insertions(+), 81 deletions(-) diff --git a/src/views/quality/processconfiguration/index.vue b/src/views/quality/processconfiguration/index.vue index 6302a67..ab26a76 100644 --- a/src/views/quality/processconfiguration/index.vue +++ b/src/views/quality/processconfiguration/index.vue @@ -3,6 +3,8 @@ <basic-container> <ttable :table="table" + :resultData="resultData" + @change ="costPlannedAmountChange" @handleSelectionChange="handleSelectionChange" :uploadInfo="uploadInfo" :isShowHide="true" @@ -19,23 +21,74 @@ 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="dialogVisible = false">鍙� 娑�</el-button> + <el-button type="primary" @click="WaySure()">纭� 瀹�</el-button> + </span> + </el-dialog> + </div> </div> </template> <script> -import { - getqualityUnqualifiedConfiguration, - delqualityUnqualifiedConfiguration +import { UnqualifiedList,pullInsUnapi,AuditSuggestion } 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 ttable from '@/views/common/ztt-table.vue' export default { data() { return { - ajaxFun: getqualityUnqualifiedConfiguration, + resultData:[], + checkList: "", + // WayIdea:'', + UserId:{}, + type:'', + ajaxFun: UnqualifiedList,pullInsUnapi,AuditSuggestion, addOrUpdateVisible: false, multipleSelection: [], typeOptions: [], @@ -45,6 +98,7 @@ isShow: false, url: '' }, + dialogVisible: false, prelang: 'operation', options: { height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾 @@ -56,7 +110,8 @@ multiSelect: true, // seqNo: true, isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳 - isSearch: false, // 楂樼骇鏌ヨ鎸夐挳 + isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳 + isSearch: true, // 楂樼骇鏌ヨ鎸夐挳 defaultOrderBy: { column: 'createTime', direction: 'desc' } }, table: { @@ -66,114 +121,305 @@ 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 + // } + // }, + //鍙戣捣浜� + // { + // minWidth: '200', + // prop: 'originator', + // label: '鍙戣捣浜�', + // sort: true, + // isTrue: true, + // isSearch: true, + // searchInfoType: 'text' + // }, + // 瀹℃牳浜� + // { + // minWidth: '140', + // prop: 'examiner', + // label: '瀹℃牳浜�', + // sort: true, + // isTrue: true, + // isSearch: true, + // searchInfoType: 'text' + // }, + // 澶勭悊浜� + // { + // minWidth: '120', + // prop: 'handler', + // label: '澶勭悊浜�', + // sort: true, + // isTrue: true, + // isSearch: true, + // searchInfoType: 'text' + // }, + ], toolbar: [ { - text: '鏂板', + text: '瀵煎嚭', type: 'primary', - fun: this.addOrUpdateHandle - } + fun: this.handleExcel + }, ], operator: [ + // { + // text: '鍒犻櫎', + // type: 'text', + // size: 'small', + // fun: this.deleteHandle + // }, { - text: '鍒犻櫎', + text: '鎻愪氦瀹℃牳', type: 'text', size: 'small', - fun: this.deleteHandle + fun: this.Submitreview + }, + { + text: '瀹℃牳缁撴灉', + type: 'text', + size: 'small', + fun: this.AuditResult } ], operatorConfig: { fixed: 'right', label: '鎿嶄綔', - width: 100, + width: 150, minWidth: 100 } - } + }, + materialType: [{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() }, methods: { + async costPlannedAmountChange(value){ + this.resultData= value + }, + + handleExcel() { + console.log(this.resultData); + console.log(this.table.column); + let arr = this.table.column.filter(item => item.isTrue == true).map(item => { + return{ + prop:item.prop, + label:item.label + } + }) + let opt = { + title: '鏂囨。鏍囬', + column: [{ + label:'涓嶅悎鏍煎缃�', + prop:'header', + children:arr + }], + data: this.resultData + } + this.$Export.excel({ + title: opt.title, + columns: opt.column, + data: opt.data + }); + }, + //瀹℃牳缁撴灉 + AuditResult(row){ + this.UserId = row.id + this.type = row.type + this.dialogVisible = true; + + }, + 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){ + console.log(row.id); + pullInsUnapi({id:row.id}).then(res =>{ + console.log(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 +448,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