From 39868da3de6192d19dfd316c8be1c080b2d3ebe7 Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期五, 18 四月 2025 14:35:46 +0800 Subject: [PATCH] 修改 --- src/views/hazardousChemicals/finishedBasicInfo/components/finishedBasicDialog.vue | 103 ++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 97 insertions(+), 6 deletions(-) diff --git a/src/views/hazardousChemicals/finishedBasicInfo/components/finishedBasicDialog.vue b/src/views/hazardousChemicals/finishedBasicInfo/components/finishedBasicDialog.vue index 4536556..4eb2272 100644 --- a/src/views/hazardousChemicals/finishedBasicInfo/components/finishedBasicDialog.vue +++ b/src/views/hazardousChemicals/finishedBasicInfo/components/finishedBasicDialog.vue @@ -34,10 +34,35 @@ <el-input v-model.trim="state.form.cas" placeholder="请输入CAS"></el-input> </el-form-item> <el-form-item label="试剂类型:" prop="productType"> - <el-input v-model.trim="state.form.productType" placeholder="请输入试剂类型"></el-input> + <el-select + v-model="state.form.productType" + placeholder="请选择试剂类型" + clearable + style="width: 100%" + > + <el-option + v-for="dict in state.hazmatTypeList" + :key="dict.id" + :label="dict.name" + :value="dict.name" + /> + </el-select> </el-form-item> <el-form-item label="危险性质:" prop="productCharacter"> - <el-input v-model.trim="state.form.productCharacter" placeholder="请输入危险性质"></el-input> + <el-select + v-model="state.characterList" + placeholder="请选择危险性质" + clearable + multiple + style="width: 100%" + > + <el-option + v-for="dict in state.hazmatCharacterList" + :key="dict.id" + :label="dict.name" + :value="dict.name" + /> + </el-select> </el-form-item> <el-form-item label="供应商:" prop="supplier"> <el-input v-model.trim="state.form.supplier" placeholder="请输入供应商"></el-input> @@ -89,6 +114,9 @@ :value="dict.id" /> </el-select> + </el-form-item> + <el-form-item label="单次入库最大数量:" prop="maxEntry"> + <el-input v-model.trim="state.form.maxEntry" placeholder="请输入单次入库最大数量" oninput="value=value.replace(/^\.+|[^\d]/g,'')"></el-input> </el-form-item> <!-- <el-form-item label="安全库存:" prop="safeNum">--> <!-- <el-input v-model.trim="state.form.safeNum" placeholder="请输入安全库存" oninput="value=value.replace(/^\.+|[^\d]/g,'')"></el-input>--> @@ -165,8 +193,10 @@ minPackage: '', safeNum: null, threshold: null, - kind: '' + kind: '', + maxEntry: null }, + characterList: [], formRules:{ name: [{ required: true, trigger: "blur", message: '请输入危化品名称', }], cas: [{ required: true, message: '请输入cas', trigger: 'blur' }], @@ -175,7 +205,7 @@ productType: [{ required: true, message: '请输入试剂类型', trigger: 'blur' }], manufacturer: [{ required: true, message: '请输入厂家', trigger: 'blur' }], metering: [{ required: true, message: '请输入包装数量', trigger: 'blur' }], - perBox: [{ required: true, message: '请输入每箱数量', trigger: 'blur' }], + // perBox: [{ required: true, message: '请输入每箱数量', trigger: 'blur' }], price: [{ required: true, message: '请输入含税价格', trigger: 'blur' }], productSn: [{ required: true, validator: validateName, trigger: 'blur' }], supplier: [{ required: true, message: '请输入供应商', trigger: 'blur' }], @@ -184,6 +214,7 @@ kind: [{ required: true, message: '请选择种类', trigger: 'blur' }], threshold: [{ required: true, message: '请输入超期阀值', trigger: 'blur' }], unit: [{ required: true, message: '请选择包装单位', trigger: 'blur' }], + maxEntry: [{ required: true, message: '请输入单次入库最大数量', trigger: 'blur' }], }, typeList: [ @@ -234,14 +265,70 @@ name: '其他' }, ], + hazmatTypeList: [ + { + id: 0, + name: '耗材' + }, + { + id: 1, + name: '液态' + }, + { + id: 2, + name: '液体' + }, + { + id: 3, + name: '气态' + }, + { + id: 4, + name: '固态' + }, + ], + hazmatCharacterList: [ + { + id: 0, + name: '腐蚀品' + }, + { + id: 1, + name: '氧化品' + }, + { + id: 2, + name: '有毒品' + }, + { + id: 3, + name: '易燃品' + }, + { + id: 4, + name: '非易燃品' + }, + ], unitOptions: [ { value: 'g', label: 'g', }, { + value: 'mg', + label: 'mg', + }, + { + value: 'kg', + label: 'kg', + }, + { value: 'ml', label: 'ml', + }, + { + value: 'l', + label: 'l', }, ] }) @@ -251,13 +338,15 @@ t.value = type title.value = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '' ; if(type === 'edit' || type === 'distribute') { - state.form = value; + state.form = JSON.parse(JSON.stringify(value)); + state.characterList = state.form.productCharacter.split(',') startUsername.value = value.productSn } dialogVisible.value = true; } const onSubmit = async () => { + state.form.productCharacter = state.characterList.join(",") const valid = await busRef.value.validate(); if(valid){ if(title.value === '新增'){ @@ -317,8 +406,10 @@ minPackage: '', safeNum: null, threshold: null, - kind: '' + kind: '', + maxEntry: null } + state.characterList = [] } defineExpose({ openDialog -- Gitblit v1.9.2