a
This commit is contained in:
@@ -29,17 +29,17 @@
|
||||
<el-row :gutter="20" class="form-row">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="姓名" prop="name" >
|
||||
<el-input type="text" v-model="dataForm.name" :disabled="type==1 ? false : true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.name" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="曾用名" prop="oldName">
|
||||
<el-input type="text" v-model="dataForm.oldName" :disabled="type==1 ? false : true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.oldName" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="性别" prop="gender">
|
||||
<el-select v-model="dataForm.gender" class="w-full" :disabled="type==2 ? false : true" >
|
||||
<el-select v-model="dataForm.gender" class="w-full" :disabled="!isEdit" >
|
||||
<el-option
|
||||
v-for="item in sexy"
|
||||
:key="item.value"
|
||||
@@ -51,14 +51,14 @@
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="民族" prop="nationality">
|
||||
<el-input type="text" v-model="dataForm.nationality" :disabled="type==1 ? false : true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.nationality" :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="degreeOfEducation">
|
||||
<el-select v-model="dataForm.degreeOfEducation" filterable placeholder="请选择文化程度" class="w-full" :disabled="type==1 ? false : true" @change="changeEducation">
|
||||
<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"
|
||||
@@ -70,7 +70,7 @@
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="是否团员" prop="isLeagueMember">
|
||||
<el-select v-model="dataForm.isLeagueMember" filterable clearable placeholder="请选择是否团员" class="w-full" :disabled="type==1 ? false : true">
|
||||
<el-select v-model="dataForm.isLeagueMember" filterable clearable placeholder="请选择是否团员" class="w-full" :disabled="!isEdit">
|
||||
<el-option
|
||||
v-for="item in yes_no_type"
|
||||
:key="item.value"
|
||||
@@ -82,7 +82,7 @@
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="是否住宿" prop="isAccommodation">
|
||||
<el-select v-model="dataForm.isAccommodation" filterable clearable placeholder="请选择是否住宿" class="w-full" :disabled="type==1 ? false : true">
|
||||
<el-select v-model="dataForm.isAccommodation" filterable clearable placeholder="请选择是否住宿" class="w-full" :disabled="!isEdit">
|
||||
<el-option
|
||||
v-for="item in yes_no_type"
|
||||
:key="item.value"
|
||||
@@ -94,7 +94,7 @@
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="户口性质" prop="residenceType">
|
||||
<el-select v-model="dataForm.residenceType" filterable clearable placeholder="请选择户口性质" class="w-full" :disabled="type==1 ? false : true">
|
||||
<el-select v-model="dataForm.residenceType" filterable clearable placeholder="请选择户口性质" class="w-full" :disabled="!isEdit">
|
||||
<el-option
|
||||
v-for="item in residenceTypeList"
|
||||
:key="item.value"
|
||||
@@ -108,7 +108,7 @@
|
||||
<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="type==1 ? false : true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.schoolOfGraduation" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -130,7 +130,7 @@
|
||||
v-model="dataForm.examRegistrationNumbers"
|
||||
placeholder="准考证号"
|
||||
maxlength="20"
|
||||
:disabled="type==1 ? false : true"
|
||||
:disabled="!isEdit"
|
||||
v-input-filter="'alphanumeric'">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
@@ -142,8 +142,8 @@
|
||||
placeholder="成绩"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
:disabled="type==1 ? false : true"
|
||||
@change="jsZSF">
|
||||
:disabled="!isEdit"
|
||||
@change="calculateCorrectedScore">
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -155,7 +155,7 @@
|
||||
v-model="dataForm.correctedScore"
|
||||
:min="0"
|
||||
:max="1000"
|
||||
:disabled="type==2 ? false : true">
|
||||
disabled>
|
||||
</el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -172,7 +172,7 @@
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="学校归属地" prop="schoolArea">
|
||||
<el-select v-model="dataForm.schoolArea" filterable placeholder="请选择学校归属地" class="w-full" :disabled="type==1 ? false : true" @change="changeFrom">
|
||||
<el-select v-model="dataForm.schoolArea" filterable placeholder="请选择学校归属地" class="w-full" :disabled="!isEdit" @change="changeFrom">
|
||||
<el-option
|
||||
v-for="item in schoolFromList"
|
||||
:key="item.value"
|
||||
@@ -187,7 +187,7 @@
|
||||
<el-col :span="24">
|
||||
<el-form-item label="学校所在省市" prop="jsOtherCity">
|
||||
<el-select v-model="dataForm.jsOtherCity" filterable placeholder="请选择学校所在省市" class="w-full"
|
||||
:disabled="type==1 ? false : true" @change="changeSchoolCode">
|
||||
:disabled="!isEdit" @change="changeSchoolCode">
|
||||
<el-option
|
||||
v-for="item in schoolCodeList"
|
||||
:key="item.regionId"
|
||||
@@ -202,9 +202,9 @@
|
||||
<el-col :span="24">
|
||||
<el-form-item label="外省" prop="otherProvince">
|
||||
<el-select v-model="dataForm.otherProvince" filterable placeholder="请选择学校所在省市" class="w-full"
|
||||
:disabled="type==1 ? false : true" @change="changeSchoolCode">
|
||||
:disabled="!isEdit" @change="changeSchoolCode">
|
||||
<el-option
|
||||
v-for="item in areaHPList"
|
||||
v-for="item in areaHomeProvinceList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
@@ -218,27 +218,27 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="户口所在地" prop="residenceProvince">
|
||||
<div class="address-group">
|
||||
<el-select v-model="dataForm.residenceProvince" filterable clearable placeholder="省" class="address-select" :disabled="type==1 ? false : true" @change="changeR(1)">
|
||||
<el-select v-model="dataForm.residenceProvince" filterable clearable placeholder="省" class="address-select" :disabled="!isEdit" @change="changeR(1)">
|
||||
<el-option
|
||||
v-for="item in areaPList"
|
||||
v-for="item in areaProvinceList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<span class="address-separator">-</span>
|
||||
<el-select v-model="dataForm.residenceCity" filterable clearable placeholder="市" class="address-select" :disabled="type==1 ? false : true" @change="changeR(2)">
|
||||
<el-select v-model="dataForm.residenceCity" filterable clearable placeholder="市" class="address-select" :disabled="!isEdit" @change="changeR(2)">
|
||||
<el-option
|
||||
v-for="item in areaCList"
|
||||
v-for="item in areaCityList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<span class="address-separator">-</span>
|
||||
<el-select v-model="dataForm.residenceArea" filterable clearable placeholder="区/县" class="address-select" :disabled="type==1 ? false : true">
|
||||
<el-select v-model="dataForm.residenceArea" filterable clearable placeholder="区/县" class="address-select" :disabled="!isEdit">
|
||||
<el-option
|
||||
v-for="item in areaAList"
|
||||
v-for="item in areaAreaList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
@@ -249,7 +249,7 @@
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="详细地址" prop="residenceDetail">
|
||||
<el-input type="text" v-model="dataForm.residenceDetail" placeholder="请输入详细地址" :disabled="type==1 ? false : true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.residenceDetail" placeholder="请输入详细地址" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -258,27 +258,27 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="家庭地址" prop="homeAddressProvince">
|
||||
<div class="address-group">
|
||||
<el-select v-model="dataForm.homeAddressProvince" filterable clearable placeholder="省" class="address-select" :disabled="type==1 ? false : true" @change="changeH(1)">
|
||||
<el-select v-model="dataForm.homeAddressProvince" filterable clearable placeholder="省" class="address-select" :disabled="!isEdit" @change="changeH(1)">
|
||||
<el-option
|
||||
v-for="item in areaHPList"
|
||||
v-for="item in areaHomeProvinceList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<span class="address-separator">-</span>
|
||||
<el-select v-model="dataForm.homeAddressCity" filterable clearable placeholder="市" class="address-select" :disabled="type==1 ? false : true" @change="changeH(2)">
|
||||
<el-select v-model="dataForm.homeAddressCity" filterable clearable placeholder="市" class="address-select" :disabled="!isEdit" @change="changeH(2)">
|
||||
<el-option
|
||||
v-for="item in areaHCList"
|
||||
v-for="item in areaHomeCityList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<span class="address-separator">-</span>
|
||||
<el-select v-model="dataForm.homeAddressArea" filterable clearable placeholder="区/县" class="address-select" :disabled="type==1 ? false : true">
|
||||
<el-select v-model="dataForm.homeAddressArea" filterable clearable placeholder="区/县" class="address-select" :disabled="!isEdit">
|
||||
<el-option
|
||||
v-for="item in areaHAList"
|
||||
v-for="item in areaHomeAreaList"
|
||||
:key="item.code"
|
||||
:label="item.name"
|
||||
:value="item.code">
|
||||
@@ -289,14 +289,14 @@
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="详细地址" prop="homeAddressDetail">
|
||||
<el-input type="text" v-model="dataForm.homeAddressDetail" placeholder="请输入详细地址" :disabled="type==1 ? false : true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.homeAddressDetail" placeholder="请输入详细地址" :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="parentName">
|
||||
<el-input type="text" v-model="dataForm.parentName" :disabled="type==1 ? false : true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.parentName" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
@@ -306,7 +306,7 @@
|
||||
type="tel"
|
||||
placeholder="家长手机"
|
||||
maxlength="11"
|
||||
:disabled="type==1 ? false : true"
|
||||
:disabled="!isEdit"
|
||||
v-input-filter="'number'">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
@@ -317,7 +317,7 @@
|
||||
v-model="dataForm.parentTelTwo"
|
||||
placeholder="家长固话"
|
||||
maxlength="20"
|
||||
:disabled="type==1 ? false : true"
|
||||
:disabled="!isEdit"
|
||||
v-input-filter="'tel'">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
@@ -329,7 +329,7 @@
|
||||
type="tel"
|
||||
placeholder="本人联系电话"
|
||||
maxlength="11"
|
||||
:disabled="type==1 ? false : true"
|
||||
:disabled="!isEdit"
|
||||
v-input-filter="'number'">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
@@ -381,7 +381,7 @@
|
||||
<el-row :gutter="20" class="form-row">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="录取专业" prop="confirmedMajor">
|
||||
<el-select v-model="dataForm.confirmedMajor" filterable clearable placeholder="" class="w-full" :disabled="type==1 ? false : true" @change="changeM(dataForm.confirmedMajor)">
|
||||
<el-select v-model="dataForm.confirmedMajor" filterable clearable placeholder="" class="w-full" :disabled="!isEdit" @change="changeConfirmedMajor(dataForm.confirmedMajor)">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.majorCode"
|
||||
@@ -392,10 +392,10 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-if="type==0 ? false : true" :gutter="20" class="form-row">
|
||||
<el-row v-if="isEdit" :gutter="20" class="form-row">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="两年制专业" prop="twoMajor" v-if="twoMajorList.length>0">
|
||||
<el-select v-model="dataForm.twoMajor" filterable clearable placeholder="" class="w-full" @change="changeM(dataForm.twoMajor)">
|
||||
<el-select v-model="dataForm.twoMajor" filterable clearable placeholder="" class="w-full" @change="changeConfirmedMajor(dataForm.twoMajor)">
|
||||
<el-option
|
||||
v-for="item in twoMajorList"
|
||||
:key="item.majorCode"
|
||||
@@ -405,7 +405,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="三年制专业" prop="threeMajor" v-if="threeMajorList.length>0">
|
||||
<el-select v-model="dataForm.threeMajor" filterable clearable placeholder="" class="w-full" @change="changeM(dataForm.threeMajor)">
|
||||
<el-select v-model="dataForm.threeMajor" filterable clearable placeholder="" class="w-full" @change="changeConfirmedMajor(dataForm.threeMajor)">
|
||||
<el-option
|
||||
v-for="item in threeMajorList"
|
||||
:key="item.majorCode"
|
||||
@@ -415,7 +415,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="四年制专业" prop="fourMajor" v-if="fourMajorList.length>0">
|
||||
<el-select v-model="dataForm.fourMajor" filterable clearable placeholder="" class="w-full" @change="changeM(dataForm.fourMajor)">
|
||||
<el-select v-model="dataForm.fourMajor" filterable clearable placeholder="" class="w-full" @change="changeConfirmedMajor(dataForm.fourMajor)">
|
||||
<el-option
|
||||
v-for="item in fourMajorList"
|
||||
:key="item.majorCode"
|
||||
@@ -425,7 +425,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="五年制专业" prop="fiveMajor" v-if="fiveMajorList.length>0">
|
||||
<el-select v-model="dataForm.fiveMajor" filterable clearable placeholder="" class="w-full" @change="changeM(dataForm.fiveMajor)">
|
||||
<el-select v-model="dataForm.fiveMajor" filterable clearable placeholder="" class="w-full" @change="changeConfirmedMajor(dataForm.fiveMajor)">
|
||||
<el-option
|
||||
v-for="item in fiveMajorList"
|
||||
:key="item.majorCode"
|
||||
@@ -435,7 +435,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="六年制专业" prop="sixMajor" v-if="sixMajorList.length>0">
|
||||
<el-select v-model="dataForm.sixMajor" filterable clearable placeholder="" class="w-full" @change="changeM(dataForm.sixMajor)">
|
||||
<el-select v-model="dataForm.sixMajor" filterable clearable placeholder="" class="w-full" @change="changeConfirmedMajor(dataForm.sixMajor)">
|
||||
<el-option
|
||||
v-for="item in sixMajorList"
|
||||
:key="item.majorCode"
|
||||
@@ -445,7 +445,7 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="七年制专业" prop="sevenMajor" v-if="sevenMajorList.length>0">
|
||||
<el-select v-model="dataForm.sevenMajor" filterable clearable placeholder="" class="w-full" @change="changeM(dataForm.sevenMajor)">
|
||||
<el-select v-model="dataForm.sevenMajor" filterable clearable placeholder="" class="w-full" @change="changeConfirmedMajor(dataForm.sevenMajor)">
|
||||
<el-option
|
||||
v-for="item in sevenMajorList"
|
||||
:key="item.majorCode"
|
||||
@@ -460,12 +460,12 @@
|
||||
<el-row :gutter="20" class="form-row">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="学费" prop="feeTuition">
|
||||
<el-input-number v-model="dataForm.feeTuition" controls-position="right" :min="0" :max="999999" :step-strictly="true" :disabled="type==2?false:true" class="w-full"></el-input-number>
|
||||
<el-input-number v-model="dataForm.feeTuition" controls-position="right" :min="0" :max="999999" :step-strictly="true" disabled class="w-full"></el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<el-form-item label="代办费" prop="feeAgency">
|
||||
<el-input-number v-model="dataForm.feeAgency" controls-position="right" :min="0" :max="999999" :step-strictly="true" :disabled="type==2?false:true" class="w-full"></el-input-number>
|
||||
<el-input-number v-model="dataForm.feeAgency" controls-position="right" :min="0" :max="999999" :step-strictly="true" disabled class="w-full"></el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
@@ -585,7 +585,7 @@
|
||||
<el-row :gutter="20" class="form-row">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="联系人" prop="contactName">
|
||||
<el-select v-model="dataForm.contactName" filterable clearable placeholder="请选择联系人" class="w-full" :disabled="type==1?false:true">
|
||||
<el-select v-model="dataForm.contactName" filterable clearable placeholder="请选择联系人" class="w-full" :disabled="!isEdit">
|
||||
<el-option
|
||||
v-for="item in contactNameList"
|
||||
:key="item.teacherNo"
|
||||
@@ -597,12 +597,12 @@
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="原序号" prop="oldSerialNumber">
|
||||
<el-input type="text" v-model="dataForm.oldSerialNumber" :disabled="type==1?false:true"></el-input>
|
||||
<el-input type="text" v-model="dataForm.oldSerialNumber" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="8">
|
||||
<el-form-item label="辨色力" prop="colorDiscrimination">
|
||||
<el-select v-model="dataForm.colorDiscrimination" filterable clearable placeholder="请选择辨色力" class="w-full" :disabled="type==1?false:true">
|
||||
<el-select v-model="dataForm.colorDiscrimination" filterable clearable placeholder="请选择辨色力" class="w-full" :disabled="!isEdit">
|
||||
<el-option
|
||||
v-for="item in color_discrimination"
|
||||
:key="item.value"
|
||||
@@ -616,30 +616,30 @@
|
||||
<el-row :gutter="20" class="form-row">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="既往病史" prop="pastMedicalHistory">
|
||||
<el-input type="textarea" v-model="dataForm.pastMedicalHistory" placeholder="请输入既往病史" :rows="2" :disabled="type==1?false:true"></el-input>
|
||||
<el-input type="textarea" v-model="dataForm.pastMedicalHistory" placeholder="请输入既往病史" :rows="2" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20" class="form-row">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="备注" prop="remarks">
|
||||
<el-input type="textarea" v-model="dataForm.remarks" placeholder="备注" :rows="2" :disabled="type==1?false:true"></el-input>
|
||||
<el-input type="textarea" v-model="dataForm.remarks" placeholder="备注" :rows="2" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</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="type==1?false:true"></el-input>
|
||||
<el-input type="textarea" v-model="dataForm.auditRemarks" placeholder="审核备注" :rows="2" :disabled="!isEdit"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</div>
|
||||
</el-form>
|
||||
<template #footer v-if="type==1">
|
||||
<template #footer v-if="isEdit">
|
||||
<div class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit(20)" v-auth="'recruit_recruitstudentsignup_add'" v-if="canSubmit&&!dataForm.id">保存并送审</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit('20')" v-auth="'recruit_recruitstudentsignup_add'" v-if="canSubmit&&!dataForm.id">保存并送审</el-button>
|
||||
|
||||
<el-button type="primary" @click="dataFormSubmit" v-auth="'signup_info_exam'" v-if="canSubmit&&dataForm.id">保存</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit('20')" v-auth="'signup_info_exam'" v-if="canSubmit&&dataForm.id">确认录取</el-button>
|
||||
@@ -655,16 +655,15 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref, reactive, nextTick } from 'vue'
|
||||
import { ref, reactive, nextTick, watch, computed } from 'vue'
|
||||
import { ElNotification } from 'element-plus'
|
||||
import { Picture } from '@element-plus/icons-vue'
|
||||
import { useMessageBox } from '/@/hooks/message'
|
||||
import { getObj, putObj } from '/@/api/recruit/recruitstudentsignup'
|
||||
import { getObj, putObj, addObj } from '/@/api/recruit/recruitstudentsignup'
|
||||
import { list as listByGroupId } from '/@/api/recruit/recruitstudentschool'
|
||||
import { getDeptList } from "/@/api/basic/basicclass"
|
||||
import { getList } from "/@/api/recruit/recruitstudentplangroup"
|
||||
import { listByEdu } from "/@/api/recruit/recruitstudentplan"
|
||||
import { getDicts, getDictsByTypes } from "/@/api/admin/dict"
|
||||
import { getDictsByTypes } from "/@/api/admin/dict"
|
||||
import { useDict } from '/@/hooks/dict'
|
||||
import { areaList, areaSonList } from "/@/api/recruit/recruitstudentschool"
|
||||
import { list as scoreList } from "/@/api/recruit/recruitstudentplancorrectscoreconfig"
|
||||
@@ -692,20 +691,24 @@ const eduList = ref<any[]>([])
|
||||
const imgList = ref<string[]>([])
|
||||
const type = ref<number | null>(null)
|
||||
const isShow = ref(false)
|
||||
const residenceTypeList = [{ label: "农村", value: "1" }, { label: "城市", value: "2" }]
|
||||
const nutritionList = [{ label: "优", value: "1" }, { label: "良", value: "2" }, { label: "一般", value: "3" }, { label: "差", value: "4" }]
|
||||
|
||||
// 计算属性:判断是否为编辑模式
|
||||
const isEdit = computed(() => {
|
||||
console.log(type.value)
|
||||
return type.value === 1
|
||||
})
|
||||
// 户口性质
|
||||
const residenceTypeList = ref<any[]>([])
|
||||
const schoolCodeList = ref<any[]>([])
|
||||
const contactNameList = ref<any[]>([])
|
||||
const planList = ref<any[]>([])
|
||||
const planMajorList = ref<any[]>([])
|
||||
const areaListData = ref<any[]>([])
|
||||
const areaPList = ref<any[]>([])
|
||||
const areaCList = ref<any[]>([])
|
||||
const areaAList = ref<any[]>([])
|
||||
const areaHPList = ref<any[]>([])
|
||||
const areaHCList = ref<any[]>([])
|
||||
const areaHAList = ref<any[]>([])
|
||||
const deptList = ref<any[]>([])
|
||||
const areaProvinceList = ref<any[]>([])
|
||||
const areaCityList = ref<any[]>([])
|
||||
const areaAreaList = ref<any[]>([])
|
||||
const areaHomeProvinceList = ref<any[]>([])
|
||||
const areaHomeCityList = ref<any[]>([])
|
||||
const areaHomeAreaList = ref<any[]>([])
|
||||
const dialogImageUrl = ref("")
|
||||
const dialogUploadVisible = ref(false)
|
||||
const sevenMajorList = ref<any[]>([])
|
||||
@@ -716,7 +719,7 @@ const threeMajorList = ref<any[]>([])
|
||||
const twoMajorList = ref<any[]>([])
|
||||
const agencyFeeList = ref<any[]>([])
|
||||
const tuitionFeeList = ref<any[]>([])
|
||||
const schoolFromList = [{ label: "本省外市", value: "2" }, { label: "外省外市", value: "3" }]
|
||||
const schoolFromList = ref<any[]>([])
|
||||
|
||||
const dataForm = reactive({
|
||||
id: "",
|
||||
@@ -908,23 +911,37 @@ const init = (id: string | null, typeParam: number) => {
|
||||
isShow.value = true
|
||||
nextTick(() => {
|
||||
dataFormRef.value?.resetFields()
|
||||
getDicts('finance_student_source').then((res: any) => {
|
||||
eduList.value = res.data || []
|
||||
})
|
||||
if (dataForm.id) {
|
||||
areaPList.value = []
|
||||
areaCList.value = []
|
||||
areaAList.value = []
|
||||
areaHPList.value = []
|
||||
areaHCList.value = []
|
||||
areaHAList.value = []
|
||||
// 批量获取数据字典(并行获取,提高性能)
|
||||
getDictsByTypes(['finance_student_source', 'agency_fee', 'tuition_fee']).then((res: any) => {
|
||||
eduList.value = res.data.finance_student_source || []
|
||||
agencyFeeList.value = res.data.agency_fee || []
|
||||
tuitionFeeList.value = res.data.tuition_fee || []
|
||||
// 获取表单数据
|
||||
getObj(dataForm.id).then((response: any) => {
|
||||
// 初始化地区数据
|
||||
areaProvinceList.value = []
|
||||
areaCityList.value = []
|
||||
areaAreaList.value = []
|
||||
// 家庭地址数据
|
||||
areaHomeProvinceList.value = []
|
||||
areaHomeCityList.value = []
|
||||
areaHomeAreaList.value = []
|
||||
|
||||
// 批量获取数据字典(新增和编辑都需要) 文化程度 学费 代办费 户口性质 学校归属地
|
||||
getDictsByTypes(['finance_student_source', 'agency_fee', 'tuition_fee','house_hold_properties','recruit_school_form']).then((res: any) => {
|
||||
eduList.value = res.data.finance_student_source || []
|
||||
agencyFeeList.value = res.data.agency_fee || []
|
||||
tuitionFeeList.value = res.data.tuition_fee || []
|
||||
residenceTypeList.value = res.data.house_hold_properties || []
|
||||
schoolFromList.value = res.data.recruit_school_form || []
|
||||
// 加载地区数据(新增和编辑都需要)
|
||||
areaList({ type: 0 }).then((data: any) => {
|
||||
const areas = data.data
|
||||
// 加载省级数据
|
||||
areas.forEach((e: any) => {
|
||||
if (e.parentId == '1') {
|
||||
areaProvinceList.value.push(e)
|
||||
areaHomeProvinceList.value.push(e)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
if (dataForm.id) {
|
||||
// 编辑模式:获取表单数据
|
||||
getObj(dataForm.id).then((response: any) => {
|
||||
Object.assign(dataForm, response.data)
|
||||
dataForm.scorePhotoList = []
|
||||
dataForm.graPicList = []
|
||||
@@ -974,7 +991,8 @@ const init = (id: string | null, typeParam: number) => {
|
||||
listByEdu({ groupId: dataForm.groupId, degreeOfEducation: dataForm.degreeOfEducation }).then((e: any) => {
|
||||
planMajorList.value = e.data
|
||||
if (1 != Number(dataForm.degreeOfEducation)) {
|
||||
gzAuditChange()
|
||||
// 如果学历不是初中生,则根据折算分匹配录取专业
|
||||
getGzAuditChange()
|
||||
}
|
||||
// 根据年制分组
|
||||
planMajorList.value.forEach((item: any) => {
|
||||
@@ -997,64 +1015,29 @@ const init = (id: string | null, typeParam: number) => {
|
||||
scoreList({ groupId: dataForm.groupId }).then((data: any) => {
|
||||
schoolCodeList.value = data.data
|
||||
})
|
||||
let areas: any[] = []
|
||||
// 获取户口所在 省市区
|
||||
areaList({ type: 0 }).then((data: any) => {
|
||||
areas = data.data
|
||||
// 省
|
||||
let pid = ""
|
||||
areas.forEach((e: any) => {
|
||||
if (e.parentId == '1') {
|
||||
areaPList.value.push(e)
|
||||
if (e.code == dataForm.residenceProvince) {
|
||||
pid = e.id
|
||||
}
|
||||
|
||||
// 根据已有数据加载市区数据
|
||||
if (dataForm.residenceProvince) {
|
||||
areaSonList({ code: dataForm.residenceProvince }).then((data: any) => {
|
||||
areaCityList.value = data.data
|
||||
if (dataForm.residenceCity) {
|
||||
areaSonList({ code: dataForm.residenceCity }).then((data: any) => {
|
||||
areaAreaList.value = data.data
|
||||
})
|
||||
}
|
||||
})
|
||||
// 市
|
||||
let cid = ""
|
||||
areas.forEach((e: any) => {
|
||||
if (e.parentId == pid) {
|
||||
areaCList.value.push(e)
|
||||
if (e.code == dataForm.residenceCity) {
|
||||
cid = e.id
|
||||
}
|
||||
}
|
||||
|
||||
if (dataForm.homeAddressProvince) {
|
||||
areaSonList({ code: dataForm.homeAddressProvince }).then((data: any) => {
|
||||
areaHomeCityList.value = data.data
|
||||
if (dataForm.homeAddressCity) {
|
||||
areaSonList({ code: dataForm.homeAddressCity }).then((data: any) => {
|
||||
areaHomeAreaList.value = data.data
|
||||
})
|
||||
}
|
||||
})
|
||||
// 区
|
||||
areas.forEach((e: any) => {
|
||||
if (e.parentId == cid) {
|
||||
areaAList.value.push(e)
|
||||
}
|
||||
})
|
||||
|
||||
// 省
|
||||
let hpid = ""
|
||||
areas.forEach((e: any) => {
|
||||
if (e.parentId == '1') {
|
||||
areaHPList.value.push(e)
|
||||
if (e.code == dataForm.homeAddressProvince) {
|
||||
hpid = e.id
|
||||
}
|
||||
}
|
||||
})
|
||||
// 市
|
||||
let hcid = ""
|
||||
areas.forEach((e: any) => {
|
||||
if (e.parentId == hpid) {
|
||||
areaHCList.value.push(e)
|
||||
if (e.code == dataForm.homeAddressCity) {
|
||||
hcid = e.id
|
||||
}
|
||||
}
|
||||
})
|
||||
// 区
|
||||
areas.forEach((e: any) => {
|
||||
if (e.parentId == hcid) {
|
||||
areaHAList.value.push(e)
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
if ("1" == String(dataForm.degreeOfEducation)) {
|
||||
title.value = "C" + title.value
|
||||
} else if ("2" == String(dataForm.degreeOfEducation)) {
|
||||
@@ -1071,8 +1054,11 @@ const init = (id: string | null, typeParam: number) => {
|
||||
title.value = "已录取 " + title.value
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
} else {
|
||||
// 新增模式:设置默认标题
|
||||
title.value = "新增报名信息"
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
@@ -1092,7 +1078,7 @@ const changeEducation = () => {
|
||||
dataForm.feeTuition = 0
|
||||
dataForm.feeAgency = 0
|
||||
|
||||
// 重新根据学历 获取学费和代办费
|
||||
// 重新根据学历 获取学费 和 代办费
|
||||
agencyFeeList.value.forEach((e: any) => {
|
||||
if (dataForm.degreeOfEducation == e.label) {
|
||||
dataForm.feeAgency = e.value
|
||||
@@ -1111,10 +1097,11 @@ const changeEducation = () => {
|
||||
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)) {
|
||||
gzAuditChange()
|
||||
getGzAuditChange()
|
||||
}
|
||||
// 根据年制分组
|
||||
planMajorList.value.forEach((item: any) => {
|
||||
@@ -1146,10 +1133,7 @@ const initData = () => {
|
||||
queryAllTeacher().then((res: any) => {
|
||||
contactNameList.value = res.data
|
||||
})
|
||||
// 查询二级学院信息
|
||||
getDeptList().then((data: any) => {
|
||||
deptList.value = data.data
|
||||
})
|
||||
// 获取招生计划列表
|
||||
getList().then((data: any) => {
|
||||
planList.value = data.data
|
||||
})
|
||||
@@ -1181,15 +1165,15 @@ const changeSchoolCode = () => {
|
||||
}
|
||||
|
||||
dataForm.correctedScore = 0
|
||||
jsZSF()
|
||||
calculateCorrectedScore()
|
||||
}
|
||||
|
||||
const changePlaceScore = () => {
|
||||
jsZSF()
|
||||
calculateCorrectedScore()
|
||||
}
|
||||
|
||||
const gzAuditChange = () => {
|
||||
if (type.value != 0 && (dataForm.confirmedMajor == undefined || dataForm.confirmedMajor == "")) {
|
||||
const getGzAuditChange = () => {
|
||||
if (isEdit.value && (dataForm.confirmedMajor == undefined || dataForm.confirmedMajor == "")) {
|
||||
// 根据折算分匹配录取专业
|
||||
planMajorList.value.forEach((e: any) => {
|
||||
if (e.majorCode == dataForm.wishMajorOne && (parseFloat(e.xyNum) > 0)) {
|
||||
@@ -1214,7 +1198,8 @@ const gzAuditChange = () => {
|
||||
}
|
||||
}
|
||||
|
||||
const jsZSF = () => {
|
||||
// 计算成绩折算分
|
||||
const calculateCorrectedScore = () => {
|
||||
if (dataForm.score != undefined && dataForm.fullScore != undefined && dataForm.correctedScore != undefined && !isNaN(Number(dataForm.correctedScore))) {
|
||||
dataForm.confirmedMajor = ""
|
||||
let fjf = 20
|
||||
@@ -1246,52 +1231,57 @@ const jsZSF = () => {
|
||||
})
|
||||
}
|
||||
if (dataForm.confirmedMajor) {
|
||||
changeM(dataForm.confirmedMajor)
|
||||
changeConfirmedMajor(dataForm.confirmedMajor)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
const changeR = (changeType: number) => {
|
||||
let code = ""
|
||||
areaAList.value = []
|
||||
// 清空区数据
|
||||
areaAreaList.value = []
|
||||
dataForm.residenceArea = ""
|
||||
if (changeType == 1) {
|
||||
// 选择省份时,清空市和区数据
|
||||
code = dataForm.residenceProvince
|
||||
areaCList.value = []
|
||||
areaCityList.value = []
|
||||
dataForm.residenceCity = ""
|
||||
} else {
|
||||
// 选择市时
|
||||
code = dataForm.residenceCity
|
||||
}
|
||||
// 获取市或区数据
|
||||
areaSonList({ code: code }).then((data: any) => {
|
||||
if (changeType == 1) {
|
||||
areaCList.value = data.data
|
||||
areaCityList.value = data.data
|
||||
} else {
|
||||
areaAList.value = data.data
|
||||
areaAreaList.value = data.data
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const changeH = (changeType: number) => {
|
||||
let code = ""
|
||||
areaHAList.value = []
|
||||
areaHomeAreaList.value = []
|
||||
dataForm.homeAddressArea = ""
|
||||
if (changeType == 1) {
|
||||
code = dataForm.homeAddressProvince
|
||||
areaHCList.value = []
|
||||
areaHomeCityList.value = []
|
||||
dataForm.homeAddressCity = ""
|
||||
} else {
|
||||
code = dataForm.homeAddressCity
|
||||
}
|
||||
areaSonList({ code: code }).then((data: any) => {
|
||||
if (changeType == 1) {
|
||||
areaHCList.value = data.data
|
||||
areaHomeCityList.value = data.data
|
||||
} else {
|
||||
areaHAList.value = data.data
|
||||
areaHomeAreaList.value = data.data
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const changeM = (id: string) => {
|
||||
// 改变录取专业
|
||||
const changeConfirmedMajor = (id: string) => {
|
||||
if (id) {
|
||||
let flag = false
|
||||
dataForm.confirmedMajor = id
|
||||
@@ -1316,16 +1306,23 @@ const changeM = (id: string) => {
|
||||
const dataFormSubmit = (state: string) => {
|
||||
dataForm.auditStatus = state
|
||||
let submitTitle = "确认通过该学生的报名申请么?"
|
||||
if(state){
|
||||
if (state == "-20") {
|
||||
submitTitle = "确认驳回该学生的报名申请么?"
|
||||
} else {
|
||||
if (!dataForm.confirmedMajor) {
|
||||
ElNotification.error({
|
||||
title: '错误',
|
||||
message: '请选择录取专业'
|
||||
})
|
||||
return
|
||||
|
||||
// 新增模式
|
||||
if (!dataForm.id) {
|
||||
submitTitle = "确认保存并提交该学生的报名信息么?"
|
||||
} else {
|
||||
// 编辑模式
|
||||
if(state){
|
||||
if (state == "-20") {
|
||||
submitTitle = "确认驳回该学生的报名申请么?"
|
||||
} else {
|
||||
if (!dataForm.confirmedMajor) {
|
||||
ElNotification.error({
|
||||
title: '错误',
|
||||
message: '请选择录取专业'
|
||||
})
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1359,11 +1356,12 @@ const dataFormSubmit = (state: string) => {
|
||||
return
|
||||
}
|
||||
|
||||
messageBox.confirm(submitTitle, '提示').then(() => {
|
||||
messageBox.confirm(submitTitle).then(() => {
|
||||
dataFormRef.value?.validate((valid: boolean) => {
|
||||
if (valid) {
|
||||
canSubmit.value = false
|
||||
if (dataForm.id) {
|
||||
// 编辑模式
|
||||
putObj(dataForm).then(() => {
|
||||
ElNotification.success({
|
||||
title: '成功',
|
||||
@@ -1380,7 +1378,22 @@ const dataFormSubmit = (state: string) => {
|
||||
canSubmit.value = true
|
||||
})
|
||||
} else {
|
||||
canSubmit.value = true
|
||||
// 新增模式
|
||||
addObj(dataForm).then(() => {
|
||||
ElNotification.success({
|
||||
title: '成功',
|
||||
message: '新增成功'
|
||||
})
|
||||
visible.value = false
|
||||
emit('refreshDataList')
|
||||
}).catch((e: any) => {
|
||||
ElNotification.error({
|
||||
title: '错误',
|
||||
message: e || '新增失败'
|
||||
})
|
||||
}).finally(() => {
|
||||
canSubmit.value = true
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -1389,6 +1402,16 @@ const dataFormSubmit = (state: string) => {
|
||||
})
|
||||
}
|
||||
|
||||
// 监听招生计划变化(新增模式下需要加载分数线数据)
|
||||
watch(() => dataForm.groupId, (newVal) => {
|
||||
if (newVal && !dataForm.id) {
|
||||
// 新增模式下,加载招生计划对应的分数线数据
|
||||
scoreList({ groupId: newVal }).then((data: any) => {
|
||||
schoolCodeList.value = data.data
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
// 暴露方法给父组件
|
||||
defineExpose({
|
||||
init
|
||||
|
||||
Reference in New Issue
Block a user