a
This commit is contained in:
@@ -3,217 +3,268 @@
|
||||
:title="!dataForm.id ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
v-model="visible"
|
||||
width="600px"
|
||||
width="900px"
|
||||
>
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataFormRef" @keyup.enter="dataFormSubmit" label-width="120px">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="24">
|
||||
<el-form-item label="招生计划" prop="groupId">
|
||||
<el-select v-model="dataForm.groupId" filterable placeholder="请选择招生计划" :disabled="!!dataForm.id">
|
||||
<el-option
|
||||
v-for="item in planListLocal"
|
||||
:key="item.id"
|
||||
:label="item.groupName"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="姓名" prop="name">
|
||||
<el-input v-model="dataForm.name" placeholder="姓名"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="电话" prop="phone">
|
||||
<el-input v-model="dataForm.phone" placeholder="电话"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="性别" prop="gender">
|
||||
<el-radio-group v-model="dataForm.gender">
|
||||
<el-radio v-for="item in sexyList" :key="item.value" :label="item.value">{{ item.label }}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="身份证" prop="idCard">
|
||||
<el-input v-model="dataForm.idCard" placeholder="身份证"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="准考证" prop="admission">
|
||||
<el-input v-model="dataForm.admission" placeholder="准考证"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="中考成绩" prop="achievement">
|
||||
<el-input-number v-model="dataForm.achievement" :min="0" :max="700" placeholder="中考成绩" ></el-input-number>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="对接人" prop="djUser" v-auth="'recruit_recruitprestudent_dj_sure'">
|
||||
<el-select v-model="dataForm.djUser" filterable clearable placeholder="" >
|
||||
<el-option
|
||||
v-for="item in contactNameList"
|
||||
:key="item.teacherNo"
|
||||
:label="item.realName+'-'+item.deptCode"
|
||||
:value="item.teacherNo">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="学校" prop="schoolId">
|
||||
<el-select v-model="dataForm.schoolId" filterable placeholder="请选择学校" >
|
||||
<el-option
|
||||
v-for="item in schoolList"
|
||||
:key="item.id"
|
||||
:label="item.schoolName"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-form-item label="招生计划名称" prop="groupId">
|
||||
<el-select v-model="dataForm.groupId" filterable placeholder="请选择招生计划" :disabled="!!dataForm.id">
|
||||
<el-option
|
||||
v-for="item in planListLocal"
|
||||
:key="item.id"
|
||||
:label="item.groupName"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="姓名" prop="name">
|
||||
<el-input v-model="dataForm.name" placeholder="姓名"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="电话" prop="phone">
|
||||
<el-input v-model="dataForm.phone" placeholder="电话"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="身份证" prop="idCard">
|
||||
<el-input v-model="dataForm.idCard" placeholder="身份证"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="性别" prop="gender">
|
||||
<el-select v-model="dataForm.gender">
|
||||
<el-option
|
||||
v-for="item in sexyList"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="准考证" prop="admission">
|
||||
<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="中考成绩"></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="">
|
||||
<el-option
|
||||
v-for="item in contactNameList"
|
||||
:key="item.teacherNo"
|
||||
:label="item.realName+'-'+item.deptCode"
|
||||
:value="item.teacherNo">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="学校" prop="schoolId">
|
||||
<el-select v-model="dataForm.schoolId" filterable placeholder="请选择学校">
|
||||
<el-option
|
||||
v-for="item in schoolList"
|
||||
:key="item.id"
|
||||
:label="item.schoolName"
|
||||
:value="item.id">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业1" prop="planMajorOne">
|
||||
<el-select v-model="dataForm.planMajorOne" filterable placeholder="请选择拟报专业1">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="拟报专业2" prop="planMajorTwo">
|
||||
<el-select v-model="dataForm.planMajorTwo" filterable clearable placeholder="请选择拟报专业2">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="拟报专业3" prop="planMajorThree">
|
||||
<el-select v-model="dataForm.planMajorThree" filterable clearable placeholder="请选择拟报专业3">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="拟报专业4" prop="planMajorFour">
|
||||
<el-select v-model="dataForm.planMajorFour" filterable clearable placeholder="请选择拟报专业4">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="拟报专业5" prop="planMajorFive">
|
||||
<el-select v-model="dataForm.planMajorFive" filterable clearable placeholder="请选择拟报专业5">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业6" prop="planMajorSix">
|
||||
<el-select v-model="dataForm.planMajorSix" filterable clearable placeholder="请选择拟报专业6">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业7" prop="planMajorSeven">
|
||||
<el-select v-model="dataForm.planMajorSeven" filterable clearable placeholder="请选择拟报专业7">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业8" prop="planMajorEight">
|
||||
<el-select v-model="dataForm.planMajorEight" filterable clearable placeholder="请选择拟报专业8">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业9" prop="planMajorNine">
|
||||
<el-select v-model="dataForm.planMajorNine" filterable clearable placeholder="请选择拟报专业9">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业10" prop="planMajorTen">
|
||||
<el-select v-model="dataForm.planMajorTen" filterable clearable placeholder="请选择拟报专业10">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业11" prop="planMajorEleven">
|
||||
<el-select v-model="dataForm.planMajorEleven" filterable clearable placeholder="请选择拟报专业11">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="拟报专业12" prop="planMajorTwelve">
|
||||
<el-select v-model="dataForm.planMajorTwelve" filterable clearable placeholder="请选择拟报专业12">
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业1" prop="planMajorOne">
|
||||
<el-select v-model="dataForm.planMajorOne" filterable placeholder="请选择拟报专业1" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业2" prop="planMajorTwo">
|
||||
<el-select v-model="dataForm.planMajorTwo" filterable clearable placeholder="请选择拟报专业2" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业3" prop="planMajorThree">
|
||||
<el-select v-model="dataForm.planMajorThree" filterable clearable placeholder="请选择拟报专业3" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业4" prop="planMajorFour">
|
||||
<el-select v-model="dataForm.planMajorFour" filterable clearable placeholder="请选择拟报专业4" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业5" prop="planMajorFive">
|
||||
<el-select v-model="dataForm.planMajorFive" filterable clearable placeholder="请选择拟报专业5" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业6" prop="planMajorSix">
|
||||
<el-select v-model="dataForm.planMajorSix" filterable clearable placeholder="请选择拟报专业6" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业7" prop="planMajorSeven">
|
||||
<el-select v-model="dataForm.planMajorSeven" filterable clearable placeholder="请选择拟报专业7" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业8" prop="planMajorEight">
|
||||
<el-select v-model="dataForm.planMajorEight" filterable clearable placeholder="请选择拟报专业8" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业9" prop="planMajorNine">
|
||||
<el-select v-model="dataForm.planMajorNine" filterable clearable placeholder="请选择拟报专业9" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业10" prop="planMajorTen">
|
||||
<el-select v-model="dataForm.planMajorTen" filterable clearable placeholder="请选择拟报专业10" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业11" prop="planMajorEleven">
|
||||
<el-select v-model="dataForm.planMajorEleven" filterable clearable placeholder="请选择拟报专业11" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="拟报专业12" prop="planMajorTwelve">
|
||||
<el-select v-model="dataForm.planMajorTwelve" filterable clearable placeholder="请选择拟报专业12" >
|
||||
<el-option
|
||||
v-for="item in planMajorList"
|
||||
:key="item.id"
|
||||
:label="item.majorName"
|
||||
:value="item.id"
|
||||
:disabled="isDisable(item.id)"
|
||||
>
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-form>
|
||||
|
||||
<template #footer>
|
||||
@@ -226,14 +277,12 @@
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { ref, reactive, computed, nextTick } from 'vue'
|
||||
import { storeToRefs } from 'pinia'
|
||||
import { useUserInfo } from '/@/stores/userInfo'
|
||||
import { ref, reactive, nextTick } from 'vue'
|
||||
import { ElNotification } from 'element-plus'
|
||||
import { getObj, addObjStu, putObj } from '/@/api/recruit/recruitprestudent'
|
||||
import { queryTeacherBaseByNoByAssets } from '/@/api/professional/professionaluser/teacherbase'
|
||||
import { getList } from '/@/api/recruit/recruitstudentplangroup'
|
||||
import { getDicts } from '/@/api/admin/dict'
|
||||
import { queryAllTeacherByRecruit } from '/@/api/professional/professionaluser/teacherbase'
|
||||
|
||||
// Props
|
||||
const props = defineProps<{
|
||||
@@ -247,19 +296,6 @@ const emit = defineEmits<{
|
||||
(e: 'refreshDataList'): void
|
||||
}>()
|
||||
|
||||
// 使用 Pinia store
|
||||
const userInfoStore = useUserInfo()
|
||||
const { userInfos } = storeToRefs(userInfoStore)
|
||||
|
||||
// 创建权限对象
|
||||
const permissions = computed(() => {
|
||||
const perms: Record<string, boolean> = {}
|
||||
userInfos.value.authBtnList.forEach((perm: string) => {
|
||||
perms[perm] = true
|
||||
})
|
||||
return perms
|
||||
})
|
||||
|
||||
// 表单引用
|
||||
const dataFormRef = ref()
|
||||
|
||||
@@ -386,7 +422,7 @@ const dataFormSubmit = () => {
|
||||
|
||||
// 初始化方法
|
||||
const init = (id: string | null) => {
|
||||
dataForm.id = id || null
|
||||
dataForm.id = id || ""
|
||||
visible.value = true
|
||||
canSubmit.value = true
|
||||
|
||||
@@ -399,7 +435,12 @@ const init = (id: string | null) => {
|
||||
getDicts('sexy').then((res: any) => {
|
||||
sexyList.value = res.data || []
|
||||
})
|
||||
// 这里如果需要教师列表,可以改用新的教师接口;当前项目中常用的是 queryTeacherBaseByNoByAssets
|
||||
// 获取教师列表(对接人)
|
||||
queryAllTeacherByRecruit().then((res: any) => {
|
||||
contactNameList.value = res.data || []
|
||||
}).catch(() => {
|
||||
contactNameList.value = []
|
||||
})
|
||||
if (dataForm.id) {
|
||||
getObj(dataForm.id).then((response: any) => {
|
||||
Object.assign(dataForm, response.data)
|
||||
@@ -424,7 +465,12 @@ defineExpose({
|
||||
})
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
<style lang="scss" scoped>
|
||||
.el-form {
|
||||
.el-form-item:last-of-type {
|
||||
margin-bottom: 18px!important;
|
||||
}
|
||||
}
|
||||
.dialog-footer {
|
||||
text-align: right;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user