From 19aff1ac87030b21d2b01cdca5d5604c840ba7c0 Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期一, 21 七月 2025 21:36:31 +0800 Subject: [PATCH] 维修工单 --- src/views/eam/repair/modules/EamReportProductHazardsModal.vue | 136 ++++++++++++++++++++++++++++++++++++-------- 1 files changed, 110 insertions(+), 26 deletions(-) diff --git a/src/views/eam/repair/modules/EamReportProductHazardsModal.vue b/src/views/eam/repair/modules/EamReportProductHazardsModal.vue index 780c21d..f7c2948 100644 --- a/src/views/eam/repair/modules/EamReportProductHazardsModal.vue +++ b/src/views/eam/repair/modules/EamReportProductHazardsModal.vue @@ -1,60 +1,144 @@ <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-product-hazards-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></eam-report-product-hazards-form> + + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules"> + + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="reportId" label="鎶ヤ慨ID"> + <a-input placeholder="璇疯緭鍏ユ姤淇甀D" v-model="model.reportId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="equipmentId" label="璁惧ID"> + <a-input placeholder="璇疯緭鍏ヨ澶嘔D" v-model="model.equipmentId" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="confirmer" label="鎿嶄綔宸�"> + <a-input placeholder="璇疯緭鍏ユ搷浣滃伐" v-model="model.confirmer" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="confirmTime" label="鎿嶄綔宸ョ‘璁ゆ椂闂�"> + <a-input placeholder="璇疯緭鍏ユ搷浣滃伐纭鏃堕棿" v-model="model.confirmTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="productLoss" label="浜у搧鎹熷け鎯呭喌;鏄� 鍚�"> + <a-input placeholder="璇疯緭鍏ヤ骇鍝佹崯澶辨儏鍐�;鏄� 鍚�" v-model="model.productLoss" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="qualityAnalysis" label="浜у搧鎹熷け璐ㄩ噺褰卞搷鍒嗘瀽"> + <a-input placeholder="璇疯緭鍏ヤ骇鍝佹崯澶辫川閲忓奖鍝嶅垎鏋�" v-model="model.qualityAnalysis" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="technologist" label="涓荤宸ヨ壓"> + <a-input placeholder="璇疯緭鍏ヤ富绠″伐鑹�" v-model="model.technologist" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="technologistTime" label="涓荤宸ヨ壓纭鏃堕棿"> + <a-input placeholder="璇疯緭鍏ヤ富绠″伐鑹虹‘璁ゆ椂闂�" v-model="model.technologistTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="technologistComment" label="涓荤宸ヨ壓纭鎰忚"> + <a-input placeholder="璇疯緭鍏ヤ富绠″伐鑹虹‘璁ゆ剰瑙�" v-model="model.technologistComment" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="deputyDepartment" label="閮ㄧ骇棰嗗"> + <a-input placeholder="璇疯緭鍏ラ儴绾ч瀵�" v-model="model.deputyDepartment" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="deputyDepartmentTime" label="閮ㄧ骇棰嗗纭鏃堕棿"> + <a-input placeholder="璇疯緭鍏ラ儴绾ч瀵肩‘璁ゆ椂闂�" v-model="model.deputyDepartmentTime" /> + </a-form-model-item> + <a-form-model-item :labelCol="labelCol" :wrapperCol="wrapperCol" prop="deputyDepartmentComment" label="閮ㄧ骇棰嗗纭鎰忚"> + <a-input placeholder="璇疯緭鍏ラ儴绾ч瀵肩‘璁ゆ剰瑙�" v-model="model.deputyDepartmentComment" /> + </a-form-model-item> + + </a-form-model> + </a-spin> </j-modal> </template> <script> + import { httpAction } from '@/api/manage' + import moment from "moment" - import EamReportProductHazardsForm from './EamReportProductHazardsForm' export default { - name: 'EamReportProductHazardsModal', - components: { - EamReportProductHazardsForm - }, + name: "EamReportProductHazardsModal", 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/eamReportProductHazards/add", + edit: "/eam/eamReportProductHazards/edit", + }, } + }, + created () { }, methods: { 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