From 34feb4908ec7b7e5b51adf6355603978c67bd3a4 Mon Sep 17 00:00:00 2001 From: cuijian <cuijian@xalxzn.com> Date: 星期四, 05 六月 2025 09:53:14 +0800 Subject: [PATCH] 申请单入库 --- src/views/eam/base/modules/EamMaintenanceStandardModal.vue | 103 +++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 78 insertions(+), 25 deletions(-) diff --git a/src/views/eam/base/modules/EamMaintenanceStandardModal.vue b/src/views/eam/base/modules/EamMaintenanceStandardModal.vue index 45e4c74..a25d747 100644 --- a/src/views/eam/base/modules/EamMaintenanceStandardModal.vue +++ b/src/views/eam/base/modules/EamMaintenanceStandardModal.vue @@ -24,7 +24,7 @@ </a-col> <a-col :span="8"> <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="maintenanceCategory" label="淇濆吇鍒嗙被"> - <j-dict-select-tag dict-code="maintenance_category" placeholder="璇烽�夋嫨淇濆吇鍒嗙被" v-model="model.maintenanceCategory" /> + <j-dict-select-tag dict-code="maintenance_category" placeholder="璇烽�夋嫨淇濆吇鍒嗙被" v-model="model.maintenanceCategory" :disabled="editable" /> </a-form-model-item> </a-col> </a-row> @@ -36,7 +36,7 @@ </a-col> <a-col :span="8"> <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="initialDate" label="鍒濆鏃ユ湡"> - <a-date-picker placeholder="璇烽�夋嫨鍒濆鏃ユ湡" v-model="model.initialDate" format="yyyy-MM-dd" style="width: 100%"/> + <a-date-picker placeholder="璇烽�夋嫨鍒濆鏃ユ湡" v-model="model.initialDate" format="YYYY-MM-DD" style="width: 100%" :disabled="editable"/> </a-form-model-item> </a-col> <a-col :span="8"> @@ -48,7 +48,7 @@ <a-row :gutter="24"> <a-col :span="8"> <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧缂栧彿"> - <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="model.equipmentId"></lx-search-equipment-select> + <lx-search-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="model.equipmentId" :disabled="editable"></lx-search-equipment-select> </a-form-model-item> </a-col> <a-col :span="8"> @@ -70,7 +70,7 @@ :wrapperCol="wrapperCol" prop="fileList"> <lx-upload :returnUrl="false" - :isMultiple="false" + :multiple="false" v-model="model.fileList" biz="EamMaintenanceStandard"> </lx-upload> @@ -99,7 +99,7 @@ </template> <script> - import { httpAction } from '@/api/manage' +import { getAction, httpAction } from '@/api/manage' import { JVxeTableModelMixin } from '@/mixins/JVxeTableModelMixin.js' import { JVXETypes } from '@/components/jeecg/JVxeTable' import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect' @@ -115,6 +115,8 @@ title:"鎿嶄綔", visible: false, model: {}, + editable: false, + upgradeFlag: false, labelCol: { xs: { span: 24 }, sm: { span: 5 }, @@ -123,7 +125,6 @@ xs: { span: 24 }, sm: { span: 16 }, }, - confirmLoading: false, validatorRules: { standardName: [ @@ -145,6 +146,8 @@ url: { add: "/eam/maintenanceStandard/add", edit: "/eam/maintenanceStandard/edit", + detail: "/eam/eamMaintenanceStandardDetail/queryList", + upgrade: '/eam/maintenanceStandard/upgrade', }, detail: { loading: false, @@ -164,38 +167,47 @@ title: '搴忓彿', key: 'itemCode', type: JVXETypes.inputNumber, - width: '10%', align:"center", + width: 100, validateRules: [ {required : true, unique: true, message: '搴忓彿涓嶈兘閲嶅'} ] }, { + title: '閮ㄤ綅', + key: 'itemPart', + type: JVXETypes.textarea, + align:"center", + }, + { title: '淇濆吇椤�', key: 'itemName', type: JVXETypes.textarea, - width: '20%', align:"center", validateRules: [ - {required : true} + {required : true, message: '淇濆吇椤逛笉鑳戒负绌猴紒'} ] - }, - { - title: '瀛愪繚鍏婚」', - key: 'subItemName', - type: JVXETypes.textarea, - width: '25%', - align:"center", }, { title: '淇濆吇瑕佹眰', + key: 'itemDemandAlias', + type: JVXETypes.textarea, + align:"center", + }, + { + title: '妫�鏌ユ爣鍑嗘垨瑕佹眰', key: 'itemDemand', type: JVXETypes.textarea, - width: '30%', align:"center", validateRules: [ - {required : true} + {required : true, message: "淇濆吇瑕佹眰涓嶈兘涓虹┖锛�"} ] + }, + { + title: '妫�鏌ユ柟娉�', + key: 'checkMethod', + type: JVXETypes.textarea, + align:"center", }, ], toolbarConfig: { @@ -211,12 +223,39 @@ }, methods: { add () { - //鍒濆鍖栭粯璁ゅ�� - this.edit({}); + this.model = {}; + this.visible = true; + this.editable = false; + this.upgradeFlag = false; + this.detail.dataSource = []; }, edit (record) { this.model = Object.assign({}, record); this.visible = true; + this.editable = true; + this.upgradeFlag = false; + this.detail.dataSource = []; + if(record && record.referenceFile) { + let obj = JSON.parse(record.referenceFile); + this.model.fileList = [obj]; + }else { + this.model.fieldList = []; + } + this.loadDetail(record.id); + }, + upgrade(record) { + this.model = Object.assign({}, record); + this.visible = true; + this.editable = true; + this.upgradeFlag = true; + this.detail.dataSource = []; + if(record && record.referenceFile) { + let obj = JSON.parse(record.referenceFile); + this.model.fileList = [obj]; + }else { + this.model.fieldList = []; + } + this.loadDetail(record.id); }, close () { this.$emit('close'); @@ -233,10 +272,10 @@ // 瑙﹀彂琛ㄥ崟楠岃瘉 this.$refs.form.validate(valid => { if (valid) { - debugger; let tableData = that.$refs.editableDetailTable.getTableData(); - let newData = that.$refs.editableDetailTable.getNewData(); let removeData = that.$refs.editableDetailTable.getDeleteData(); + that.model.tableDetailList = [...tableData]; + that.model.removeDetailList = [...removeData]; that.confirmLoading = true; let httpurl = ''; @@ -245,8 +284,12 @@ httpurl+=this.url.add; method = 'post'; }else{ - httpurl+=this.url.edit; - method = 'put'; + if(this.upgradeFlag) { + httpurl+=this.url.upgrade; + }else { + httpurl+=this.url.edit; + } + method = 'put'; } httpAction(httpurl,this.model,method).then((res)=>{ if(res.success){ @@ -267,7 +310,17 @@ handleCancel () { this.close() }, - + //鍔犺浇璇︽儏鏁版嵁 + loadDetail(standardId) { + this.detail.dataSource = []; + if (standardId) { + getAction(this.url.detail, { standardId: standardId }).then(res => { + if (res.success) { + this.detail.dataSource = [...res.result]; + } + }) + } + } } } -- Gitblit v1.9.3