引入各类字典,屏蔽一些前端必填校验

pull/480/head
lizilong 2024-06-12 00:43:22 +08:00
parent 88b86b0f2c
commit 82dbe45662
2 changed files with 37 additions and 25 deletions

View File

@ -16,10 +16,10 @@
<el-form-item label="项目负责人" prop="projectLeader">
<el-input v-model="formData.projectLeader" placeholder="请输入项目负责人" />
</el-form-item></el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="项目负责人Id" prop="projectLeaderId">
<el-input v-model="formData.projectLeaderId" placeholder="请输入项目负责人Id" />
</el-form-item></el-col>
</el-form-item></el-col>-->
<el-col :span="12">
<el-form-item label="项目编号" prop="projectCode">
<el-input v-model="formData.projectCode" placeholder="请输入项目编号" />
@ -50,17 +50,20 @@
:value="dict.value" />
</el-select>
</el-form-item></el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="计划Id" prop="planId">
<el-input v-model="formData.planId" placeholder="请输入计划Id" />
</el-form-item></el-col>
</el-form-item></el-col>-->
<el-col :span="12">
<el-form-item label="课题实施所需的其他配套条件" prop="supportingCondition">
<el-input v-model="formData.supportingCondition" placeholder="请输入课题实施所需的其他配套条件" />
</el-form-item></el-col>
<el-col :span="12">
<el-form-item label="性别" prop="gender">
<el-input v-model="formData.gender" placeholder="请输入性别" />
<el-select v-model="formData.gender" placeholder="请选择性别">
<el-option v-for="dict in getStrDictOptions(DICT_TYPE.SYSTEM_USER_SEX)" :key="dict.value"
:label="dict.label" :value="dict.value" />
</el-select>
</el-form-item></el-col>
<el-col :span="12">
<el-form-item label="年龄" prop="age">
@ -68,15 +71,24 @@
</el-form-item></el-col>
<el-col :span="12">
<el-form-item label="学历" prop="education">
<el-input v-model="formData.education" placeholder="请输入学历" />
<el-select v-model="formData.education" placeholder="请选择学历">
<el-option v-for="dict in getStrDictOptions(DICT_TYPE.SYSTEM_EDUCATION)" :key="dict.value"
:label="dict.label" :value="dict.value" />
</el-select>
</el-form-item></el-col>
<el-col :span="12">
<el-form-item label="所学专业" prop="major">
<el-input v-model="formData.major" placeholder="请输入所学专业" />
<el-select v-model="formData.major" placeholder="请选择所学专业">
<el-option v-for="dict in getStrDictOptions(DICT_TYPE.SYSTEM_MAJOR)" :key="dict.value"
:label="dict.label" :value="dict.value" />
</el-select>
</el-form-item></el-col>
<el-col :span="12">
<el-form-item label="从事专业" prop="engagMajor">
<el-input v-model="formData.engagMajor" placeholder="请输入从事专业" />
<el-select v-model="formData.engagMajor" placeholder="请选择从事专业">
<el-option v-for="dict in getStrDictOptions(DICT_TYPE.SYSTEM_MAJOR)" :key="dict.value"
:label="dict.label" :value="dict.value" />
</el-select>
</el-form-item></el-col>
<el-col :span="12">
<el-form-item label="职务(职称)" prop="position">
@ -106,19 +118,19 @@
<el-form-item label="主要业绩" prop="achievement">
<el-input v-model="formData.achievement" placeholder="请输入主要业绩" />
</el-form-item></el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="主管部门ID" prop="competentDeptId">
<el-input v-model="formData.competentDeptId" placeholder="请输入主管部门ID" />
</el-form-item></el-col>
</el-form-item></el-col>-->
<el-col :span="12">
<el-form-item label="主管部门" prop="competentDeptName">
<el-input v-model="formData.competentDeptName" placeholder="请输入主管部门" />
</el-form-item></el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="主管工程师ID" prop="managerId">
<el-input v-model="formData.managerId" placeholder="请输入主管工程师ID" />
</el-form-item>
</el-col>
</el-col>-->
<el-col :span="12">
<el-form-item label="主管工程师" prop="managerName">
<el-input v-model="formData.managerName" placeholder="请输入主管工程师" />
@ -127,16 +139,16 @@
<el-form-item label="维护单位名称" prop="maintenanceUnitName">
<el-input v-model="formData.maintenanceUnitName" placeholder="请输入维护单位名称" />
</el-form-item></el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="维护单位ID" prop="maintenanceUnitId">
<el-input v-model="formData.maintenanceUnitId" placeholder="请输入维护单位ID" />
</el-form-item>
</el-col>
</el-col>-->
<el-col :span="12">
<el-form-item label="承担单位名称" prop="undertakingUnitName">
<el-input v-model="formData.undertakingUnitName" placeholder="请输入承担单位名称" />
</el-form-item></el-col>
<el-col :span="12">
<!-- <el-col :span="12">
<el-form-item label="承担单位ID" prop="undertakingUnitId">
<el-input v-model="formData.undertakingUnitId" placeholder="请输入承担单位ID" />
</el-form-item>
@ -153,7 +165,7 @@
<el-col :span="12">
<el-form-item label="状态" prop="state">
<el-input v-model="formData.state" placeholder="请输入状态" />
</el-form-item></el-col>
</el-form-item></el-col>-->
</el-row>
</el-form>
</el-tab-pane>
@ -250,14 +262,14 @@ const formData = ref({
const formRules = reactive({
projectName: [{ required: true, message: '项目名称不能为空', trigger: 'blur' }],
projectLeader: [{ required: true, message: '项目负责人不能为空', trigger: 'blur' }],
projectLeaderId: [{ required: true, message: '项目负责人Id不能为空', trigger: 'blur' }],
//projectLeaderId: [{ required: true, message: 'Id', trigger: 'blur' }],
projectCode: [{ required: true, message: '项目编号不能为空', trigger: 'blur' }],
technicalField: [{ required: true, message: '所属技术领域不能为空', trigger: 'change' }],
year: [{ required: true, message: '年度不能为空', trigger: 'blur' }],
beginDate: [{ required: true, message: '开始时间不能为空', trigger: 'blur' }],
endDate: [{ required: true, message: '结束时间不能为空', trigger: 'blur' }],
planName: [{ required: true, message: '计划类型不能为空', trigger: 'change' }],
planId: [{ required: true, message: '计划Id不能为空', trigger: 'blur' }],
//planId: [{ required: true, message: 'Id', trigger: 'blur' }],
supportingCondition: [{ required: true, message: '课题实施所需的其他配套条件不能为空', trigger: 'blur' }],
gender: [{ required: true, message: '性别不能为空', trigger: 'blur' }],
age: [{ required: true, message: '年龄不能为空', trigger: 'blur' }],
@ -267,11 +279,11 @@ const formRules = reactive({
position: [{ required: true, message: '职务(职称)不能为空', trigger: 'blur' }],
phoneNo: [{ required: true, message: '电话不能为空', trigger: 'blur' }],
email: [{ required: true, message: '邮箱不能为空', trigger: 'blur' }],
fax: [{ required: true, message: '传真不能为空', trigger: 'blur' }],
//fax: [{ required: true, message: '', trigger: 'blur' }],
postalCode: [{ required: true, message: '邮编不能为空', trigger: 'blur' }],
address: [{ required: true, message: '通讯地址不能为空', trigger: 'blur' }],
achievement: [{ required: true, message: '主要业绩不能为空', trigger: 'blur' }],
competentDeptId: [{ required: true, message: '主管部门ID不能为空', trigger: 'blur' }],
/* competentDeptId: [{ required: true, message: 'ID', trigger: 'blur' }],
competentDeptName: [{ required: true, message: '主管部门不能为空', trigger: 'blur' }],
managerId: [{ required: true, message: '主管工程师ID不能为空', trigger: 'blur' }],
managerName: [{ required: true, message: '主管工程师不能为空', trigger: 'blur' }],
@ -280,7 +292,7 @@ const formRules = reactive({
undertakingUnitName: [{ required: true, message: '承担单位名称不能为空', trigger: 'blur' }],
undertakingUnitId: [{ required: true, message: '承担单位ID不能为空', trigger: 'blur' }],
reviewUnitName: [{ required: true, message: '审核单位名称不能为空', trigger: 'blur' }],
reviewUnitId: [{ required: true, message: '审核单位ID不能为空', trigger: 'blur' }],
reviewUnitId: [{ required: true, message: '审核单位ID不能为空', trigger: 'blur' }],*/
})
const formRef = ref() // Ref
@ -436,4 +448,4 @@ const resetForm = () => {
}
formRef.value?.resetFields()
}
</script>
</script>

View File

@ -45,7 +45,7 @@ const formLoading = ref(false) // 表单的加载中
const formData = ref([])
const formRules = reactive({
contractId: [{ required: true, message: '任务书ID不能为空', trigger: 'blur' }],
purposeSignificance: [{ required: true, message: '项目目的与意义不能为空', trigger: 'blur' }],
/* purposeSignificance: [{ required: true, message: '', trigger: 'blur' }],
currentSituation: [{ required: true, message: '项目所属领域国内外产业、技术的现状和发展趋势不能为空', trigger: 'blur' }],
workFoundation: [{ required: true, message: '项目现有工作基础不能为空', trigger: 'blur' }],
projectAccording: [{ required: true, message: '项目实施目标及考核指标-考核指标依据不能为空', trigger: 'blur' }],
@ -53,7 +53,7 @@ const formRules = reactive({
researchRoadmap: [{ required: true, message: '主要研究开发内容-技术路线不能为空', trigger: 'blur' }],
researchInnovation: [{ required: true, message: '主要研究开发内容-创新性不能为空', trigger: 'blur' }],
riskAnalysis: [{ required: true, message: '课题实施的风险分析不能为空', trigger: 'blur' }],
projectAchie: [{ required: true, message: '预期主要成果形式、知识产权归属不能为空', trigger: 'blur' }],
projectAchie: [{ required: true, message: '预期主要成果形式、知识产权归属不能为空', trigger: 'blur' }],*/
})
const formRef = ref() // Ref
@ -104,4 +104,4 @@ const getData = () => {
}
defineExpose({ validate, getData })
</script>
</script>