From 28c3bcfbacc7af60e93210ba654fd681002a6849 Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期四, 14 八月 2025 15:59:09 +0800 Subject: [PATCH] 加流程节点 维修工单添加 领取按钮 领取后 生成维修开始时间 提交后 生成维修结束时间 计算 维修时长 故障时长 --- src/views/eam/repair/modules/EamReportThreeNoSpareModal.vue | 119 ++++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 93 insertions(+), 26 deletions(-) diff --git a/src/views/eam/repair/modules/EamReportThreeNoSpareModal.vue b/src/views/eam/repair/modules/EamReportThreeNoSpareModal.vue index 5fcb92f..4e9d98d 100644 --- a/src/views/eam/repair/modules/EamReportThreeNoSpareModal.vue +++ b/src/views/eam/repair/modules/EamReportThreeNoSpareModal.vue @@ -1,60 +1,127 @@ <template> <j-modal :title="title" - :width="width" + :width="800" :visible="visible" + :confirmLoading="confirmLoading" switchFullscreen @ok="handleOk" - :okButtonProps="{ class:{'jee-hidden': disableSubmit} }" @cancel="handleCancel" cancelText="鍏抽棴"> - <eam-report-three-no-spare-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></eam-report-three-no-spare-form> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="causeAnalysis" label="鍘熷洜鍒嗘瀽"> + <a-textarea :rows="3" placeholder="璇疯緭鍏ュ師鍥犲垎鏋�" v-model="model.causeAnalysis"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="causeAnalysis" label="棰勯槻鎺柦"> + <a-textarea :rows="3" placeholder="璇疯緭鍏ラ闃叉帾鏂�" v-model="model.preventionMeasures"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="isTrainingEducation" label="鍩硅鏁欒偛"> + <j-dict-select-tag dict-code="yn" placeholder="璇烽�夋嫨鍩硅鏁欒偛" v-model="model.isTrainingEducation"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="trainingFormat" label="鍩硅褰㈠紡"> + <a-textarea :rows="3" placeholder="璇疯緭鍏ュ煿璁舰寮�" v-model="model.trainingFormat"/> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="trainingContent" label="鍩硅鍐呭"> + <a-textarea :rows="3" placeholder="璇疯緭鍏ュ煿璁唴瀹�" v-model="model.trainingContent"/> + </a-form-model-item> + + </a-form-model> + </a-spin> </j-modal> </template> <script> + import { httpAction } from '@/api/manage' + import moment from "moment" - import EamReportThreeNoSpareForm from './EamReportThreeNoSpareForm' export default { - name: 'EamReportThreeNoSpareModal', - components: { - EamReportThreeNoSpareForm - }, + name: "EamReportThreeNoSpareModal", data () { return { - title:'', - width:800, + title:"鎿嶄綔", visible: false, - disableSubmit: false + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 5 }, + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 16 }, + }, + + confirmLoading: false, + validatorRules:{ + }, + url: { + add: "/eam/eamReportThreeNoSpare/add", + edit: "/eam/eamReportThreeNoSpare/edit", + }, } }, + created () { + }, methods: { + handleFillIn(record) { + this.visible = true + this.model = Object.assign({}, record) + this.getRepairDetailByApi(record.id) + }, add () { - this.visible=true - this.$nextTick(()=>{ - this.$refs.realForm.add(); - }) + //鍒濆鍖栭粯璁ゅ�� + this.edit({}); }, edit (record) { - this.visible=true - this.$nextTick(()=>{ - this.$refs.realForm.edit(record); - }) + this.model = Object.assign({}, record); + this.visible = true; }, close () { this.$emit('close'); this.visible = false; + this.$refs.form.clearValidate(); }, handleOk () { - this.$refs.realForm.submitForm(); - }, - submitCallback(){ - this.$emit('ok'); - this.visible = false; + const that = this; + // 瑙﹀彂琛ㄥ崟楠岃瘉 + this.$refs.form.validate(valid => { + if (valid) { + that.confirmLoading = true; + let httpurl = ''; + let method = ''; + if(!this.model.id){ + httpurl+=this.url.add; + method = 'post'; + }else{ + httpurl+=this.url.edit; + method = 'put'; + } + httpAction(httpurl,this.model,method).then((res)=>{ + if(res.success){ + that.$message.success(res.message); + that.$emit('ok'); + }else{ + that.$message.warning(res.message); + } + }).finally(() => { + that.confirmLoading = false; + that.close(); + }) + }else{ + return false; + } + }) }, handleCancel () { this.close() - } + }, + + } } -</script> \ No newline at end of file +</script> + +<style lang="less" scoped> + +</style> \ No newline at end of file -- Gitblit v1.9.3