From 2f5227a8f37b5c9be090a20253555411cfa9548c Mon Sep 17 00:00:00 2001 From: lyh <925863403@qq.com> Date: 星期一, 18 八月 2025 10:27:47 +0800 Subject: [PATCH] 维修时长 故障时长 --- src/views/eam/repair/modules/EamReportProductHazardsModal.vue | 150 +++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 117 insertions(+), 33 deletions(-) diff --git a/src/views/eam/repair/modules/EamReportProductHazardsModal.vue b/src/views/eam/repair/modules/EamReportProductHazardsModal.vue index 780c21d..30a967d 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" - :visible="visible" - 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> + <j-modal :title="title" :width="1200" :visible="visible" :confirmLoading="confirmLoading" switchFullscreen + @ok="handleOk" @cancel="handleCancel" cancelText="鍏抽棴"> + <a-spin :spinning="confirmLoading"> + <a-form-model ref="form" :model="model" :rules="validatorRules" :labelCol="labelCol" :wrapperCol="wrapperCol"> + <a-row> + <a-col :span="customSpan"> + <a-form-model-item label="鎵规鍙�" prop="batchNumber"> + <a-input placeholder="璇疯緭鍏ユ壒娆″彿" v-model="model.batchNumber"/> + </a-form-model-item> + </a-col> + <a-col :span="customSpan"> + <a-form-model-item label="鍔犲伐闆朵欢鍙�" prop="processingPart"> + <a-input placeholder="璇疯緭鍏ュ姞宸ラ浂浠跺彿" + v-model="model.processingPart"/> + </a-form-model-item> + </a-col> + <a-col :span="customSpan"> + <a-form-model-item label="浠舵暟" prop="quantity"> + <a-input-number placeholder="璇疯緭鍏ヤ欢鏁�" v-model="model.quantity" + :min="0" style="width: 100%"/> + </a-form-model-item> + </a-col> + <a-col :span="customSpan"> + <a-form-model-item prop="productLoss" label="浜у搧鎹熷け鎯呭喌"> + <j-dict-select-tag dict-code="yn" type="radio" + placeholder="璇疯緭鍏ヤ骇鍝佹崯澶辨儏鍐�" + v-model="model.productLoss"/> + </a-form-model-item> + </a-col> + <a-col :span="24"> + <a-form-model-item :labelCol="labelColLong" + :wrapperCol="wrapperColLong" prop="qualityAnalysis" label="浜у搧鎹熷け璐ㄩ噺褰卞搷鍒嗘瀽"> + <a-textarea placeholder="璇疯緭鍏ヤ骇鍝佹崯澶辫川閲忓奖鍝嶅垎鏋�" v-model="model.qualityAnalysis"/> + </a-form-model-item> + </a-col> + </a-row> + </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 + customSpan: 6, + model: {}, + labelCol: { + xs: { span: 24 }, + sm: { span: 9 } + }, + wrapperCol: { + xs: { span: 24 }, + sm: { span: 12 } + }, + labelColLong: { + xs: { span: 24 }, + sm: { span: 6 } + }, + wrapperColLong: { + xs: { span: 24 }, + sm: { span: 17 } + }, + + confirmLoading: false, + validatorRules:{ + batchNumber: [{ required: true, message: '璇疯緭鍏ユ壒娆″彿', trigger: 'change' }], + processingPart: [{ required: true, message: '璇疯緭鍏ュ姞宸ラ浂浠跺彿', trigger: 'change' }], + quantity: [{ required: true, message: '璇疯緭鍏ヤ欢鏁�', trigger: 'change' }], + productLoss: [{ required: true, message: '璇疯緭鍏ヤ骇鍝佹崯澶辨儏鍐�', trigger: 'change' }], + qualityAnalysis: [{ required: true, message: '璇疯緭鍏ヤ骇鍝佹崯澶辫川閲忓奖鍝嶅垎鏋�', trigger: 'change' }], + }, + 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