add fiel
This commit is contained in:
@@ -97,6 +97,10 @@ service.interceptors.request.use(
|
|||||||
*/
|
*/
|
||||||
const handleResponse = (response: AxiosResponse<any>) => {
|
const handleResponse = (response: AxiosResponse<any>) => {
|
||||||
if (response.data.code === 1) {
|
if (response.data.code === 1) {
|
||||||
|
// 业务错误,统一弹出错误提示
|
||||||
|
if (response.data.msg) {
|
||||||
|
useMessage().error(response.data.msg);
|
||||||
|
}
|
||||||
throw response.data;
|
throw response.data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -38,8 +38,25 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="性别" prop="gender">
|
<el-form-item label="证件类型" prop="idCardType">
|
||||||
<el-select v-model="dataForm.gender" class="w-full" :disabled="!isEdit" >
|
<el-radio-group v-model="dataForm.idCardType" :disabled="!isEdit" @change="handleIdCardTypeChange">
|
||||||
|
<el-radio v-for="item in idCardTypeList" :key="item.value" :label="item.value">{{ item.label }}</el-radio>
|
||||||
|
</el-radio-group>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="身份证号" prop="idNumber">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.idNumber"
|
||||||
|
placeholder="身份证号"
|
||||||
|
maxlength="20"
|
||||||
|
v-input-filter="'idcard'">
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="性别" prop="gender" :required="isGenderRequired">
|
||||||
|
<el-select v-model="dataForm.gender" class="w-full" :disabled="!isEdit || dataForm.idCardType=='0'" >
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in sexy"
|
v-for="item in sexy"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
@@ -51,19 +68,12 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="民族" prop="nationality">
|
<el-form-item label="民族" prop="nationality">
|
||||||
<el-input type="text" v-model="dataForm.nationality" :disabled="!isEdit"></el-input>
|
<el-select v-model="dataForm.nationality" filterable placeholder="请选择民族" class="w-full" :disabled="!isEdit">
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row :gutter="20" class="form-row">
|
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item label="文化程度" prop="degreeOfEducation">
|
|
||||||
<el-select v-model="dataForm.degreeOfEducation" filterable placeholder="请选择文化程度" class="w-full" :disabled="!isEdit" @change="changeEducation">
|
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in eduList"
|
v-for="item in nationalityList"
|
||||||
:key="item.value"
|
:key="item.nationCode"
|
||||||
:label="item.label"
|
:label="item.nationName"
|
||||||
:value="item.value">
|
:value="item.nationName">
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -92,6 +102,52 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
|
</el-row>
|
||||||
|
<el-row :gutter="20" class="form-row">
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="毕业学校" prop="schoolOfGraduation">
|
||||||
|
<el-input type="text" v-model="dataForm.schoolOfGraduation" :disabled="!isEdit"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
<el-row :gutter="20" class="form-row">
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="准考证号" prop="examRegistrationNumbers">
|
||||||
|
<el-input
|
||||||
|
v-model="dataForm.examRegistrationNumbers"
|
||||||
|
placeholder="准考证号"
|
||||||
|
maxlength="20"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
v-input-filter="'alphanumeric'">
|
||||||
|
</el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="文化程度" prop="degreeOfEducation">
|
||||||
|
<el-select v-model="dataForm.degreeOfEducation" filterable placeholder="请选择文化程度" class="w-full" :disabled="!isEdit" @change="changeEducation">
|
||||||
|
<el-option
|
||||||
|
v-for="item in eduList"
|
||||||
|
:key="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
:value="item.value">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item label="成绩" prop="score">
|
||||||
|
<el-input-number
|
||||||
|
v-model="dataForm.score"
|
||||||
|
placeholder="成绩"
|
||||||
|
:min="0"
|
||||||
|
:max="1000"
|
||||||
|
:disabled="!isEdit"
|
||||||
|
@change="calculateCorrectedScore">
|
||||||
|
</el-input-number>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="户口性质" prop="residenceType">
|
<el-form-item label="户口性质" prop="residenceType">
|
||||||
<el-select v-model="dataForm.residenceType" filterable clearable placeholder="请选择户口性质" class="w-full" :disabled="!isEdit">
|
<el-select v-model="dataForm.residenceType" filterable clearable placeholder="请选择户口性质" class="w-full" :disabled="!isEdit">
|
||||||
@@ -105,58 +161,46 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20" class="form-row">
|
|
||||||
<el-col :span="12">
|
|
||||||
<el-form-item label="毕业学校" prop="schoolOfGraduation">
|
|
||||||
<el-input type="text" v-model="dataForm.schoolOfGraduation" :disabled="!isEdit"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<!-- 证件信息 -->
|
<!-- 证件信息 -->
|
||||||
<el-row :gutter="20" class="form-row">
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item label="身份证号" prop="idNumber">
|
|
||||||
<el-input
|
|
||||||
v-model="dataForm.idNumber"
|
|
||||||
placeholder="身份证号"
|
|
||||||
maxlength="20"
|
|
||||||
v-input-filter="'idcard'">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item label="准考证号" prop="examRegistrationNumbers">
|
|
||||||
<el-input
|
|
||||||
v-model="dataForm.examRegistrationNumbers"
|
|
||||||
placeholder="准考证号"
|
|
||||||
maxlength="20"
|
|
||||||
:disabled="!isEdit"
|
|
||||||
v-input-filter="'alphanumeric'">
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item label="成绩" prop="score">
|
|
||||||
<el-input-number
|
|
||||||
v-model="dataForm.score"
|
|
||||||
placeholder="成绩"
|
|
||||||
:min="0"
|
|
||||||
:max="1000"
|
|
||||||
:disabled="!isEdit"
|
|
||||||
@change="calculateCorrectedScore">
|
|
||||||
</el-input-number>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row v-if="dataForm.degreeOfEducation=='1'" :gutter="20" class="form-row">
|
<el-row v-if="dataForm.degreeOfEducation=='1'" :gutter="20" class="form-row">
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="成绩折算分" prop="correctedScore">
|
<el-form-item label="学校归属地" prop="schoolArea">
|
||||||
<el-input-number
|
<el-select v-model="dataForm.schoolArea" filterable placeholder="请选择学校归属地" class="w-full" :disabled="!isEdit" @change="changeFrom">
|
||||||
v-model="dataForm.correctedScore"
|
<el-option
|
||||||
:min="0"
|
v-for="item in schoolFromList"
|
||||||
:max="1000"
|
:key="item.value"
|
||||||
disabled>
|
:label="item.label"
|
||||||
</el-input-number>
|
:value="item.value">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col v-if="(dataForm.degreeOfEducation) && (dataForm.schoolArea=='2')" :span="6">
|
||||||
|
<el-form-item label="学校所在省市" prop="jsOtherCity">
|
||||||
|
<el-select v-model="dataForm.jsOtherCity" filterable placeholder="请选择学校所在省市" class="w-full"
|
||||||
|
:disabled="!isEdit" @change="changeSchoolCode">
|
||||||
|
<el-option
|
||||||
|
v-for="item in schoolCodeList"
|
||||||
|
:key="item.regionId"
|
||||||
|
:label="item.regionName"
|
||||||
|
:value="item.regionId">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col v-if="(dataForm.degreeOfEducation) && (dataForm.schoolArea=='3')" :span="6">
|
||||||
|
<el-form-item label="外省" prop="otherProvince">
|
||||||
|
<el-select v-model="dataForm.otherProvince" filterable placeholder="请选择学校所在省市" class="w-full"
|
||||||
|
:disabled="!isEdit" @change="changeSchoolCode">
|
||||||
|
<el-option
|
||||||
|
v-for="item in areaHomeProvinceList"
|
||||||
|
:key="item.code"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.code">
|
||||||
|
</el-option>
|
||||||
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
@@ -171,48 +215,19 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="学校归属地" prop="schoolArea">
|
<el-form-item label="成绩折算分" prop="correctedScore">
|
||||||
<el-select v-model="dataForm.schoolArea" filterable placeholder="请选择学校归属地" class="w-full" :disabled="!isEdit" @change="changeFrom">
|
<el-input-number
|
||||||
<el-option
|
v-model="dataForm.correctedScore"
|
||||||
v-for="item in schoolFromList"
|
:min="0"
|
||||||
:key="item.value"
|
:max="1000"
|
||||||
:label="item.label"
|
disabled>
|
||||||
:value="item.value">
|
</el-input-number>
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row v-if="(dataForm.degreeOfEducation) && (dataForm.schoolArea=='2')" :gutter="20" class="form-row">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="学校所在省市" prop="jsOtherCity">
|
|
||||||
<el-select v-model="dataForm.jsOtherCity" filterable placeholder="请选择学校所在省市" class="w-full"
|
|
||||||
:disabled="!isEdit" @change="changeSchoolCode">
|
|
||||||
<el-option
|
|
||||||
v-for="item in schoolCodeList"
|
|
||||||
:key="item.regionId"
|
|
||||||
:label="item.regionName"
|
|
||||||
:value="item.regionId">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row v-if="(dataForm.degreeOfEducation) && (dataForm.schoolArea=='3')" :gutter="20" class="form-row">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="外省" prop="otherProvince">
|
|
||||||
<el-select v-model="dataForm.otherProvince" filterable placeholder="请选择学校所在省市" class="w-full"
|
|
||||||
:disabled="!isEdit" @change="changeSchoolCode">
|
|
||||||
<el-option
|
|
||||||
v-for="item in areaHomeProvinceList"
|
|
||||||
:key="item.code"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.code">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
|
|
||||||
|
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<!-- 户口所在地 -->
|
<!-- 户口所在地 -->
|
||||||
<el-row :gutter="20" class="form-row">
|
<el-row :gutter="20" class="form-row">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
@@ -340,7 +355,7 @@
|
|||||||
<!-- 专业信息 -->
|
<!-- 专业信息 -->
|
||||||
<div class="form-section">
|
<div class="form-section">
|
||||||
<div class="section-title">专业信息</div>
|
<div class="section-title">专业信息</div>
|
||||||
<el-row :gutter="20" class="form-row">
|
<el-row v-if="dataForm.id" :gutter="20" class="form-row">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="拟报专业1" prop="wishMajorOne">
|
<el-form-item label="拟报专业1" prop="wishMajorOne">
|
||||||
<el-select v-model="dataForm.wishMajorOne" filterable clearable placeholder="请选择专业" class="w-full">
|
<el-select v-model="dataForm.wishMajorOne" filterable clearable placeholder="请选择专业" class="w-full">
|
||||||
@@ -470,7 +485,7 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="6">
|
<el-col :span="6">
|
||||||
<el-form-item label="总费用" prop="allMoney">
|
<el-form-item label="总费用" prop="allMoney">
|
||||||
<span class="total-fee">{{dataForm.feeTuition+dataForm.feeAgency}}</span>
|
<span class="total-fee">{{Number(dataForm.feeTuition)+Number(dataForm.feeAgency)}}</span>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@@ -595,11 +610,6 @@
|
|||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="8">
|
|
||||||
<el-form-item label="原序号" prop="oldSerialNumber">
|
|
||||||
<el-input type="text" v-model="dataForm.oldSerialNumber" :disabled="!isEdit"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<el-form-item label="辨色力" prop="colorDiscrimination">
|
<el-form-item label="辨色力" prop="colorDiscrimination">
|
||||||
<el-select v-model="dataForm.colorDiscrimination" filterable clearable placeholder="请选择辨色力" class="w-full" :disabled="!isEdit">
|
<el-select v-model="dataForm.colorDiscrimination" filterable clearable placeholder="请选择辨色力" class="w-full" :disabled="!isEdit">
|
||||||
@@ -627,13 +637,6 @@
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20" class="form-row">
|
|
||||||
<el-col :span="24">
|
|
||||||
<el-form-item label="审核备注" prop="auditRemarks">
|
|
||||||
<el-input type="textarea" v-model="dataForm.auditRemarks" placeholder="审核备注" :rows="2" :disabled="!isEdit"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
</div>
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
<template #footer v-if="isEdit">
|
<template #footer v-if="isEdit">
|
||||||
@@ -657,8 +660,8 @@
|
|||||||
import { ref, reactive, nextTick, watch, computed } from 'vue'
|
import { ref, reactive, nextTick, watch, computed } from 'vue'
|
||||||
import { ElNotification } from 'element-plus'
|
import { ElNotification } from 'element-plus'
|
||||||
import { Picture } from '@element-plus/icons-vue'
|
import { Picture } from '@element-plus/icons-vue'
|
||||||
import { useMessageBox } from '/@/hooks/message'
|
import { useMessage, useMessageBox } from '/@/hooks/message'
|
||||||
import { getObj, putObj, addObj } from '/@/api/recruit/recruitstudentsignup'
|
import { getObj, putObj, addObj ,makeCorrectScore} from '/@/api/recruit/recruitstudentsignup'
|
||||||
import { list as listByGroupId } from '/@/api/recruit/recruitstudentschool'
|
import { list as listByGroupId } from '/@/api/recruit/recruitstudentschool'
|
||||||
import { getList } from "/@/api/recruit/recruitstudentplangroup"
|
import { getList } from "/@/api/recruit/recruitstudentplangroup"
|
||||||
import { listByEdu } from "/@/api/recruit/recruitstudentplan"
|
import { listByEdu } from "/@/api/recruit/recruitstudentplan"
|
||||||
@@ -667,10 +670,12 @@ import { useDict } from '/@/hooks/dict'
|
|||||||
import { areaList, areaSonList } from "/@/api/recruit/recruitstudentschool"
|
import { areaList, areaSonList } from "/@/api/recruit/recruitstudentschool"
|
||||||
import { list as scoreList } from "/@/api/recruit/recruitstudentplancorrectscoreconfig"
|
import { list as scoreList } from "/@/api/recruit/recruitstudentplancorrectscoreconfig"
|
||||||
import { queryAllTeacher } from "/@/api/professional/professionaluser/teacherbase"
|
import { queryAllTeacher } from "/@/api/professional/professionaluser/teacherbase"
|
||||||
|
import { getNationalList } from "/@/api/basic/basicnation"
|
||||||
import { verifyIdCardAll, verifyAdmissionNumber } from '/@/utils/toolsValidate'
|
import { verifyIdCardAll, verifyAdmissionNumber } from '/@/utils/toolsValidate'
|
||||||
|
import { AUDIT_STATUS_LIST, getStatusConfig } from '/@/config/global'
|
||||||
|
|
||||||
|
const message = useMessage()
|
||||||
const messageBox = useMessageBox()
|
const messageBox = useMessageBox()
|
||||||
|
|
||||||
// Emits
|
// Emits
|
||||||
const emit = defineEmits<{
|
const emit = defineEmits<{
|
||||||
(e: 'refreshDataList'): void
|
(e: 'refreshDataList'): void
|
||||||
@@ -690,12 +695,11 @@ const eduList = ref<any[]>([])
|
|||||||
const imgList = ref<string[]>([])
|
const imgList = ref<string[]>([])
|
||||||
const type = ref<number | null>(null)
|
const type = ref<number | null>(null)
|
||||||
const isShow = ref(false)
|
const isShow = ref(false)
|
||||||
|
const isEdit = ref(false)
|
||||||
// 计算属性:判断是否为编辑模式
|
// 性别是否必填(证件类型不是身份证时必填)
|
||||||
const isEdit = computed(() => {
|
const isGenderRequired = computed(() => dataForm.idCardType !== '0')
|
||||||
console.log(type.value)
|
// 录取状态
|
||||||
return type.value === 1
|
const auditStatusList = AUDIT_STATUS_LIST
|
||||||
})
|
|
||||||
// 户口性质
|
// 户口性质
|
||||||
const residenceTypeList = ref<any[]>([])
|
const residenceTypeList = ref<any[]>([])
|
||||||
const schoolCodeList = ref<any[]>([])
|
const schoolCodeList = ref<any[]>([])
|
||||||
@@ -708,7 +712,6 @@ const areaAreaList = ref<any[]>([])
|
|||||||
const areaHomeProvinceList = ref<any[]>([])
|
const areaHomeProvinceList = ref<any[]>([])
|
||||||
const areaHomeCityList = ref<any[]>([])
|
const areaHomeCityList = ref<any[]>([])
|
||||||
const areaHomeAreaList = ref<any[]>([])
|
const areaHomeAreaList = ref<any[]>([])
|
||||||
const dialogImageUrl = ref("")
|
|
||||||
const dialogUploadVisible = ref(false)
|
const dialogUploadVisible = ref(false)
|
||||||
const sevenMajorList = ref<any[]>([])
|
const sevenMajorList = ref<any[]>([])
|
||||||
const sixMajorList = ref<any[]>([])
|
const sixMajorList = ref<any[]>([])
|
||||||
@@ -719,7 +722,8 @@ const twoMajorList = ref<any[]>([])
|
|||||||
const agencyFeeList = ref<any[]>([])
|
const agencyFeeList = ref<any[]>([])
|
||||||
const tuitionFeeList = ref<any[]>([])
|
const tuitionFeeList = ref<any[]>([])
|
||||||
const schoolFromList = ref<any[]>([])
|
const schoolFromList = ref<any[]>([])
|
||||||
|
const nationalityList = ref<any[]>([])
|
||||||
|
const idCardTypeList = ref<any[]>([])
|
||||||
const dataForm = reactive({
|
const dataForm = reactive({
|
||||||
id: "",
|
id: "",
|
||||||
groupId: "",
|
groupId: "",
|
||||||
@@ -788,6 +792,7 @@ const dataForm = reactive({
|
|||||||
jsOtherCity:"",
|
jsOtherCity:"",
|
||||||
householdPic:"",
|
householdPic:"",
|
||||||
otherProvince:"",
|
otherProvince:"",
|
||||||
|
idCardType:"0",
|
||||||
scorePhotoList: [] as string[],
|
scorePhotoList: [] as string[],
|
||||||
graPicList: [] as string[],
|
graPicList: [] as string[],
|
||||||
yyPicList: [] as string[],
|
yyPicList: [] as string[],
|
||||||
@@ -804,7 +809,19 @@ const dataRule = {
|
|||||||
{required: true, message: '姓名不能为空', trigger: 'change'}
|
{required: true, message: '姓名不能为空', trigger: 'change'}
|
||||||
],
|
],
|
||||||
gender: [
|
gender: [
|
||||||
{required: true, message: '性别不能为空', trigger: 'change'}
|
{
|
||||||
|
validator: (rule: any, value: any, callback: any) => {
|
||||||
|
// 如果证件类型是身份证,性别可以不填(后台会根据身份证号自动获取)
|
||||||
|
if (dataForm.idCardType === '0') {
|
||||||
|
callback()
|
||||||
|
} else if (!value) {
|
||||||
|
callback(new Error('性别不能为空'))
|
||||||
|
} else {
|
||||||
|
callback()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
trigger: 'change'
|
||||||
|
}
|
||||||
],
|
],
|
||||||
nationality: [
|
nationality: [
|
||||||
{required: true, message: '民族不能为空', trigger: 'change'}
|
{required: true, message: '民族不能为空', trigger: 'change'}
|
||||||
@@ -824,6 +841,9 @@ const dataRule = {
|
|||||||
residenceType: [
|
residenceType: [
|
||||||
{required: true, message: '户口性质不能为空', trigger: 'change'}
|
{required: true, message: '户口性质不能为空', trigger: 'change'}
|
||||||
],
|
],
|
||||||
|
idCardType: [
|
||||||
|
{required: true, message: '证件类型不能为空', trigger: 'change'}
|
||||||
|
],
|
||||||
idNumber: [
|
idNumber: [
|
||||||
{required: true, message: '身份证不能为空', trigger: 'change'},
|
{required: true, message: '身份证不能为空', trigger: 'change'},
|
||||||
{
|
{
|
||||||
@@ -883,18 +903,27 @@ const dataRule = {
|
|||||||
parentTel_1: [
|
parentTel_1: [
|
||||||
{required: true, message: '家长手机不能为空', trigger: 'change'}
|
{required: true, message: '家长手机不能为空', trigger: 'change'}
|
||||||
],
|
],
|
||||||
wishMajor_1: [
|
// wishMajorOne: [
|
||||||
{required: true, message: '拟报专业不能为空', trigger: 'change'}
|
// {
|
||||||
|
// validator: (rule: any, value: any, callback: any) => {
|
||||||
|
// // 新增时不需要验证,修改时需要验证
|
||||||
|
// if (!dataForm.id) {
|
||||||
|
// callback()
|
||||||
|
// } else if (!value) {
|
||||||
|
// callback(new Error('拟报专业不能为空'))
|
||||||
|
// } else {
|
||||||
|
// callback()
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
// trigger: 'change'
|
||||||
|
// }
|
||||||
|
// ],
|
||||||
|
contactName: [
|
||||||
|
{required: true, message: '联系人不能为空', trigger: 'change'}
|
||||||
],
|
],
|
||||||
nutrition: [
|
colorDiscrimination: [
|
||||||
{required: true, message: '辨色力不能为空', trigger: 'change'}
|
{required: true, message: '辨色力不能为空', trigger: 'change'}
|
||||||
],
|
],
|
||||||
height: [
|
|
||||||
{required: true, message: '身高cm不能为空', trigger: 'change'}
|
|
||||||
],
|
|
||||||
weight: [
|
|
||||||
{required: true, message: '体重kg不能为空', trigger: 'change'}
|
|
||||||
],
|
|
||||||
correctedScore:[
|
correctedScore:[
|
||||||
{required: true, message: '折算分不能为空', trigger: 'change'}
|
{required: true, message: '折算分不能为空', trigger: 'change'}
|
||||||
]
|
]
|
||||||
@@ -904,6 +933,7 @@ const dataRule = {
|
|||||||
const init = (id: string | null, typeParam: number) => {
|
const init = (id: string | null, typeParam: number) => {
|
||||||
dataForm.id = id || null
|
dataForm.id = id || null
|
||||||
type.value = typeParam
|
type.value = typeParam
|
||||||
|
isEdit.value = typeParam == 1 ? true : false
|
||||||
visible.value = true
|
visible.value = true
|
||||||
canSubmit.value = true
|
canSubmit.value = true
|
||||||
initData()
|
initData()
|
||||||
@@ -920,7 +950,8 @@ const init = (id: string | null, typeParam: number) => {
|
|||||||
areaHomeAreaList.value = []
|
areaHomeAreaList.value = []
|
||||||
|
|
||||||
// 批量获取数据字典(新增和编辑都需要) 文化程度 学费 代办费 户口性质 学校归属地
|
// 批量获取数据字典(新增和编辑都需要) 文化程度 学费 代办费 户口性质 学校归属地
|
||||||
getDictsByTypes(['finance_student_source', 'agency_fee', 'tuition_fee','house_hold_properties','recruit_school_form']).then((res: any) => {
|
getDictsByTypes(['id_type','finance_student_source', 'agency_fee', 'tuition_fee','house_hold_properties','recruit_school_form']).then((res: any) => {
|
||||||
|
idCardTypeList.value = res.data.id_type || []
|
||||||
eduList.value = res.data.finance_student_source || []
|
eduList.value = res.data.finance_student_source || []
|
||||||
agencyFeeList.value = res.data.agency_fee || []
|
agencyFeeList.value = res.data.agency_fee || []
|
||||||
tuitionFeeList.value = res.data.tuition_fee || []
|
tuitionFeeList.value = res.data.tuition_fee || []
|
||||||
@@ -970,47 +1001,15 @@ const init = (id: string | null, typeParam: number) => {
|
|||||||
|
|
||||||
title.value = dataForm.serialNumber
|
title.value = dataForm.serialNumber
|
||||||
// 获取文化程度对应的专业
|
// 获取文化程度对应的专业
|
||||||
planMajorList.value = []
|
// 根据学历获取代办费(从字典获取)
|
||||||
twoMajorList.value = []
|
|
||||||
threeMajorList.value = []
|
|
||||||
fiveMajorList.value = []
|
|
||||||
sixMajorList.value = []
|
|
||||||
sevenMajorList.value = []
|
|
||||||
fourMajorList.value = []
|
|
||||||
agencyFeeList.value.forEach((e: any) => {
|
agencyFeeList.value.forEach((e: any) => {
|
||||||
if (dataForm.degreeOfEducation == e.label) {
|
if (dataForm.degreeOfEducation == e.label) {
|
||||||
dataForm.feeAgency = e.value
|
dataForm.feeAgency = e.value
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
tuitionFeeList.value.forEach((e: any) => {
|
// 加载专业列表并分组
|
||||||
if (dataForm.degreeOfEducation == e.label && (dataForm.degreeOfEducation != 1)) {
|
loadMajorListAndGroup()
|
||||||
dataForm.feeTuition = e.value
|
// 获取招生计划下的学校所在城市(本省外市)
|
||||||
}
|
|
||||||
})
|
|
||||||
listByEdu({ groupId: dataForm.groupId, degreeOfEducation: dataForm.degreeOfEducation }).then((e: any) => {
|
|
||||||
planMajorList.value = e.data
|
|
||||||
if (1 != Number(dataForm.degreeOfEducation)) {
|
|
||||||
// 如果学历不是初中生,则根据折算分匹配录取专业
|
|
||||||
getGzAuditChange()
|
|
||||||
}
|
|
||||||
// 根据年制分组
|
|
||||||
planMajorList.value.forEach((item: any) => {
|
|
||||||
if (item.learnYear == '2') {
|
|
||||||
twoMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '3') {
|
|
||||||
threeMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '4') {
|
|
||||||
fourMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '5') {
|
|
||||||
fiveMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '6') {
|
|
||||||
sixMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '7') {
|
|
||||||
sevenMajorList.value.push(item)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
// 获取招生计划下的学校和分数线
|
|
||||||
scoreList({ groupId: dataForm.groupId }).then((data: any) => {
|
scoreList({ groupId: dataForm.groupId }).then((data: any) => {
|
||||||
schoolCodeList.value = data.data
|
schoolCodeList.value = data.data
|
||||||
})
|
})
|
||||||
@@ -1037,20 +1036,21 @@ const init = (id: string | null, typeParam: number) => {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
if ("1" == String(dataForm.degreeOfEducation)) {
|
// 根据文化程度添加前缀:初中(C)、高中(G)、技职校(J)
|
||||||
title.value = "C" + title.value
|
const educationPrefixMap: Record<string, string> = {
|
||||||
} else if ("2" == String(dataForm.degreeOfEducation)) {
|
'1': 'C', // 初中
|
||||||
title.value = "G" + title.value
|
'2': 'G', // 高中
|
||||||
} else if ("3" == String(dataForm.degreeOfEducation)) {
|
'3': 'J' // 技职校
|
||||||
title.value = "J" + title.value
|
}
|
||||||
|
const prefix = educationPrefixMap[String(dataForm.degreeOfEducation)]
|
||||||
|
if (prefix) {
|
||||||
|
title.value = prefix + title.value
|
||||||
}
|
}
|
||||||
|
|
||||||
if ("-20" == String(dataForm.auditStatus)) {
|
// 从字典数据获取录取状态标签
|
||||||
title.value = "未录取 " + title.value
|
const auditStatusConfig = getStatusConfig(auditStatusList, dataForm.auditStatus)
|
||||||
} else if ("0" == String(dataForm.auditStatus)) {
|
if (auditStatusConfig && auditStatusConfig.label) {
|
||||||
title.value = "待审核 " + title.value
|
title.value = auditStatusConfig.label + " " + title.value
|
||||||
} else if ("20" == String(dataForm.auditStatus)) {
|
|
||||||
title.value = "已录取 " + title.value
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
@@ -1061,6 +1061,54 @@ const init = (id: string | null, typeParam: number) => {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 证件类型变化处理
|
||||||
|
const handleIdCardTypeChange = () => {
|
||||||
|
// 如果选择身份证,清空性别字段(后台会根据身份证号自动获取)
|
||||||
|
if (dataForm.idCardType === '0') {
|
||||||
|
dataForm.gender = ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 加载专业列表并分组
|
||||||
|
const loadMajorListAndGroup = () => {
|
||||||
|
// 清空专业列表
|
||||||
|
planMajorList.value = []
|
||||||
|
twoMajorList.value = []
|
||||||
|
threeMajorList.value = []
|
||||||
|
fiveMajorList.value = []
|
||||||
|
sixMajorList.value = []
|
||||||
|
sevenMajorList.value = []
|
||||||
|
fourMajorList.value = []
|
||||||
|
|
||||||
|
// 根据学历获取专业
|
||||||
|
listByEdu({ groupId: dataForm.groupId, degreeOfEducation: dataForm.degreeOfEducation }).then((e: any) => {
|
||||||
|
planMajorList.value = e.data
|
||||||
|
// 如果是初中生,则根据折算分匹配录取专业
|
||||||
|
getGzAuditChange()
|
||||||
|
// 根据年制分组
|
||||||
|
planMajorList.value.forEach((item: any) => {
|
||||||
|
if (item.learnYear == '2') {
|
||||||
|
twoMajorList.value.push(item)
|
||||||
|
} else if (item.learnYear == '3') {
|
||||||
|
threeMajorList.value.push(item)
|
||||||
|
} else if (item.learnYear == '4') {
|
||||||
|
fourMajorList.value.push(item)
|
||||||
|
} else if (item.learnYear == '5') {
|
||||||
|
fiveMajorList.value.push(item)
|
||||||
|
} else if (item.learnYear == '6') {
|
||||||
|
sixMajorList.value.push(item)
|
||||||
|
} else if (item.learnYear == '7') {
|
||||||
|
sevenMajorList.value.push(item)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// 如果已有录取专业,根据文化程度和专业更新学费
|
||||||
|
if (dataForm.confirmedMajor) {
|
||||||
|
updateTuitionByMajorAndEducation()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
const changeEducation = () => {
|
const changeEducation = () => {
|
||||||
// 清空拟报专业 录取专业 学费和代办费
|
// 清空拟报专业 录取专业 学费和代办费
|
||||||
dataForm.wishMajorOne = ""
|
dataForm.wishMajorOne = ""
|
||||||
@@ -1077,48 +1125,15 @@ const changeEducation = () => {
|
|||||||
dataForm.feeTuition = 0
|
dataForm.feeTuition = 0
|
||||||
dataForm.feeAgency = 0
|
dataForm.feeAgency = 0
|
||||||
|
|
||||||
// 重新根据学历 获取学费 和 代办费
|
// 重新根据学历获取代办费(从字典获取)
|
||||||
agencyFeeList.value.forEach((e: any) => {
|
agencyFeeList.value.forEach((e: any) => {
|
||||||
if (dataForm.degreeOfEducation == e.label) {
|
if (dataForm.degreeOfEducation == e.label) {
|
||||||
dataForm.feeAgency = e.value
|
dataForm.feeAgency = e.value
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
tuitionFeeList.value.forEach((e: any) => {
|
|
||||||
if (dataForm.degreeOfEducation == e.label && (dataForm.degreeOfEducation != 1)) {
|
// 加载专业列表并分组
|
||||||
dataForm.feeTuition = e.value
|
loadMajorListAndGroup()
|
||||||
}
|
|
||||||
})
|
|
||||||
// 根据学历获取快捷专业选择
|
|
||||||
planMajorList.value = []
|
|
||||||
twoMajorList.value = []
|
|
||||||
threeMajorList.value = []
|
|
||||||
fiveMajorList.value = []
|
|
||||||
sixMajorList.value = []
|
|
||||||
sevenMajorList.value = []
|
|
||||||
fourMajorList.value = []
|
|
||||||
// 根据学历获取专业
|
|
||||||
listByEdu({ groupId: dataForm.groupId, degreeOfEducation: dataForm.degreeOfEducation }).then((e: any) => {
|
|
||||||
planMajorList.value = e.data
|
|
||||||
if (1 != Number(dataForm.degreeOfEducation)) {
|
|
||||||
getGzAuditChange()
|
|
||||||
}
|
|
||||||
// 根据年制分组
|
|
||||||
planMajorList.value.forEach((item: any) => {
|
|
||||||
if (item.learnYear == '2') {
|
|
||||||
twoMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '3') {
|
|
||||||
threeMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '4') {
|
|
||||||
fourMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '5') {
|
|
||||||
fiveMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '6') {
|
|
||||||
sixMajorList.value.push(item)
|
|
||||||
} else if (item.learnYear == '7') {
|
|
||||||
sevenMajorList.value.push(item)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const handlePicCardPreview = (file: string) => {
|
const handlePicCardPreview = (file: string) => {
|
||||||
@@ -1136,6 +1151,10 @@ const initData = () => {
|
|||||||
getList().then((data: any) => {
|
getList().then((data: any) => {
|
||||||
planList.value = data.data
|
planList.value = data.data
|
||||||
})
|
})
|
||||||
|
// 获取民族列表
|
||||||
|
getNationalList().then((res: any) => {
|
||||||
|
nationalityList.value = res.data
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const changeFrom = () => {
|
const changeFrom = () => {
|
||||||
@@ -1172,67 +1191,87 @@ const changePlaceScore = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const getGzAuditChange = () => {
|
const getGzAuditChange = () => {
|
||||||
if (isEdit.value && (dataForm.confirmedMajor == undefined || dataForm.confirmedMajor == "")) {
|
// 如果是初中生 需要根据折算分匹配录取专业
|
||||||
// 根据折算分匹配录取专业
|
if (dataForm.degreeOfEducation == "1") {
|
||||||
planMajorList.value.forEach((e: any) => {
|
if (isEdit.value && (dataForm.confirmedMajor == undefined || dataForm.confirmedMajor == "")) {
|
||||||
if (e.majorCode == dataForm.wishMajorOne && (parseFloat(e.xyNum) > 0)) {
|
// 根据折算分匹配录取专业
|
||||||
dataForm.confirmedMajor = dataForm.wishMajorOne
|
planMajorList.value.forEach((e: any) => {
|
||||||
|
if (e.majorCode == dataForm.wishMajorOne && (parseFloat(e.xyNum) > 0)) {
|
||||||
|
dataForm.confirmedMajor = dataForm.wishMajorOne
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if (dataForm.confirmedMajor) {
|
||||||
|
planMajorList.value.forEach((e: any) => {
|
||||||
|
if (e.majorCode == dataForm.wishMajorTwo && (parseFloat(e.xyNum) > 0)) {
|
||||||
|
dataForm.confirmedMajor = dataForm.wishMajorOne
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
})
|
|
||||||
if (dataForm.confirmedMajor) {
|
|
||||||
planMajorList.value.forEach((e: any) => {
|
|
||||||
if (e.majorCode == dataForm.wishMajorTwo && (parseFloat(e.xyNum) > 0)) {
|
|
||||||
dataForm.confirmedMajor = dataForm.wishMajorOne
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dataForm.confirmedMajor) {
|
if (dataForm.confirmedMajor) {
|
||||||
planMajorList.value.forEach((e: any) => {
|
planMajorList.value.forEach((e: any) => {
|
||||||
if (e.majorCode == dataForm.wishMajorThree && (parseFloat(e.xyNum) > 0)) {
|
if (e.majorCode == dataForm.wishMajorThree && (parseFloat(e.xyNum) > 0)) {
|
||||||
dataForm.confirmedMajor = dataForm.wishMajorOne
|
dataForm.confirmedMajor = dataForm.wishMajorOne
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 计算成绩折算分
|
// 计算成绩折算分
|
||||||
const calculateCorrectedScore = () => {
|
const calculateCorrectedScore = () => {
|
||||||
if (dataForm.score != undefined && dataForm.fullScore != undefined && dataForm.correctedScore != undefined && !isNaN(Number(dataForm.correctedScore))) {
|
// 验证必要字段是否存在
|
||||||
dataForm.confirmedMajor = ""
|
const hasFullScore = dataForm.fullScore != undefined && dataForm.fullScore != ""
|
||||||
let fjf = 20
|
const hasSchoolArea = dataForm.schoolArea != undefined && dataForm.schoolArea != ""
|
||||||
|
|
||||||
if (dataForm.schoolArea == "3") {
|
// 验证外省或学校所在省市至少有一个存在
|
||||||
fjf = 30
|
const hasLocation = (dataForm.schoolArea === '2' && dataForm.jsOtherCity) ||
|
||||||
|
(dataForm.schoolArea === '3' && dataForm.otherProvince)
|
||||||
|
|
||||||
|
// 只有成绩、当地总分、学校归属地、外省/学校所在省市都存在时才能计算
|
||||||
|
if (!hasFullScore || !hasSchoolArea || !hasLocation) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
dataForm.confirmedMajor = ""
|
||||||
|
|
||||||
|
// 调用后端接口计算折算分
|
||||||
|
makeCorrectScore({
|
||||||
|
groupId: dataForm.groupId,
|
||||||
|
schoolArea: dataForm.schoolArea,
|
||||||
|
jsOtherCity: dataForm.jsOtherCity,
|
||||||
|
otherProvince: dataForm.otherProvince,
|
||||||
|
fullScore: dataForm.fullScore,
|
||||||
|
score: dataForm.score,
|
||||||
|
degreeOfEducation: dataForm.degreeOfEducation
|
||||||
|
}).then(res => {
|
||||||
|
if (res.code !== 0) {
|
||||||
|
return
|
||||||
}
|
}
|
||||||
const score = (parseFloat(String(dataForm.score)) * parseFloat("700"))
|
|
||||||
dataForm.correctedScore = String(Math.floor(score / parseFloat(String(dataForm.fullScore)) + fjf))
|
dataForm.correctedScore = res.data
|
||||||
// 根据折算分匹配录取专业
|
|
||||||
planMajorList.value.forEach((e: any) => {
|
// 根据折算分匹配录取专业(按志愿顺序:专业1 -> 专业2 -> 专业3)
|
||||||
if (dataForm.correctedScore >= e.scoreLine && e.majorCode == dataForm.wishMajorOne && (parseFloat(e.xyNum) > 0)) {
|
const matchMajorByScore = (majorCode: string) => {
|
||||||
dataForm.confirmedMajor = dataForm.wishMajorOne
|
return planMajorList.value.find((major: any) =>
|
||||||
}
|
dataForm.correctedScore >= major.scoreLine &&
|
||||||
})
|
major.majorCode == majorCode &&
|
||||||
if (dataForm.confirmedMajor == "") {
|
parseFloat(major.xyNum) > 0
|
||||||
planMajorList.value.forEach((e: any) => {
|
)
|
||||||
if (dataForm.correctedScore >= e.scoreLine && e.majorCode == dataForm.wishMajorTwo && (parseFloat(e.xyNum) > 0)) {
|
|
||||||
dataForm.confirmedMajor = dataForm.wishMajorTwo
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (dataForm.confirmedMajor == "") {
|
// 按志愿顺序匹配专业
|
||||||
planMajorList.value.forEach((e: any) => {
|
const matchedMajor = matchMajorByScore(dataForm.wishMajorOne) ||
|
||||||
if (dataForm.correctedScore >= e.scoreLine && e.majorCode == dataForm.wishMajorThree && (parseFloat(e.xyNum) > 0)) {
|
matchMajorByScore(dataForm.wishMajorTwo) ||
|
||||||
dataForm.confirmedMajor = dataForm.wishMajorThree
|
matchMajorByScore(dataForm.wishMajorThree)
|
||||||
}
|
|
||||||
})
|
if (matchedMajor) {
|
||||||
}
|
dataForm.confirmedMajor = matchedMajor.majorCode
|
||||||
if (dataForm.confirmedMajor) {
|
|
||||||
changeConfirmedMajor(dataForm.confirmedMajor)
|
changeConfirmedMajor(dataForm.confirmedMajor)
|
||||||
}
|
}
|
||||||
}
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const changeR = (changeType: number) => {
|
const changeR = (changeType: number) => {
|
||||||
@@ -1282,22 +1321,34 @@ const changeH = (changeType: number) => {
|
|||||||
// 改变录取专业
|
// 改变录取专业
|
||||||
const changeConfirmedMajor = (id: string) => {
|
const changeConfirmedMajor = (id: string) => {
|
||||||
if (id) {
|
if (id) {
|
||||||
let flag = false
|
|
||||||
dataForm.confirmedMajor = id
|
dataForm.confirmedMajor = id
|
||||||
// 是初中生并且是中德班
|
// 根据文化程度和录取专业更新学费
|
||||||
planMajorList.value.forEach((e: any) => {
|
updateTuitionByMajorAndEducation()
|
||||||
if (dataForm.confirmedMajor == e.majorCode && e.isZd == "1" && dataForm.degreeOfEducation == "1") {
|
}
|
||||||
flag = true
|
}
|
||||||
}
|
|
||||||
})
|
// 根据文化程度和录取专业更新学费
|
||||||
if (dataForm.degreeOfEducation == "1") {
|
const updateTuitionByMajorAndEducation = () => {
|
||||||
dataForm.feeTuition = 0
|
if (!dataForm.confirmedMajor || !dataForm.degreeOfEducation) {
|
||||||
tuitionFeeList.value.forEach((e: any) => {
|
return
|
||||||
if (e.label == "0" && flag) {
|
}
|
||||||
dataForm.feeTuition = e.value
|
|
||||||
}
|
// 查找选中的专业
|
||||||
})
|
const selectedMajor = planMajorList.value.find((major: any) => major.majorCode === dataForm.confirmedMajor)
|
||||||
}
|
if (!selectedMajor) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
// 根据文化程度选择对应的学费字段
|
||||||
|
// '1' = 初中 -> czFee
|
||||||
|
// '2' = 高中 -> gzFee
|
||||||
|
// '3' = 技职校 -> jzxFee
|
||||||
|
if (dataForm.degreeOfEducation === '1' && selectedMajor.czFee !== undefined && selectedMajor.czFee !== null) {
|
||||||
|
dataForm.feeTuition = selectedMajor.czFee
|
||||||
|
} else if (dataForm.degreeOfEducation === '2' && selectedMajor.gzFee !== undefined && selectedMajor.gzFee !== null) {
|
||||||
|
dataForm.feeTuition = selectedMajor.gzFee
|
||||||
|
} else if (dataForm.degreeOfEducation === '3' && selectedMajor.jzxFee !== undefined && selectedMajor.jzxFee !== null) {
|
||||||
|
dataForm.feeTuition = selectedMajor.jzxFee
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1362,34 +1413,18 @@ const dataFormSubmit = (state: string) => {
|
|||||||
if (dataForm.id) {
|
if (dataForm.id) {
|
||||||
// 编辑模式
|
// 编辑模式
|
||||||
putObj(dataForm).then(() => {
|
putObj(dataForm).then(() => {
|
||||||
ElNotification.success({
|
message.success('操作成功')
|
||||||
title: '成功',
|
|
||||||
message: '操作成功'
|
|
||||||
})
|
|
||||||
visible.value = false
|
visible.value = false
|
||||||
emit('refreshDataList')
|
emit('refreshDataList')
|
||||||
}).catch((e: any) => {
|
|
||||||
ElNotification.error({
|
|
||||||
title: '错误',
|
|
||||||
message: e || '操作失败'
|
|
||||||
})
|
|
||||||
}).finally(() => {
|
}).finally(() => {
|
||||||
canSubmit.value = true
|
canSubmit.value = true
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
// 新增模式
|
// 新增模式
|
||||||
addObj(dataForm).then(() => {
|
addObj(dataForm).then(() => {
|
||||||
ElNotification.success({
|
message.success('新增成功')
|
||||||
title: '成功',
|
|
||||||
message: '新增成功'
|
|
||||||
})
|
|
||||||
visible.value = false
|
visible.value = false
|
||||||
emit('refreshDataList')
|
emit('refreshDataList')
|
||||||
}).catch((e: any) => {
|
|
||||||
ElNotification.error({
|
|
||||||
title: '错误',
|
|
||||||
message: e || '新增失败'
|
|
||||||
})
|
|
||||||
}).finally(() => {
|
}).finally(() => {
|
||||||
canSubmit.value = true
|
canSubmit.value = true
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -1017,7 +1017,7 @@ const handleFilter = () => {
|
|||||||
|
|
||||||
// 获取数据列表
|
// 获取数据列表
|
||||||
const handleAddData=()=>{
|
const handleAddData=()=>{
|
||||||
addOrUpdateRef.value?.init(null, '1')
|
addOrUpdateRef.value?.init(null, 1)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 新增 / 修改
|
// 新增 / 修改
|
||||||
|
|||||||
Reference in New Issue
Block a user