From f88d2029c7b2c66fcf0a9dffdc55da75b939c2ea Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期二, 12 八月 2025 10:55:54 +0800 Subject: [PATCH] 修改 --- src/views/hazardousChemicals/systemManage/company/components/companyDialog.vue | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 51 insertions(+), 2 deletions(-) diff --git a/src/views/hazardousChemicals/systemManage/company/components/companyDialog.vue b/src/views/hazardousChemicals/systemManage/company/components/companyDialog.vue index 554c85b..f12a4ea 100644 --- a/src/views/hazardousChemicals/systemManage/company/components/companyDialog.vue +++ b/src/views/hazardousChemicals/systemManage/company/components/companyDialog.vue @@ -12,8 +12,25 @@ <el-form-item label="企业信用代码:" prop="creditCode" > <el-input v-model.trim="state.form.creditCode" placeholder="请输入企业信用代码"></el-input> </el-form-item> + <el-form-item label="企业编码:" prop="code" > + <el-input v-model.trim="state.form.code" maxlength="2" placeholder="请输入企业编码" oninput="value=value.replace( /[^a-zA-Z0-9]/g,'')"></el-input> + </el-form-item> <el-form-item label="企业名称:" prop="name" > <el-input v-model.trim="state.form.name" placeholder="请输入企业名称"></el-input> + </el-form-item> + <el-form-item label="企业类型:" prop="type" > + <el-select + v-model="state.form.type" + placeholder="请选择企业类型" + style="width: 100%" + > + <el-option + v-for="item in state.typeList" + :key="item.id" + :label="item.name" + :value="item.id" + /> + </el-select> </el-form-item> <el-form-item label="负责人:" prop="major" > <el-input v-model.trim="state.form.major" placeholder="请输入负责人"></el-input> @@ -35,7 +52,7 @@ import {reactive, ref, toRefs} from 'vue' import {ElMessage} from "element-plus"; import {addCompany, checkName, distributeCompany, editCompany} from "@/api/hazardousChemicals/company"; -import {verifyPhone} from "@/utils/validate"; +import {verifyPhone, verifyPwd} from "@/utils/validate"; const dialogVisible = ref(false); const title = ref(""); @@ -84,6 +101,18 @@ } } } +let validateCode = (rule, value, callback)=>{ + if(value === ''){ + callback(new Error('请输入企业编码')) + }else{ + if(value.length !== 2){ + callback(new Error('请输入两位字母或者数字编码')) + }else{ + callback() + } + } +} + const state = reactive({ form: { id: '', @@ -91,13 +120,30 @@ name: '', major: '', phone: '', + code: '' }, formRules:{ creditCode: [{ required: true, message: '请输入企业信用代码', trigger: 'blur' }], major:[{ required: true, message: '请输入负责人', trigger: 'blur' }], name: [{ required: true, trigger: "blur", validator: validateName }], phone:[{ required: true, trigger: "blur", validator: validatePhone }], + code:[{ required: true, validator: validateCode, trigger: 'blur' }], + type: [{ required: true, message: '请选择企业类型', trigger: 'blur' }], }, + typeList: [ + { + id: 0, + name: '研发类' + }, + { + id: 1, + name: '生产类' + }, + { + id: 2, + name: '中试类' + }, + ] }) @@ -105,7 +151,7 @@ title.value = type === 'add' ? '新增' : type ==='edit' ? '编辑' : '分配课时' ; if(type === 'edit' || type === 'distribute') { - state.form = value; + state.form = JSON.parse(JSON.stringify(value)); startUsername.value = value.username startPhone.value = value.phone } @@ -117,6 +163,7 @@ if(valid){ if(title.value === '新增'){ const {id, ...data} = JSON.parse(JSON.stringify(state.form)) + data.code = data.code.toUpperCase() const res = await addCompany(data) if(res.code === 200){ ElMessage({ @@ -132,6 +179,7 @@ dialogVisible.value = false; }else if(title.value === '编辑'){ const {...data} = JSON.parse(JSON.stringify(state.form)) + data.code = data.code.toUpperCase() const res = await editCompany(data) if(res.code === 200){ ElMessage({ @@ -162,6 +210,7 @@ name: '', major: '', phone: '', + code: '' } } defineExpose({ -- Gitblit v1.9.2