From 90044289b992e5df6506c70b1e9bb299df321869 Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期三, 21 五月 2025 16:22:20 +0800 Subject: [PATCH] 1、全局加载名称调整为MDC智慧车间 2、消息确认页面调整设备异常反馈功能 --- src/views/mdc/base/modules/MdcMessageApproval/MdcMessageApprovalModal.vue | 101 ++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 72 insertions(+), 29 deletions(-) diff --git a/src/views/mdc/base/modules/MdcMessageApproval/MdcMessageApprovalModal.vue b/src/views/mdc/base/modules/MdcMessageApproval/MdcMessageApprovalModal.vue index 30d9cbf..b6e0511 100644 --- a/src/views/mdc/base/modules/MdcMessageApproval/MdcMessageApprovalModal.vue +++ b/src/views/mdc/base/modules/MdcMessageApproval/MdcMessageApprovalModal.vue @@ -4,28 +4,32 @@ @cancel="closeModal" :visible="visible" :footer="null"> - <a-spin :spinning="confirmLoading"> - <a-form-model ref="form" :form="form" :model="formParams" :rules="validatorRules"> - <a-form-model-item label="璁惧缂栧彿" :labelCol="{span: 4}" :wrapperCol="{span: 8}"> - <a-input v-model="formParams.equipmentId" disabled></a-input> + <a-spin :spinning="spinning"> + <a-form-model ref="form" :form="form" :model="formParams" :rules="validatorRules" :labelCol="{span: 4}" + :wrapperCol="{span: 20}"> + <a-form-model-item label="璁惧缂栧彿" :labelCol="{span: 4}" :wrapperCol="{span: 10}" prop="equipmentId"> + <a-input-search :readOnly="true" :disabled="disableSubmit" v-model="formParams.equipmentId" + @search="deviceSearch" enter-button + placeholder="璇烽�夋嫨璁惧"/> </a-form-model-item> - <a-form-model-item label="鏍囬" :labelCol="{span: 4}" :wrapperCol="{span: 20}"> - <a-input v-model="formParams.titile" disabled></a-input> + <a-form-model-item label="寮傚父绫诲瀷" :labelCol="{span: 4}" :wrapperCol="{span: 10}" + :prop="!buttonId?'msgType':''"> + <j-dict-select-tag dictCode="mdcMsgType" v-model='formParams.msgType' placeholder="璇烽�夋嫨寮傚父绫诲瀷" + :disabled="disableSubmit&&buttonId!==2"/> </a-form-model-item> - <a-form-model-item label="鍐呭" :labelCol="{span: 4}" :wrapperCol="{span: 20}"> - <a-input v-model="formParams.msgContent" disabled></a-input> + <a-form-model-item label="鏍囬"> + <a-input placeholder="璇疯緭鍏ユ爣棰�" v-model="formParams.titile" :disabled="disableSubmit"/> + </a-form-model-item> + <a-form-model-item label="鍐呭"> + <a-input placeholder="璇疯緭鍏ュ唴瀹�" v-model="formParams.msgContent" :disabled="disableSubmit"/> </a-form-model-item> - <a-form-model-item label="鍘熷洜" :labelCol="{span: 4}" :wrapperCol="{span: 20}" prop="reportContent" - v-if="buttonId===1"> - <a-textarea v-model="formParams.reportContent" :disabled="buttonId!==1"></a-textarea> - </a-form-model-item> - <a-form-model-item label="鍘熷洜" :labelCol="{span: 4}" :wrapperCol="{span: 20}" v-else> - <a-textarea v-model="formParams.reportContent" :disabled="buttonId!==1"></a-textarea> + <a-form-model-item label="鍘熷洜" prop="reportContent" v-if="buttonId"> + <a-textarea v-model="formParams.reportContent" :disabled="buttonId!==2"/> </a-form-model-item> <a-form-model-item label="纭" :labelCol="{span: 4}" :wrapperCol="{span: 12}" prop="isConfirm" - v-if="buttonId==2"> + v-if="buttonId==3"> <a-select v-model='formParams.isConfirm' placeholder="璇烽�夋嫨鏄惁纭"> <a-select-option value="2">纭</a-select-option> <a-select-option value="3">鎷掔粷</a-select-option> @@ -34,20 +38,26 @@ </a-form-model> </a-spin> - <div class="drawer-bottom-button" v-show="buttonId!==0"> - <a-popconfirm title="纭畾鏀惧純鎿嶄綔锛�" @confirm="closeModal" okText="纭畾" cancelText="鍙栨秷"> - <a-button style="margin-right: .8rem">鍙栨秷</a-button> - </a-popconfirm> - <a-button @click="handleSubmit" type="primary" :loading="confirmLoading">鎻愪氦</a-button> + <div class="drawer-bottom-button" v-show="buttonId!==1"> + <a-space> + <a-popconfirm title="纭畾鏀惧純鎿嶄綔锛�" @confirm="closeModal" okText="纭畾" cancelText="鍙栨秷"> + <a-button>鍙栨秷</a-button> + </a-popconfirm> + <a-button @click="handleSubmit" type="primary" :loading="confirmLoading">鎻愪氦</a-button> + </a-space> </div> + + <SelectDeviceDrawerSingleSelection ref="selectDeviceDrawer" @selectFinished="selectOK" :title="'閫夋嫨璁惧'"/> </a-modal> </template> <script> import { postAction } from '@/api/manage' + import SelectDeviceDrawerSingleSelection from './SelectDeviceDrawer-SingleSelection' export default { name: 'MdcMessageApprovalModal', + components: { SelectDeviceDrawerSingleSelection }, props: { visible: { type: Boolean @@ -57,11 +67,16 @@ }, buttonId: { type: Number + }, + disableSubmit: { + type: Boolean } }, data() { return { form: this.$form.createForm(this), + treeData: [], + treeDefaultExpandedKeys: [], formParams: { equipmentId: '', titile: '', @@ -71,7 +86,14 @@ isConfirm: '' }, confirmLoading: false, + spinning: false, validatorRules: { + equipmentId: [ + { required: true, message: '璇烽�夋嫨璁惧', trigger: 'change' } + ], + msgType: [ + { required: true, message: '璇烽�夋嫨寮傚父绫诲瀷' } + ], reportContent: [ { required: true, message: '璇疯緭鍏ヤ笂鎶ュ師鍥�' } ], @@ -80,29 +102,45 @@ ] }, url: { + add: '/mdc/mdcMessageApproval/add', reportUrl: '/mdc/mdcMessageApproval/reportReason', confirmUrl: '/mdc/mdcMessageApproval/handleConfirm' } } }, methods: { - closeModal() { - this.$refs.form.clearValidate() - this.$emit('closeModal') + deviceSearch() { + this.$refs.selectDeviceDrawer.visible = true + this.$refs.selectDeviceDrawer.checkedKeys = this.formParams.equipmentId ? [this.formParams.equipmentId] : [] + this.$refs.selectDeviceDrawer.selectedKeys = this.formParams.equipmentId ? [this.formParams.equipmentId] : [] }, + + /** + * 閫夋嫨宸叉湁璁惧鍚庣偣鍑荤‘瀹氭椂瑙﹀彂 + * @param data 宸查�夋嫨鐨勮澶� + */ + selectOK(data) { + this.$set(this.formParams, 'equipmentId', data[0]) + }, + handleSubmit() { const that = this // 瑙﹀彂琛ㄥ崟楠岃瘉 this.$refs.form.validate(valid => { if (valid) { - that.confirmLoading = true + that.confirmLoading = that.spinning = true this.formParams.msgStatus = this.formParams.isConfirm let obj - if (this.buttonId === 1) { - obj = postAction(this.url.reportUrl, this.formParams) + if (!this.buttonId) { + obj = postAction(this.url.add, this.formParams) } else { - obj = postAction(this.url.confirmUrl, this.formParams) + if (this.buttonId === 2) { + obj = postAction(this.url.reportUrl, this.formParams) + } else { + obj = postAction(this.url.confirmUrl, this.formParams) + } } + obj.then((res) => { if (res.success) { that.$notification.success({ @@ -110,6 +148,7 @@ description: res.message }) that.$emit('formHasSubmitted') + that.closeModal() } else { that.$notification.warning({ message: '娑堟伅', @@ -117,13 +156,17 @@ }) } }).finally(() => { - that.confirmLoading = false - that.closeModal() + that.confirmLoading = that.spinning = false }) } else { return false } }) + }, + + closeModal() { + this.$refs.form.clearValidate() + this.$emit('closeModal') } } } -- Gitblit v1.9.3