From 5c45db7c1be28da293b3583c16834ee97e8bac47 Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期三, 02 四月 2025 13:43:06 +0800 Subject: [PATCH] 修改 --- src/views/experiment/project/components/projectDialog.vue | 65 ++++++++++++++++++++++++++------ 1 files changed, 53 insertions(+), 12 deletions(-) diff --git a/src/views/experiment/project/components/projectDialog.vue b/src/views/experiment/project/components/projectDialog.vue index 15f901a..34fc950 100644 --- a/src/views/experiment/project/components/projectDialog.vue +++ b/src/views/experiment/project/components/projectDialog.vue @@ -3,7 +3,7 @@ <el-dialog :title="projectDialogState.title" v-model="projectDialogState.projectDialogVisible" width="80%" :before-close="handleClose"> <el-form ref="ProjectFormRef" :rules="projectDialogState.projectFormRules" :model="projectDialogState.projectForm" size="default" label-width="0"> <table class="report-table"> - <th class="m-color b-font" style="text-align: center">***研究所/***大学<br />科学研究实验项目安全风险基础信息录入表(新立项)(带<span style="color: red">*</span>为必填项)</th> + <th class="m-color b-font" style="text-align: center">材料科学姑苏实验室<br/>科学研究实验项目安全风险基础信息录入表(新立项)(带<span style="color: red">*</span>为必填项)</th> <tr> <td class="w-25 m-color required">实验名称</td> <td class="w-75 m-color"> @@ -33,8 +33,18 @@ <tr> <td class="w-25 m-color required">部门</td> <td class="w-25 m-color"> +<!-- <el-form-item prop="dep">--> +<!-- <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.dep" />--> +<!-- </el-form-item>--> <el-form-item prop="dep"> - <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.dep" /> + <el-select style="width: 100%" v-model="projectDialogState.projectForm.dep" clearable filterable> + <el-option + v-for="item in projectDialogState.deptList" + :key="item.id" + :value="item.depName" + :label="item.depName" + ></el-option> + </el-select> </el-form-item> </td> <td class="w-25 m-color required">立项时间</td> @@ -81,8 +91,18 @@ <!-- ></el-option>--> <!-- </el-select>--> <el-form-item prop="safeLiabilityUser"> - <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUser" /> + <el-select style="width: 100%" v-model="projectDialogState.projectForm.safeLiabilityUser" clearable filterable @change="getSafeLiabilityUserPhone($event)"> + <el-option + v-for="item in projectDialogState.systemPersonList" + :key="item.id" + :value="item.realName" + :label="item.realName" + ></el-option> + </el-select> </el-form-item> +<!-- <el-form-item prop="safeLiabilityUser">--> +<!-- <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.safeLiabilityUser" />--> +<!-- </el-form-item>--> </td> <td class="w-25 m-color required">电话</td> <td class="w-25 m-color"> @@ -292,6 +312,7 @@ import {useUserInfo} from "/@/stores/userInfo"; import {storeToRefs} from "pinia"; import {checkChineseName, verifyPhone} from "/@/utils/toolsValidate"; +import {departmentApi} from "/@/api/systemManage/department"; const SelectEquipment = defineAsyncComponent(() => import('./selectEquipment.vue')) const SelectMaterial = defineAsyncComponent(() => import('./selectMaterial.vue')) @@ -384,11 +405,17 @@ allPersonList: [], allRoomList: [], systemPersonList: [], + deptList: [] }) const getLiabilityUserPhone = (value: number)=>{ const data = projectDialogState.systemPersonList.find(item => item.id === value) as AllPersonListType projectDialogState.projectForm.liabilityUserPhone = data.phone +} + +const getSafeLiabilityUserPhone = (value: number)=>{ + const data = projectDialogState.systemPersonList.find(item => item.realName === value) as AllPersonListType + projectDialogState.projectForm.safeLiabilityUserPhone = data.phone } // const getSafeLiabilityUserPhone = (value: number)=>{ @@ -461,7 +488,7 @@ siteList: [], deviceList: [], stuffList: [], - hazardousWasteList: [] + hazardousWasteList: [], }; }else if(title === '整改' || title === '编辑'){ projectDialogState.title = title; @@ -533,14 +560,14 @@ } } if(projectDialogState.title === '新增'){ - if(checkChineseName(projectDialogState.projectForm.safeLiabilityUser) == false){ - ElMessage({ - type: 'warning', - message: '安全负责人姓名格式有误', - duration: 1000 - }); - return - } + // if(checkChineseName(projectDialogState.projectForm.safeLiabilityUser) == false){ + // ElMessage({ + // type: 'warning', + // message: '安全负责人姓名格式有误', + // duration: 1000 + // }); + // return + // } if(verifyPhone(projectDialogState.projectForm.safeLiabilityUserPhone) == false || verifyPhone(projectDialogState.projectForm.liabilityUserPhone) == false){ ElMessage({ type: 'warning', @@ -659,6 +686,19 @@ } }; +const getDeptData =async () => { + let res = await departmentApi().getDepartmentList() + if (res.data.code === 100) { + projectDialogState.deptList = res.data.data + } else { + ElMessage({ + type: 'warning', + message: res.data.msg + }); + } +} + + const emit = defineEmits(['refresh']); defineExpose({ @@ -668,6 +708,7 @@ onMounted(() => { getAllPersonList(); getPersonList(); + getDeptData(); }); </script> -- Gitblit v1.9.2