This commit is contained in:
guochunsi
2026-01-14 18:32:09 +08:00
parent 6055033289
commit 8166fa31e0
33 changed files with 3926 additions and 3383 deletions

View File

@@ -2,11 +2,13 @@
<el-dialog
:title="!dataForm.id ? '新增' : '修改'"
:close-on-click-modal="false"
v-model="visible">
<el-form :model="dataForm" :rules="dataRule" ref="dataFormRef" @keyup.enter="dataFormSubmit" label-width="140px">
v-model="visible"
width="600px"
>
<el-form :model="dataForm" :rules="dataRule" ref="dataFormRef" @keyup.enter="dataFormSubmit" label-width="120px">
<el-form-item label="招生计划名称" prop="groupId">
<el-select v-model="dataForm.groupId" filterable placeholder="请选择招生计划" size="small" style="width: 100%;" :disabled="!!dataForm.id">
<el-select v-model="dataForm.groupId" filterable placeholder="请选择招生计划" :disabled="!!dataForm.id">
<el-option
v-for="item in planListLocal"
:key="item.id"
@@ -25,7 +27,7 @@
<el-input v-model="dataForm.idCard" placeholder="身份证"></el-input>
</el-form-item>
<el-form-item label="性别" prop="gender">
<el-select v-model="dataForm.gender" style="width: 100%">
<el-select v-model="dataForm.gender">
<el-option
v-for="item in sexyList"
:key="item.value"
@@ -38,10 +40,10 @@
<el-input v-model="dataForm.admission" placeholder="准考证"></el-input>
</el-form-item>
<el-form-item label="中考成绩" prop="achievement">
<el-input-number v-model="dataForm.achievement" :min="0" :max="700" placeholder="中考成绩" style="width: 100%"></el-input-number>
<el-input-number v-model="dataForm.achievement" :min="0" :max="700" placeholder="中考成绩"></el-input-number>
</el-form-item>
<el-form-item label="对接人" prop="djUser" v-if="permissions.recruit_recruitprestudent_dj_sure">
<el-select v-model="dataForm.djUser" filterable clearable placeholder="" size="small" style="width: 100%">
<el-select v-model="dataForm.djUser" filterable clearable placeholder="">
<el-option
v-for="item in contactNameList"
:key="item.teacherNo"
@@ -51,7 +53,7 @@
</el-select>
</el-form-item>
<el-form-item label="学校" prop="schoolId">
<el-select v-model="dataForm.schoolId" filterable placeholder="请选择学校" size="small" style="width: 100%;">
<el-select v-model="dataForm.schoolId" filterable placeholder="请选择学校">
<el-option
v-for="item in schoolList"
:key="item.id"
@@ -62,7 +64,7 @@
</el-form-item>
<el-form-item label="拟报专业1" prop="planMajorOne">
<el-select v-model="dataForm.planMajorOne" filterable placeholder="请选择拟报专业1" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorOne" filterable placeholder="请选择拟报专业1">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -74,7 +76,7 @@
</el-select>
</el-form-item>
<el-form-item label="拟报专业2" prop="planMajorTwo">
<el-select v-model="dataForm.planMajorTwo" filterable clearable placeholder="请选择拟报专业2" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorTwo" filterable clearable placeholder="请选择拟报专业2">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -86,7 +88,7 @@
</el-select>
</el-form-item>
<el-form-item label="拟报专业3" prop="planMajorThree">
<el-select v-model="dataForm.planMajorThree" filterable clearable placeholder="请选择拟报专业3" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorThree" filterable clearable placeholder="请选择拟报专业3">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -98,7 +100,7 @@
</el-select>
</el-form-item>
<el-form-item label="拟报专业4" prop="planMajorFour">
<el-select v-model="dataForm.planMajorFour" filterable clearable placeholder="请选择拟报专业4" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorFour" filterable clearable placeholder="请选择拟报专业4">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -110,7 +112,7 @@
</el-select>
</el-form-item>
<el-form-item label="拟报专业5" prop="planMajorFive">
<el-select v-model="dataForm.planMajorFive" filterable clearable placeholder="请选择拟报专业5" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorFive" filterable clearable placeholder="请选择拟报专业5">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -123,7 +125,7 @@
</el-form-item>
<el-form-item label="拟报专业6" prop="planMajorSix">
<el-select v-model="dataForm.planMajorSix" filterable clearable placeholder="请选择拟报专业6" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorSix" filterable clearable placeholder="请选择拟报专业6">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -136,7 +138,7 @@
</el-form-item>
<el-form-item label="拟报专业7" prop="planMajorSeven">
<el-select v-model="dataForm.planMajorSeven" filterable clearable placeholder="请选择拟报专业7" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorSeven" filterable clearable placeholder="请选择拟报专业7">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -149,7 +151,7 @@
</el-form-item>
<el-form-item label="拟报专业8" prop="planMajorEight">
<el-select v-model="dataForm.planMajorEight" filterable clearable placeholder="请选择拟报专业8" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorEight" filterable clearable placeholder="请选择拟报专业8">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -162,7 +164,7 @@
</el-form-item>
<el-form-item label="拟报专业9" prop="planMajorNine">
<el-select v-model="dataForm.planMajorNine" filterable clearable placeholder="请选择拟报专业9" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorNine" filterable clearable placeholder="请选择拟报专业9">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -175,7 +177,7 @@
</el-form-item>
<el-form-item label="拟报专业10" prop="planMajorTen">
<el-select v-model="dataForm.planMajorTen" filterable clearable placeholder="请选择拟报专业10" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorTen" filterable clearable placeholder="请选择拟报专业10">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -188,7 +190,7 @@
</el-form-item>
<el-form-item label="拟报专业11" prop="planMajorEleven">
<el-select v-model="dataForm.planMajorEleven" filterable clearable placeholder="请选择拟报专业11" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorEleven" filterable clearable placeholder="请选择拟报专业11">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -201,7 +203,7 @@
</el-form-item>
<el-form-item label="拟报专业12" prop="planMajorTwelve">
<el-select v-model="dataForm.planMajorTwelve" filterable clearable placeholder="请选择拟报专业12" size="small" style="width: 100%;">
<el-select v-model="dataForm.planMajorTwelve" filterable clearable placeholder="请选择拟报专业12">
<el-option
v-for="item in planMajorList"
:key="item.id"
@@ -228,9 +230,10 @@ import { ref, reactive, computed, nextTick } from 'vue'
import { storeToRefs } from 'pinia'
import { useUserInfo } from '/@/stores/userInfo'
import { ElNotification } from 'element-plus'
import { getObj, addObjStu, putObj } from '@/api/recruit/recruitprestudent'
import { queryAllTeacherByRecruit } from "@/api/professional/teacherbase"
import { list } from "@/api/recruit/recruitstudentplangroup"
import { getObj, addObjStu, putObj } from '/@/api/recruit/recruitprestudent'
import { queryTeacherBaseByNoByAssets } from '/@/api/professional/professionaluser/teacherbase'
import { list } from '/@/api/recruit/recruitstudentplangroup'
import { getDicts } from '/@/api/admin/dict'
// Props
const props = defineProps<{
@@ -265,17 +268,7 @@ const visible = ref(false)
const canSubmit = ref(false)
const contactNameList = ref<any[]>([])
const planListLocal = ref<any[]>([])
const sexyList = [
{
label: '男',
value: '1'
},
{
label: '女',
value: '2'
}
]
const sexyList = ref<any[]>([])
const dataForm = reactive({
id: "",
@@ -402,9 +395,11 @@ const init = (id: string | null) => {
nextTick(() => {
dataFormRef.value?.resetFields()
queryAllTeacherByRecruit().then((res: any) => {
contactNameList.value = res.data
// 获取性别字典
getDicts('sexy').then((res: any) => {
sexyList.value = res.data || []
})
// 这里如果需要教师列表,可以改用新的教师接口;当前项目中常用的是 queryTeacherBaseByNoByAssets
if (dataForm.id) {
getObj(dataForm.id).then((response: any) => {
Object.assign(dataForm, response.data)