From 5bc9c6d734d469ad647388b5cd94c5a05cd7dbe7 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期六, 03 八月 2024 16:21:18 +0800 Subject: [PATCH] x撤销审核功能增加 --- src/components/do/b1-ins-order/add.vue | 13 +++- src/components/do/b1-inspect-order-plan/Inspection.vue | 5 + src/components/view/b1-inspect-order-plan.vue | 6 +- src/components/view/b1-inspection-order.vue | 138 +++++++++++++++++++++++++++++++++++++++++++++- src/assets/api/controller.js | 2 5 files changed, 153 insertions(+), 11 deletions(-) diff --git a/src/assets/api/controller.js b/src/assets/api/controller.js index 9602a9e..6d16d55 100644 --- a/src/assets/api/controller.js +++ b/src/assets/api/controller.js @@ -179,6 +179,8 @@ updateInspected: "/insOrder/updateInspected", //灏嗗緟妫�楠岀殑鐨勬挙閿�杩涜鏇存敼 labelPrinting: "/insOrder/labelPrinting", //鏍囩鎵撳嵃 export: "/insOrder/export", //瀵煎嚭 + selectNoProducts: "/insOrder/selectNoProducts", //瀵煎嚭 + checkUpdate: "/insOrder/checkUpdate", //鎾ら攢瀹℃牳閫氳繃 } const sampleOrder = { diff --git a/src/components/do/b1-ins-order/add.vue b/src/components/do/b1-ins-order/add.vue index b94b79c..96d8980 100644 --- a/src/components/do/b1-ins-order/add.vue +++ b/src/components/do/b1-ins-order/add.vue @@ -1379,6 +1379,9 @@ a.price = obj.price a.tell = obj.tell } + if(a.state == 0&&a.bsmRow){ + a = this.HaveJson(a.bsmRow) + } }) }, searchFilterList () { @@ -2088,7 +2091,11 @@ this.productList0 = JSON.parse(JSON.stringify(this.productList)) setTimeout(() => { this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) + if (a.state == 1) { + this.toggleSelection(a) + }else{ + this.$refs.productTable.toggleRowSelection(a, false); + } }) }, 200) }, @@ -2332,9 +2339,9 @@ } this.getProductLoad = true let selectTreeList = this.selectTree.split(" - ") - selectTreeList[selectTreeList.length - 1] = this.addObj.model + this.addObj.model&&(selectTreeList[selectTreeList.length - 1] = this.addObj.model) this.$axios.post(this.$api.standardTree.selectStandardProductList, { - model: this.addObj.model + '-' + row.modelNum, + model: (this.addObj.model?this.addObj.model:row.model) + '-' + row.modelNum, standardMethodListId: val, factory: selectTreeList.join(" - "), }, { diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index 53f9118..256e86d 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -341,7 +341,8 @@ <el-input v-if="getInspectionValueType(n.i) == 1" class="table_input" v-model="n.v.v" :disabled="(getInspectionItemType(n.i) == 1 && !dataAcquisitionEidtAble )|| (n.u != userId && n.u != undefined && n.u != '')" @input="handleInput(n)" - @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`, n)" @mousewheel.native.prevent :key="'abc-'+'000'+index+'000'+i+'000'+j"> + @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`, n)" @mousewheel.native.prevent :key="'abc-'+'000'+index+'000'+i+'000'+j" + @keydown.enter="changeInput('',`${item.templateId}-${n.r}-${n.c}-${n.i}`, n)"> <!-- <el-button slot="append" type="primary" icon="el-icon-edit" size="mini" v-if="getInspectionItemType(n.i) == 1" @click="getSystemValue(n)"></el-button> --> </el-input> @@ -350,7 +351,7 @@ :disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')" @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" /> <el-select v-else-if="getInspectionValueType(n.i) == 5" class="table_input" v-model="n.v.v" - :disabled="state>1" @visible-change="e=>getDic(e,n.i)" + :disabled="state>1||getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')" @visible-change="e=>getDic(e,n.i)" @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)"> <el-option v-for="(e, i) in enumList" :key="i" :label="e.label" :value="e.value"></el-option> </el-select> diff --git a/src/components/view/b1-inspect-order-plan.vue b/src/components/view/b1-inspect-order-plan.vue index 9f84479..09f1c1a 100644 --- a/src/components/view/b1-inspect-order-plan.vue +++ b/src/components/view/b1-inspect-order-plan.vue @@ -248,7 +248,7 @@ type: 'text', method: 'handleInspection', disabFun: (row, index) => { - return row.userId == null || row.insState == 3 || row.insState == 5||JSON.parse(localStorage.getItem("user")).name != row.userName + return row.userId == null || row.insState == 3 || row.insState == 5||(row.userName&&!row.userName.includes(JSON.parse(localStorage.getItem("user")).name)) } // disabFun: (row, index) => { // return row.userId == null || row.insState == 3 || row.insState == 5 @@ -259,7 +259,7 @@ type: 'text', method: 'handleConnect', disabFun: (row, index) => { - return row.userId == null || row.orderUserId == null || row.insState == 5 || row.insState == 3||JSON.parse(localStorage.getItem("user")).name != row.userName + return row.userId == null || row.orderUserId == null || row.insState == 5 || row.insState == 3||(row.userName&&!row.userName.includes(JSON.parse(localStorage.getItem("user")).name)) } }, { @@ -268,7 +268,7 @@ type: 'text', method: 'handleReview', disabFun: (row, index) => { - return row.userId == null || row.insState != 3 ||JSON.parse(localStorage.getItem("user")).name != row.userName + return row.userId == null || row.insState != 3 ||(row.userName&&!row.userName.includes(JSON.parse(localStorage.getItem("user")).name)) } }, { id: '', diff --git a/src/components/view/b1-inspection-order.vue b/src/components/view/b1-inspection-order.vue index 93725b1..158a138 100644 --- a/src/components/view/b1-inspection-order.vue +++ b/src/components/view/b1-inspection-order.vue @@ -326,6 +326,18 @@ :componentData="componentDataDataLook"/> </div> </el-dialog> + <el-dialog :title="deleteTilte" :visible.sync="deleteDialogVisible" width="80%"> + <div style="height: 70vh;overflow-y: auto;" v-if="deleteDialogVisible"> + <ValueTable ref="ValueTableDataDelete" :url="$api.insOrder.selectNoProducts+'?orderId='+orderId+'&ids='+this.revocationInsProductIds" + :componentData="componentDataDelete" :isColumnWidth="true"/> + </div> + <span slot="footer" class="dialog-footer"> + <el-row> + <el-button @click="handleNo">{{deleteTilte=='鎾ら攢'?'鍙� 娑�':'涓嶉�氳繃'}}</el-button> + <el-button type="primary" @click="submitDelete" :loading="printLoading">{{deleteTilte=='鎾ら攢'?'纭� 瀹�':'閫� 杩�'}}</el-button> + </el-row> + </span> + </el-dialog> </div> <div style="width: 100%;height: 100%;" v-if="active >0"> <Add :active="active" :currentId="currentId" v-if="active<4" /> @@ -448,6 +460,8 @@ }, data() { return { + deleteTilte:'鎾ら攢', + deleteList:[], loadPint:false, checkAll: false, isIndeterminate: true, @@ -526,12 +540,21 @@ disabFun: (row, index) => { return row.state != 1 && row.state != 0 } + }, + { + id: 'quashCheck', + font: '鎾ら攢瀹℃牳', + type: 'text', + method: 'handlEquashCheck', + disabFun: (row, index) => { + return (row.state != 1 && row.state != 0)||(this.tabIndex!=1)||row.isRevocation!=1 + } }, { font: '鍒嗛厤', type: 'text', method: 'handleIssued', disabFun: (row, index) => { - return row.state != 1 || row.assign + return row.state != 1 || !!row.assign } }], linkEvent: { @@ -594,6 +617,8 @@ requiredUp: [], needSort: ['createTime', 'sendTime', 'type', 'appointed'] }, + orderId:'', + revocationInsProductIds:'', componentDataDataLook: { entity: { id: 0, @@ -642,6 +667,42 @@ requiredAdd: [], requiredUp: [] }, + componentDataDelete: { + entity: { + // orderId: '', + // orderBy: { + // field: 'sampleCode', + // order: 'asc' + // } + }, + isPage:false, + isIndex: false, + showSelect: true, + select: true, + selectMethod: 'selectDelete', + do: [], + tagField: { + insState: { + select: [] + }, + insResult: { + select: [{ + value: 1, + label: '鍚堟牸', + type: 'success' + },{ + value: 0, + label: '涓嶅悎鏍�', + type: 'danger' + }] + } + }, + selectField: {}, + spanConfig:{}, + requiredAdd: [], + requiredUp: [] + }, + deleteDialogVisible:false, entityCopy: {}, upIndex: 0, addPower: true, @@ -812,6 +873,7 @@ let add = false let revoke = false let check = false + let checkUpdate = false for (var i = 0; i < power.length; i++) { if (power[i].menuMethod == 'upInsOrder') { up = true @@ -825,8 +887,14 @@ if (power[i].menuMethod == 'upInsOrderOfState') { check = true } + if (power[i].menuMethod == 'checkUpdate') { + checkUpdate = true + } } if (!up) { + this.componentData.do.splice(5, 1) + } + if (!checkUpdate) { this.componentData.do.splice(4, 1) } if (!revoke) { @@ -887,9 +955,72 @@ }, // 鎾ら攢 handlEquash(row) { - this.quashDialogVisible = true; - this.insOrderRow=row + if(this.tabIndex!=1){ + this.quashDialogVisible = true; + this.insOrderRow=row + }else{ + // this.componentDataDelete.entity.orderId = row.id + this.orderId = row.id + this.revocationInsProductIds = '' + this.componentDataDelete.showSelect= true + this.componentDataDelete.select= true + this.deleteTilte = '鎾ら攢' + this.deleteDialogVisible = true; + } }, + selectDelete(arr){ + this.deleteList = arr; + }, + submitDelete(){ + if(this.deleteTilte=='鎾ら攢'){ + if(this.deleteList.length==0){ + this.$message.error('璇烽�夋嫨瑕佹挙閿�鐨勯」') + return + } + let ids = this.deleteList.map(m=>m.id).join(',') + this.printLoading = true; + this.axios.put(this.$api.insOrder.updateInspected+"?ids="+ids+'&orderId='+this.orderId).then(res=>{ + if (res.code===200){ + this.printLoading=false + this.deleteDialogVisible=false + this.refreshTable('page') + this.$message.success("鏇存柊鎴愬姛") + } + }) + }else{ + this.axios.post(this.$api.insOrder.checkUpdate+'?orderId='+this.orderId+'&state='+1).then(res=>{ + if (res.code===200){ + this.printLoading=false + this.deleteDialogVisible=false + this.refreshTable('page') + this.$message.success("鏇存柊鎴愬姛") + } + }) + } + }, + handlEquashCheck(row){ + // this.componentDataDelete.entity.orderId = row.id + this.orderId = row.id + this.revocationInsProductIds = row.revocationInsProductIds + this.componentDataDelete.showSelect= false + this.componentDataDelete.select= false + this.deleteTilte = '鎾ら攢瀹℃牳' + this.deleteDialogVisible = true; + }, + handleNo(){ + if(this.deleteTilte=='鎾ら攢'){ + this.deleteDialogVisible=false + }else{ + this.axios.post(this.$api.insOrder.checkUpdate+'?orderId='+this.orderId+'&state='+0).then(res=>{ + if (res.code===200){ + this.printLoading=false + this.deleteDialogVisible=false + this.refreshTable('page') + this.$message.success("鏇存柊鎴愬姛") + } + }) + } + }, // 涓嬪彂 handleIssued(row) { this.issuedDialogVisible = true; @@ -1017,6 +1148,7 @@ } }) this.componentDataDataLook.tagField.insState.select = data + this.componentDataDelete.tagField.insState.select = data }) }, selectEnumByCategoryForOrderType() { -- Gitblit v1.9.3