From a669adb3e80e58aee84be37d865311717ea61990 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: Thu, 14 Aug 2025 08:38:37 +0800
Subject: [PATCH] 修改
---
src/views/hazardousChemicals/basicInfon/components/basicDialog.vue | 111 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 101 insertions(+), 10 deletions(-)
diff --git a/src/views/hazardousChemicals/basicInfon/components/basicDialog.vue b/src/views/hazardousChemicals/basicInfon/components/basicDialog.vue
index 4aed9ba..e318b58 100644
--- a/src/views/hazardousChemicals/basicInfon/components/basicDialog.vue
+++ b/src/views/hazardousChemicals/basicInfon/components/basicDialog.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="hazmatType">
- <el-input v-model.trim="state.form.hazmatType" placeholder="请输入试剂类型"></el-input>
+ <el-select
+ v-model="state.form.hazmatType"
+ 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="hazmatCharacter">
- <el-input v-model.trim="state.form.hazmatCharacter" 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>
@@ -94,7 +119,10 @@
<el-input v-model.trim="state.form.safeNum" placeholder="请输入安全库存" oninput="value=value.replace(/^\.+|[^\d]/g,'')"></el-input>
</el-form-item>
<el-form-item label="超期阈值(小时):" prop="threshold">
- <el-input v-model.trim="state.form.threshold" placeholder="请输入超期阈值"></el-input>
+ <el-input v-model.trim="state.form.threshold" placeholder="请输入超期阈值" oninput="value=value.replace(/^\.+|[^\d]/g,'')"></el-input>
+ </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>
<template #footer>
@@ -164,25 +192,28 @@
minPackage: '',
safeNum: null,
threshold: null,
- kind: ''
+ kind: '',
+ maxEntry: null
},
+ characterList: [],
formRules:{
name: [{ required: true, trigger: "blur", message: '请输入危化品名称', }],
cas: [{ required: true, message: '请输入cas', trigger: 'blur' }],
hazmatCharacter: [{ required: true, message: '请输入危险性质', trigger: 'blur' }],
hazmatFormat: [{ required: true, message: '请输入试剂规格', trigger: 'blur' }],
hazmatType: [{ required: true, message: '请输入试剂类型', trigger: 'blur' }],
- manufacturer: [{ required: true, message: '请输入厂家', trigger: 'blur' }],
+ // manufacturer: [{ required: true, message: '请输入厂家', trigger: 'blur' }],
metering: [{ required: true, message: '请输入包装数量', trigger: 'blur' }],
- perBox: [{ required: true, message: '请输入每箱数量', trigger: 'blur' }],
- price: [{ 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' }],
+ // supplier: [{ required: true, message: '请输入供应商', trigger: 'blur' }],
minPackage: [{ required: true, message: '请输入最小包装类型', trigger: 'blur' }],
safeNum: [{ required: true, message: '请输入安全库存', trigger: 'blur' }],
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: [
@@ -205,6 +236,28 @@
{
id: 4,
name: '其他'
+ },
+ ],
+ hazmatTypeList: [
+ {
+ id: 0,
+ name: '耗材'
+ },
+ {
+ id: 1,
+ name: '液态'
+ },
+ {
+ id: 2,
+ name: '液体'
+ },
+ {
+ id: 3,
+ name: '气态'
+ },
+ {
+ id: 4,
+ name: '固态'
},
],
unitList:[
@@ -233,14 +286,48 @@
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',
},
]
})
@@ -250,13 +337,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.hazmatCharacter.split(',')
startUsername.value = value.productSn
}
dialogVisible.value = true;
}
const onSubmit = async () => {
+ state.form.hazmatCharacter = state.characterList.join(",")
const valid = await busRef.value.validate();
if(valid){
if(title.value === '新增'){
@@ -316,8 +405,10 @@
minPackage: '',
safeNum: null,
threshold: null,
- kind: ''
+ kind: '',
+ maxEntry: null
}
+ state.characterList = []
}
defineExpose({
openDialog
--
Gitblit v1.9.2