From a60dc30be50598fe2d1acb42f8171ec69e37b436 Mon Sep 17 00:00:00 2001 From: 13404089107 <puwei@sinata.cn> Date: 星期三, 28 五月 2025 17:29:05 +0800 Subject: [PATCH] Merge branch 'main' of http://120.76.84.145:10101/gitblit/r/H5/leshan-laboratory --- laboratory/src/views/dataManagement/confirmation-sheet/components/add-test-item.vue | 88 +++++++++++++++++++++++++++++++------------ 1 files changed, 63 insertions(+), 25 deletions(-) diff --git a/laboratory/src/views/dataManagement/confirmation-sheet/components/add-test-item.vue b/laboratory/src/views/dataManagement/confirmation-sheet/components/add-test-item.vue index 0fe6992..a5bd4a2 100644 --- a/laboratory/src/views/dataManagement/confirmation-sheet/components/add-test-item.vue +++ b/laboratory/src/views/dataManagement/confirmation-sheet/components/add-test-item.vue @@ -3,33 +3,33 @@ <el-dialog :visible.sync="dialogVisible" @close="$emit('close')" title="新增检测项" width="50%"> <el-form ref="form" :model="form" :rules="rules" label-position="top" class="test-item-form"> <div class="form-row"> - <el-form-item label="检测项编号" prop="testCode" class="form-item"> - <el-input v-model="form.testCode" placeholder="请输入"></el-input> + <el-form-item label="检测项编号" prop="termCode" class="form-item"> + <el-input v-model="form.termCode" placeholder="请输入"></el-input> </el-form-item> - <el-form-item label="检测项名称" prop="testName" class="form-item"> - <el-input v-model="form.testName" placeholder="请输入"></el-input> + <el-form-item label="检测项名称" prop="termName" class="form-item"> + <el-input v-model="form.termName" placeholder="请输入"></el-input> </el-form-item> </div> <div class="form-row"> - <el-form-item label="定性/定量" prop="testType" class="form-item"> - <el-radio-group v-model="form.testType"> + <el-form-item label="定性/定量" prop="termType" class="form-item"> + <el-radio-group v-model="form.termType"> <el-radio :label="1">定性</el-radio> <el-radio :label="2">定量</el-radio> </el-radio-group> </el-form-item> </div> <div class="form-row"> - <el-form-item label="检测方法编号" prop="methodCode" class="form-item"> - <el-input v-model="form.methodCode" placeholder="请输入"></el-input> + <el-form-item label="检测方法编号" prop="termMethodCode" class="form-item"> + <el-input v-model="form.termMethodCode" placeholder="请输入"></el-input> </el-form-item> - <el-form-item label="检测方法" prop="methodName" class="form-item"> - <el-input v-model="form.methodName" placeholder="请输入"></el-input> + <el-form-item label="检测方法" prop="termMethod" class="form-item"> + <el-input v-model="form.termMethod" placeholder="请输入"></el-input> </el-form-item> </div> - <el-form-item label="收样要求" prop="requirements" class="form-item"> + <el-form-item label="收样要求" prop="sampleRequire" class="form-item"> <el-input type="textarea" - v-model="form.requirements" + v-model="form.sampleRequire" :rows="4" placeholder="请输入收样要求..." ></el-input> @@ -49,37 +49,59 @@ dialogVisible: { type: Boolean, default: false + }, + editData: { + type: Object, + default: () => null } }, data() { return { form: { - testCode: '', - testName: '', - testType: 1, - methodCode: '', - methodName: '', - requirements: '' + termCode: '', + termName: '', + termType: 1, + termMethodCode: '', + termMethod: '', + sampleRequire: '', + status: 1, + testId: '' }, rules: { - testCode: [ + termCode: [ { required: true, message: '请输入检测项编号', trigger: 'blur' } ], - testName: [ + termName: [ { required: true, message: '请输入检测项名称', trigger: 'blur' } ], - testType: [ + termType: [ { required: true, message: '请选择定性/定量', trigger: 'change' } ], - methodCode: [ + termMethodCode: [ { required: true, message: '请输入检测方法编号', trigger: 'blur' } ], - methodName: [ + termMethod: [ { required: true, message: '请输入检测方法', trigger: 'blur' } ], - requirements: [ + sampleRequire: [ { required: true, message: '请输入收样要求', trigger: 'blur' } ] + } + } + }, + watch: { + dialogVisible(val) { + if (val && this.editData) { + // 编辑模式,回显数据 + this.$nextTick(() => { + this.form = { + ...this.editData, + termType: Number(this.editData.termType) // 确保termType是数字类型 + } + }) + } else if (!val) { + // 关闭对话框时重置表单 + this.resetForm() } } }, @@ -87,12 +109,28 @@ submitForm() { this.$refs.form.validate((valid) => { if (valid) { - this.$emit('confirm', this.form) + // 提交前确保termType是数字类型 + const submitData = { + ...this.form, + termType: Number(this.form.termType) + } + this.$emit('confirm', submitData) + this.resetForm() } }) }, resetForm() { this.$refs.form.resetFields() + this.form = { + termCode: '', + termName: '', + termType: 1, + termMethodCode: '', + termMethod: '', + sampleRequire: '', + status: 1, + testId: '' + } } } } -- Gitblit v1.7.1