From d4be0ab305a9917c7cd59bf9df0fb3850a38223f Mon Sep 17 00:00:00 2001 From: zhangherong <571457620@qq.com> Date: 星期一, 07 四月 2025 17:45:29 +0800 Subject: [PATCH] art: 设备管理-周保-保养人选择 --- src/views/eam/maintenance/modules/EamWeekMaintenanceOrderModal.vue | 101 ++++++++++++++++++++++++++++++++++---------------- 1 files changed, 69 insertions(+), 32 deletions(-) diff --git a/src/views/eam/maintenance/modules/EamWeekMaintenanceOrderModal.vue b/src/views/eam/maintenance/modules/EamWeekMaintenanceOrderModal.vue index 8dee667..9a0ab82 100644 --- a/src/views/eam/maintenance/modules/EamWeekMaintenanceOrderModal.vue +++ b/src/views/eam/maintenance/modules/EamWeekMaintenanceOrderModal.vue @@ -21,7 +21,7 @@ <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧缂栫爜"> <maintenance-equipment-select placeholder="璇疯緭鍏ヨ澶囩紪鍙锋垨鍚嶇О鎼滅储" v-model="model.equipmentId" :maintenanceCategory="maintenanceCategory" - @autocompleteForm="autocompleteForm"></maintenance-equipment-select> + @autocompleteForm="autocompleteForm" :disabled="editable"></maintenance-equipment-select> </a-form-model-item> </a-col> <a-col :span="8"> @@ -33,14 +33,14 @@ <a-row :gutter="24"> <a-col :span="8"> <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="maintenanceDate" label="淇濆吇鏃ユ湡"> - <a-date-picker placeholder="璇烽�夋嫨淇濆吇鏃ユ湡" v-model="model.maintenanceDate" format="YYYY-MM-DD" + <a-date-picker placeholder="璇烽�夋嫨璁″垝淇濆吇鏃ユ湡" v-model="model.maintenanceDate" format="YYYY-MM-DD" style="width: 100%" /> </a-form-model-item> </a-col> <a-col :span="8"> <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="operator" label="淇濆吇浜�"> - <j-dict-select-tag v-model="model.operator" placeholder="璇烽�夋嫨淇濆吇浜�" - dictCode="sys_user,realname,username,username!='admin' order by create_time" /> + <j-search-select-tag v-model="model.operator" placeholder="璇烽�夋嫨淇濆吇浜�" + :dictOptions="maintenanceOperatorOptions" /> </a-form-model-item> </a-col> <a-col :span="8"> @@ -94,9 +94,10 @@ editable: false, model: {}, maintenanceCategory: 'WEEK_MAINTENANCE', + maintenanceOperatorOptions: [], labelCol: { xs: { span: 24 }, - sm: { span: 5 } + sm: { span: 6 } }, wrapperCol: { xs: { span: 24 }, @@ -113,7 +114,10 @@ confirmLoading: false, validatorRules: { equipmentId: [ - {} + { required: true, message: '璇烽�夋嫨璁惧!' } + ], + maintenanceDate: [ + { required: true, message: '璇烽�夋嫨璁″垝淇濆吇鏃ユ湡!' } ] }, url: { @@ -121,6 +125,7 @@ edit: '/eam/weekMaintenanceOrder/edit', standardDetail: '/eam/eamMaintenanceStandardDetail/queryList', detail: '/eam/weekMaintenanceOrderDetail/queryList', + userSelect: '/eam/user_select/list', }, detail: { loading: false, @@ -184,21 +189,23 @@ } }, created() { + this.loadMaintenanceOperatorList(); }, methods: { add() { //鍒濆鍖栭粯璁ゅ�� - this.model = {}; - this.visible = true; - this.editable = false; - this.detail.dataSource = []; + this.model = {} + this.visible = true + this.editable = false + this.detail.dataSource = [] }, edit(record) { + // debugger this.model = Object.assign({}, record) this.visible = true - this.editable = true; - this.detail.dataSource = []; - this.loadDetail(record.id); + this.editable = true + this.detail.dataSource = [] + this.loadDetail(record.id) }, close() { this.$emit('close') @@ -207,19 +214,18 @@ }, async handleOk() { const that = this - let errMap = await that.$refs.editableDetailTable.validateTable(); - if(errMap){ - this.$message.warning("鏁版嵁鏍¢獙澶辫触锛�"); - return; + let errMap = await that.$refs.editableDetailTable.validateTable() + if (errMap) { + this.$message.warning('鏁版嵁鏍¢獙澶辫触锛�') + return } // 瑙﹀彂琛ㄥ崟楠岃瘉 this.$refs.form.validate(valid => { if (valid) { - debugger - let tableData = that.$refs.editableDetailTable.getTableData(); - let removeData = that.$refs.editableDetailTable.getDeleteData(); - that.model.tableDetailList = [...tableData]; - that.model.removeDetailList = [...removeData]; + let tableData = that.$refs.editableDetailTable.getTableData() + let removeData = that.$refs.editableDetailTable.getDeleteData() + that.model.tableDetailList = [...tableData] + that.model.removeDetailList = [...removeData] that.confirmLoading = true let httpurl = '' @@ -251,10 +257,25 @@ this.close() }, autocompleteForm(selectObj) { - this.model.standardName = selectObj.standardName - this.model.maintenancePeriod = selectObj.maintenancePeriod - this.model.standardId = selectObj.id - this.loadStandardDetail(selectObj.id); + //鏍囧噯鍚嶇О锛屼繚鍏诲懆鏈熶笉鍒锋柊瑙e喅鍔炴硶 + //鍔炴硶涓� validatorRules equipmentId 杩樻槸鏈夐棶棰� + // const newObj = { + // standardName: selectObj.standardName, + // maintenancePeriod: selectObj.maintenancePeriod, + // standardId : selectObj.id, + // equipmentId: selectObj.equipmentId, + // }; + // this.model = Object.assign({}, newObj, this.model) + //鍔炴硶浜� + this.$set(this.model, 'standardName', selectObj.standardName) + this.$set(this.model, 'maintenancePeriod', selectObj.maintenancePeriod) + this.$set(this.model, 'standardId', selectObj.id) + this.$set(this.model, 'equipmentId', selectObj.equipmentId) + // console.log('model', this.model) + if (!this.model.id) { + this.loadStandardDetail(selectObj.id) + } + this.loadMaintenanceOperatorList(this.model.equipmentId); }, //鍔犺浇璇︽儏鏁版嵁 loadStandardDetail(standardId) { @@ -273,13 +294,29 @@ }, //鏍囧噯閫夋嫨鍙樺寲 loadDetail(orderId) { - if (orderId) { - getAction(this.url.detail, { orderId: orderId }).then(res => { - if (res.success) { - this.detail.dataSource = [...res.result] - } - }) + if (orderId) { + getAction(this.url.detail, { orderId: orderId }).then(res => { + if (res.success) { + this.detail.dataSource = [...res.result] + } + }) + } + }, + loadMaintenanceOperatorList(equipmentId) { + this.maintenanceOperatorOptions = [] + let params = { positionCode: 'PCR0001' } + if (equipmentId) { + params.equipmentId = equipmentId + } + getAction(this.url.userSelect, params).then(res => { + if (res.success) { + this.maintenanceOperatorOptions = res.result.map(item => ({ + key: item.id, + value: item.username, + text: item.realname + })) } + }) } } -- Gitblit v1.9.3