47 4 mesiacov pred
rodič
commit
1adede3c5d

+ 2 - 2
src/api/system/studentSelectionProject/index.ts

@@ -4,8 +4,8 @@ import request from '@/config/axios'
 export interface studentSelectionProjectVO {
   id: number // 项目id
   projectName: string // 项目名称
-  studentStartTime: Date // 学生开始时间
-  supervisorConfirmDeadline: Date // 导师截止时间
+  studentStartTime: Date // 开始时间
+  supervisorConfirmDeadline: Date // 截止时间
   studentGrade: string // 学生年级
   isSupervisor: number,
   isStudent: number,

+ 12 - 1
src/api/system/user/index.ts

@@ -216,4 +216,15 @@ export const getPassedStudentsPage = (params: PageParam) => {
 // 获取今年项目学生未通过分页
 export const getUnPassedStudentsPage = (params: PageParam) => {
   return request.get({ url: '/system/user/getUnPassedStudentsPage', params })
-}
+}
+
+// 获取所有校内导师
+export const getInnerSupervisor = () => {
+  return request.get({ url: '/system/user/getInnerSupervisor'})
+}
+
+// 获取所有校外导师
+export const getExternalSupervisor = () => {
+  return request.get({ url: '/system/user/getExternalSupervisor'})
+}
+  

+ 1 - 1
src/views/system/studentSelection/studentSelectSupervisorRecord/index.vue

@@ -1,5 +1,5 @@
 <template>
-  <ContentWrap>
+  <ContentWrap  v-if="userInfo?.userType === '4' || userInfo?.userType === '1'">
     <!-- 搜索工作栏 -->
     <el-form
       class="-mb-15px"

+ 27 - 24
src/views/system/studentSelection/studentSelectSupervisorRecord/record.vue

@@ -10,23 +10,7 @@
           label-width="100px"
           v-if="userInfo.userType==='4'"
         >
-          <el-form-item label="参与导师" prop="supervisorIds">
-            <el-select
-              v-model="queryParams.supervisorId"
-              @change="getRecordList"
-              placeholder="请选择参与导师"
-              clearable
-              filterable
-              class="!w-240px"
-            >
-              <el-option
-                v-for="supervisor in supervisors"
-                :key="supervisor.id"
-                :label="supervisor.nickname"
-                :value="supervisor.id"
-              />
-            </el-select>
-          </el-form-item>
+          
         
           <el-form-item label="请选择项目" prop="projectId">
             <el-select
@@ -45,6 +29,16 @@
               />
             </el-select>
           </el-form-item>
+
+          <el-form-item label="学生姓名" v-if="userInfo.userType==='4'">
+            <el-input
+              v-model="queryParams.studentName"
+              placeholder="请输入学生名称"
+              clearable
+              @keyup.enter="handleQuery"
+              class="!w-240px"
+            />
+          </el-form-item>
         
           <el-form-item label="参与学生年级" prop="studentGrade">
             <el-select
@@ -62,15 +56,23 @@
               />
             </el-select>
           </el-form-item>
-        
-          <el-form-item label="学生姓名" v-if="userInfo.userType==='4'">
-            <el-input
-              v-model="queryParams.studentName"
-              placeholder="请输入学生名称"
+
+          <el-form-item label="参与导师" prop="supervisorIds">
+            <el-select
+              v-model="queryParams.supervisorId"
+              @change="getRecordList"
+              placeholder="请选择参与导师"
               clearable
-              @keyup.enter="handleQuery"
+              filterable
               class="!w-240px"
-            />
+            >
+              <el-option
+                v-for="supervisor in supervisors"
+                :key="supervisor.id"
+                :label="supervisor.nickname"
+                :value="supervisor.id"
+              />
+            </el-select>
           </el-form-item>
 
           <el-form-item label="选择状态" prop="selectType">
@@ -122,6 +124,7 @@
           <el-table-column type="index" width="50" />
             <el-table-column label="项目名称" align="center" prop="projectName" />
           <el-table-column label="学生姓名" align="center" prop="studentName" />
+          <el-table-column label="学生年级" align="center" prop="studentGrade" />
           <el-table-column label="硕士类型" align="center" prop="masterType" >
             <template #default="scope">
               <dict-tag :type="DICT_TYPE.SYSTEM_STUDENT_MASTER_TYPE" :value="scope.row.masterType" />

+ 12 - 27
src/views/system/studentSelection/studentSelectSupervisorRecord/studentSelectSupervisorRecordForm.vue

@@ -93,7 +93,7 @@
         </el-row>
       </div>
       <!-- 导师意见 -->
-      <div class="section" v-if="userInfo.userType==='3'">
+      <div class="section" v-if="userInfo.userType==='3'&& formType !== 'end'">
         <p style="margin-bottom: 10px;">导师意见:同意</p>
         <p style="margin-bottom: 10px;">导师签字</p>
         <div v-show="lastSupervisorSignature">
@@ -271,7 +271,7 @@ const getSupervisorSignature = async() => {
 
 const showPrintButton = ref(false); // 控制打印按钮的显示
 /** 打开弹窗 */
-const open = async (type: string, projectId?: number, supervisorId?:number, id?:number, studentId?:number) => {
+const open = async (type: string, projectId?: number, supervisorId?:number, id?:number, studentId?:number, recordId?:number) => {
   dialogVisible.value = true;
   await nextTick(() => {
     if (canvas.value) {
@@ -348,7 +348,6 @@ const open = async (type: string, projectId?: number, supervisorId?:number, id?:
       try {
         formData.value = await studentSelectSupervisorRecordApi.getStudentSelectSupervisorRecord(id)
         // console.log(formData.value,'formData.value');
-        
       } finally {
         formLoading.value = false
       }
@@ -392,9 +391,7 @@ const open = async (type: string, projectId?: number, supervisorId?:number, id?:
         formLoading.value = false
       }
     }
-    
     await getProjectSupervisors()
-    
   }
   if (type === 'updateone'){
     dialogTitle.value = '志愿编辑'
@@ -409,13 +406,14 @@ const open = async (type: string, projectId?: number, supervisorId?:number, id?:
         studentData.value.userNumber=result.userNumber
         studentData.value.major=result.major
         studentData.value.mobile=result.mobile
-        const supervisor = await supervisorSelectionSettingApi.getSupervisorInfo(supervisorId,projectId);
-        formData.value = await studentSelectSupervisorRecordApi.getStudentSelectSupervisorRecord(id)
       } finally {
         formLoading.value = false
       }
     }
-    
+    if (recordId){
+      formData.value = await studentSelectSupervisorRecordApi.getStudentSelectSupervisorRecord(recordId)
+      // console.log(formData.value,'formData.value');
+    }
     await getProjectSupervisors()
     
   }
@@ -424,15 +422,6 @@ const open = async (type: string, projectId?: number, supervisorId?:number, id?:
     submitFormText.value = '编辑'
     formType.value = type
     resetForm()
-    if (id) {
-      formLoading.value = true
-      try {
-        formData.value = await studentSelectSupervisorRecordApi.getStudentSelectSupervisorRecord(id)
-        // console.log(formData.value,'formData.value');
-      } finally {
-        formLoading.value = false
-      }
-    }
     if (id) {
       formLoading.value = true
       try {
@@ -441,19 +430,10 @@ const open = async (type: string, projectId?: number, supervisorId?:number, id?:
         studentData.value.userNumber=result.userNumber
         studentData.value.major=result.major
         studentData.value.mobile=result.mobile
-        const supervisor = await supervisorSelectionSettingApi.getSupervisorInfo(supervisorId,projectId);
-        //显示的
-        supervisorData.value.nickname = supervisor.supervisorName;
-        supervisorData.value.title =supervisor.title;
-        supervisorData.value.studentAchievementRequirement = supervisor.studentAchievementRequirement;
-        supervisorData.value.major = supervisor.major;
-        supervisorData.value.workSupervisor = supervisor.workSupervisor;
-        formData.value = await studentSelectSupervisorRecordApi.getStudentSelectSupervisorRecord(id)
       } finally {
         formLoading.value = false
       }
     }
-    
     await getProjectSupervisors()
   }
   if (type === 'end'){
@@ -498,7 +478,7 @@ const supervisorsin = ref()
 const getProjectSupervisors = async () => {
   // console.log('请求的项目ID:', projectId);
   const result = await studentSelectionProjectApi.getProjectSupervisors();
-  // console.log(result,'获取到的导师信息');
+  console.log(result,'获取到的导师信息');
   supervisorsin.value = result
 }
 
@@ -635,7 +615,12 @@ const submitForm = async () => {
     } else if (formType.value === 'agree') {
       await studentSelectSupervisorRecordApi.agreeStudentSelectSupervisorRecord(data);
       message.success("已经同意申请");
+    }else if (formType.value === 'updateone') {
+      await studentSelectSupervisorRecordApi.updateStudentSelectSupervisorRecord(data);
+      message.success(t('common.updateSuccess'));
     }else if (formType.value === 'updatetwo') {
+      // const id = data.studentId 
+      // data.studentId = id
       await studentSelectSupervisorRecordApi.collegeCreate(data);
       message.success("common.createSuccess");
     }

+ 38 - 35
src/views/system/studentSelection/studentSelectionDone/inedx.vue

@@ -6,24 +6,6 @@
       :model="queryForm"
       label-width="100px"
     >
-    <el-form-item label="参与导师" prop="supervisorIds">
-      <el-select
-        v-model="queryForm.supervisorId"
-        @change="getDoneList"
-        placeholder="请选择参与导师"
-        clearable
-        filterable
-        class="!w-240px"
-      >
-        <el-option
-          v-for="supervisor in supervisors"
-          :key="supervisor.id"
-          :label="supervisor.nickname"
-          :value="supervisor.id"
-        />
-      </el-select>
-    </el-form-item>
-  
     <el-form-item label="请选择项目" prop="projectId">
       <el-select
         v-model="queryForm.projectId"
@@ -68,21 +50,6 @@
         class="!w-240px"
       />
     </el-form-item>
-    <el-form-item label="选择状态" prop="selectType">
-      <el-select
-        v-model="queryForm.selectType"
-        @change="getDoneList"
-        placeholder="请选择选择状态"
-        clearable
-        class="!w-240px"
-      >
-        <el-option label="撤回" value="0" />
-        <el-option label="待处理" value="1" />
-        <el-option label="同意" value="2" />
-        <el-option label="退回" value="3" />
-        <el-option label="志愿编辑" value="4" />
-      </el-select>
-    </el-form-item>
     <el-form-item>
       <el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
       <el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
@@ -100,8 +67,8 @@
           <dict-tag :type="DICT_TYPE.SYSTEM_STUDENT_MASTER_TYPE" :value="scope.row.masterType" />
         </template>
       </el-table-column>
-      <el-table-column label="导师姓名" align="center" prop="supervisor" />
-      <el-table-column label="导师类型" align="center" prop="supervisorType" />
+      <!-- <el-table-column label="导师姓名" align="center" prop="supervisor" />
+      <el-table-column label="导师类型" align="center" prop="supervisorType" :formatter="userTypeFormatter" /> -->
       <el-table-column label="申请状态" align="center" prop="selectType" >
         <template #default="scope">
           <dict-tag :type="DICT_TYPE.SYSTEM_STUDENT_SELECT_RECORD_SELECT_TYPE" :value="scope.row.selectType" />
@@ -131,8 +98,27 @@
         :formatter="dateFormatter"
         width="180px"
       />
+      <el-table-column label="操作" align="center" min-width="120px">
+        <template #default="scope">
+          <el-button
+            link
+            type="primary"
+            @click="openForm('end', scope.row.projectId,scope.row.supervisorId,scope.row.id,scope.row.studentId)"
+          >
+            详情
+          </el-button>
+        </template>
+      </el-table-column>
     </el-table>
+    <Pagination
+      :total="total"
+      :page="queryForm.pageNo"
+      :limit="queryForm.pageSize"
+      @pagination="getDoneList"
+    />
   </ContentWrap>
+  
+  <studentSelectSupervisorRecordForm ref="formRef" @success="getDoneList" />
 </template>
 
 <script setup lang="ts">
@@ -142,6 +128,7 @@ import { dateFormatter } from '@/utils/formatTime'
 import {studentSelectSupervisorRecordApi, studentSelectSupervisorRecordVO} from "@/api/system/studentSelectSupervisorRecord";
 import {studentSelectionProjectApi, studentSelectionProjectVO} from "@/api/system/studentSelectionProject"
 import * as UserApi from '@/api/system/user'
+import studentSelectSupervisorRecordForm from "../studentSelectSupervisorRecord/studentSelectSupervisorRecordForm.vue"
 
 defineOptions({ name: 'StudentSelectionWait' })
 
@@ -210,6 +197,17 @@ const gradeOptions = computed(() => {
   ];
 });
 
+const userTypeFormatter = (row, column, cellValue, index) => {
+  switch (cellValue) {
+    case "3":
+      return '校内导师';
+    case "5":
+      return '校外导师';
+    default:
+      return '未知';
+  }
+};
+
 const handleQuery = () => {
   queryForm.value.pageNo = 1
   getDoneList()
@@ -221,6 +219,11 @@ const resetQuery = () => {
   handleQuery()
 }
 
+const formRef = ref()
+const openForm = (type: string, projectId?: number,supervisorId? :number,id?:number,studentId?:number) => {
+  formRef.value.open(type, projectId,supervisorId,id,studentId)
+}
+
 
 onMounted(() => {
   getDoneList()

+ 35 - 24
src/views/system/studentSelection/studentSelectionNo/index.vue

@@ -6,24 +6,26 @@
       :model="queryForm"
       label-width="100px"
     >
-    <el-form-item label="参与导师" prop="supervisorIds">
-      <el-select
-        v-model="queryForm.supervisorId"
-        @change="getUnPassList"
-        placeholder="请选择参与导师"
+    <el-form-item label="学生姓名">
+      <el-input
+        v-model="queryForm.nickname"
+        placeholder="请输入学生名称"
         clearable
-        filterable
+        @keyup.enter="handleQuery"
         class="!w-240px"
-      >
-        <el-option
-          v-for="supervisor in supervisors"
-          :key="supervisor.id"
-          :label="supervisor.nickname"
-          :value="supervisor.id"
-        />
-      </el-select>
+      />
     </el-form-item>
-  
+
+    <el-form-item label="学号">
+      <el-input
+        v-model="queryForm.userNumber"
+        placeholder="请输入学号"
+        clearable
+        @keyup.enter="handleQuery"
+        class="!w-240px"
+      />
+    </el-form-item>
+
     <el-form-item label="参与学生年级" prop="studentGrade">
       <el-select
         v-model="queryForm.studentGrade"
@@ -40,16 +42,17 @@
         />
       </el-select>
     </el-form-item>
-  
-    <el-form-item label="学生姓名">
+
+    <el-form-item label="电话号码">
       <el-input
-        v-model="queryForm.nickname"
-        placeholder="请输入学生名称"
+        v-model="queryForm.mobile"
+        placeholder="请输入电话号码"
         clearable
         @keyup.enter="handleQuery"
         class="!w-240px"
       />
     </el-form-item>
+   
     <el-form-item label="选择状态" prop="selectStatus">
       <el-select
         v-model="queryForm.selectStatus"
@@ -59,7 +62,7 @@
         class="!w-240px"
       >
         <el-option label="待处理" value="1" />
-        <el-option label="已通过" value="2" />
+        <!-- <el-option label="已通过" value="2" /> -->
         <el-option label="未提交" value="0" />
       </el-select>
     </el-form-item>
@@ -98,7 +101,7 @@
           <!-- 待处理 -->
           <el-button
             type="text"
-            @click="openForm('updateone',  scope.row.projectId,scope.row.supervisorId,scope.row.id,scope.row.studentId)"
+            @click="openForm('updateone',  scope.row.projectId,scope.row.supervisorId,scope.row.id,scope.row.recordId)"
             v-hasPermi="['system:student-select-supervisor-record:update']"
             v-if="scope.row.selectStatus === 1"
           >
@@ -107,7 +110,7 @@
           <!-- 未提交 -->
           <el-button
             type="text"
-            @click="openForm('updatetwo',  scope.row.projectId,scope.row.supervisorId,scope.row.id)"
+            @click="openForm('updatetwo',  scope.row.projectId,scope.row.supervisorId,scope.row.id,scope.row.recordId)"
             v-hasPermi="['system:student-select-supervisor-record:update']"
             v-if="scope.row.selectStatus === 0"
           >
@@ -116,6 +119,12 @@
         </template>
       </el-table-column>
     </el-table>
+    <Pagination
+      :total="total"
+      :page="queryForm.pageNo"
+      :limit="queryForm.pageSize"
+      @pagination="getUnPassList"
+    />
   </ContentWrap>
   <studentSelectSupervisorRecordForm ref="formRef" @success="getUnPassList" />
 </template>
@@ -151,6 +160,8 @@ const queryForm = ref({
   studentGrade:"",
   selectType:undefined,
   selectStatus:undefined,
+  userNumber:undefined,
+  mobile:undefined,
 })
 
 const unpassList = ref<studentSelectSupervisorRecordVO[]>([]) //下面的选择记录列表
@@ -209,8 +220,8 @@ const resetQuery = () => {
 }
 
 const formRef = ref(); // 确保初始化为 null
-const openForm = (type: string, projectId?: number, supervisorId?:number, id?:number, studentId?:number) => {
-  formRef.value.open(type, projectId, supervisorId, id, studentId)
+const openForm = (type: string, projectId?: number, supervisorId?:number, id?:number, studentId?:number, recordId?:number) => {
+  formRef.value.open(type, projectId, supervisorId, id, studentId, recordId)
 }
 
 

+ 6 - 6
src/views/system/studentSelection/studentSelectionProject/index.vue

@@ -32,21 +32,21 @@
           class="!w-240px"
         />
       </el-form-item>
-      <el-form-item label="学生开始时间" prop="studentStartTime">
+      <el-form-item label="开始时间" prop="studentStartTime">
         <el-date-picker
           v-model="queryParams.studentStartTime"
           value-format="YYYY-MM-DD HH:mm:ss"
           type="datetime"
-          placeholder="选择学生开始时间"
+          placeholder="选择开始时间"
           class="!w-220px"
         />
       </el-form-item>
-      <el-form-item label="导师截止时间" prop="supervisorConfirmDeadline">
+      <el-form-item label="截止时间" prop="supervisorConfirmDeadline">
         <el-date-picker
           v-model="queryParams.supervisorConfirmDeadline"
           value-format="YYYY-MM-DD HH:mm:ss"
           type="datetime"
-          placeholder="选择导师截止时间"
+          placeholder="选择截止时间"
           clearable
           class="!w-220px"
         />
@@ -108,14 +108,14 @@
       <el-table-column type="index" width="50" />
       <el-table-column label="项目名称" align="center" prop="projectName" />
       <el-table-column
-        label="学生开始时间"
+        label="开始时间"
         align="center"
         prop="studentStartTime"
         :formatter="dateFormatter"
         width="180px"
       />
       <el-table-column
-        label="导师截止时间"
+        label="截止时间"
         align="center"
         prop="supervisorConfirmDeadline"
         :formatter="dateFormatter"

+ 2 - 2
src/views/system/studentSelection/studentSelectionProject/studentSelectionProjectForm.vue

@@ -116,8 +116,8 @@ const formData = ref({
 })
 const formRules = reactive({
   projectName: [{ required: true, message: '项目名称不能为空', trigger: 'blur' }],
-  studentStartTime: [{ required: true, message: '学生开始时间不能为空', trigger: 'blur' }],
-  supervisorConfirmDeadline: [{ required: true, message: '导师截止时间不能为空', trigger: 'blur' }],
+  studentStartTime: [{ required: true, message: '开始时间不能为空', trigger: 'blur' }],
+  supervisorConfirmDeadline: [{ required: true, message: '截止时间不能为空', trigger: 'blur' }],
   studentGrade: [{ required: true, message: '学生年级不能为空', trigger: 'blur' }],
   supervisorIds: [{ required: true, message: '请选择参与导师', trigger: 'change' }],
 })

+ 8 - 20
src/views/system/studentSelection/studentSelectionWait/index.vue

@@ -6,24 +6,6 @@
       :model="queryForm"
       label-width="100px"
     >
-    <el-form-item label="参与导师" prop="supervisorIds">
-      <el-select
-        v-model="queryForm.supervisorId"
-        @change="getWaitList"
-        placeholder="请选择参与导师"
-        clearable
-        filterable
-        class="!w-240px"
-      >
-        <el-option
-          v-for="supervisor in supervisors"
-          :key="supervisor.id"
-          :label="supervisor.nickname"
-          :value="supervisor.id"
-        />
-      </el-select>
-    </el-form-item>
-  
     <el-form-item label="请选择项目" prop="projectId">
       <el-select
         v-model="queryForm.projectId"
@@ -68,7 +50,7 @@
         class="!w-240px"
       />
     </el-form-item>
-    <el-form-item label="选择状态" prop="selectType">
+    <!-- <el-form-item label="选择状态" prop="selectType">
       <el-select
         v-model="queryForm.selectType"
         @change="getWaitList"
@@ -82,7 +64,7 @@
         <el-option label="退回" value="3" />
         <el-option label="志愿编辑" value="4" />
       </el-select>
-    </el-form-item>
+    </el-form-item> -->
     <el-form-item>
       <el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
       <el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
@@ -139,6 +121,12 @@
         </template>
       </el-table-column>
     </el-table>
+    <Pagination
+      :total="total"
+      :page="queryForm.pageNo"
+      :limit="queryForm.pageSize"
+      @pagination="getWaitList"
+    />
   </ContentWrap>
   <studentSelectSupervisorRecordForm ref="agreeRef" @success="getWaitList" />
 </template>

+ 40 - 45
src/views/system/studentSelection/studentSelectionYes/index.vue

@@ -6,42 +6,26 @@
       :model="queryForm"
       label-width="100px"
     >
-    <el-form-item label="参与导师" prop="supervisorIds">
-      <el-select
-        v-model="queryForm.supervisorId"
-        @change="getPassList"
-        placeholder="请选择参与导师"
+    <el-form-item label="学生姓名">
+      <el-input
+        v-model="queryForm.nickname"
+        placeholder="请输入学生名称"
         clearable
-        filterable
+        @keyup.enter="handleQuery"
         class="!w-240px"
-      >
-        <el-option
-          v-for="supervisor in supervisors"
-          :key="supervisor.id"
-          :label="supervisor.nickname"
-          :value="supervisor.id"
-        />
-      </el-select>
+      />
     </el-form-item>
-  
-    <el-form-item label="请选择项目" prop="projectId">
-      <el-select
-        v-model="queryForm.projectId"
-        @change="getPassList"
-        placeholder="请选择项目"
+
+    <el-form-item label="学号">
+      <el-input
+        v-model="queryForm.userNumber"
+        placeholder="请输入学号"
         clearable
-        filterable
+        @keyup.enter="handleQuery"
         class="!w-240px"
-      >
-        <el-option
-          v-for="project in projects"
-          :key="project.id"
-          :label="project.projectName"
-          :value="project.id"
-        />
-      </el-select>
+      />
     </el-form-item>
-  
+
     <el-form-item label="参与学生年级" prop="studentGrade">
       <el-select
         v-model="queryForm.studentGrade"
@@ -58,29 +42,32 @@
         />
       </el-select>
     </el-form-item>
-  
-    <el-form-item label="学生姓名">
+
+    <el-form-item label="电话号码">
       <el-input
-        v-model="queryForm.nickname"
-        placeholder="请输入学生名称"
+        v-model="queryForm.mobile"
+        placeholder="请输入电话号码"
         clearable
         @keyup.enter="handleQuery"
         class="!w-240px"
       />
     </el-form-item>
-    <el-form-item label="选择状态" prop="selectType">
+
+    <el-form-item label="参与导师" prop="supervisorIds">
       <el-select
-        v-model="queryForm.selectType"
+        v-model="queryForm.supervisorId"
         @change="getPassList"
-        placeholder="请选择选择状态"
+        placeholder="请选择参与导师"
         clearable
+        filterable
         class="!w-240px"
       >
-        <el-option label="撤回" value="0" />
-        <el-option label="待处理" value="1" />
-        <el-option label="同意" value="2" />
-        <el-option label="退回" value="3" />
-        <el-option label="志愿编辑" value="4" />
+        <el-option
+          v-for="supervisor in supervisors"
+          :key="supervisor.id"
+          :label="supervisor.nickname"
+          :value="supervisor.id"
+        />
       </el-select>
     </el-form-item>
     <el-form-item>
@@ -117,7 +104,7 @@
         <template #default="scope">
           <el-button
             type="text"
-            @click="openForm('updateone',  scope.row.projectId,scope.row.supervisorId,scope.row.id,scope.row.studentId)"
+            @click="openForm('updateone',  scope.row.projectId,scope.row.supervisorId,scope.row.id,scope.row.studentId,scope.row.recordId)"
             v-hasPermi="['system:student-select-supervisor-record:update']"
           >
             志愿编辑
@@ -125,6 +112,12 @@
         </template>
       </el-table-column>
     </el-table>
+    <Pagination
+      :total="total"
+      :page="queryForm.pageNo"
+      :limit="queryForm.pageSize"
+      @pagination="getPassList"
+    />
   </ContentWrap>
   <studentSelectSupervisorRecordForm ref="formRef" @success="getPassList" />
 </template>
@@ -159,6 +152,8 @@ const queryForm = ref({
   projectName:"",
   studentGrade:"",
   selectType:undefined,
+  userNumber:"",
+  mobile:"",
 })
 
 const passList = ref([]) //下面的选择记录列表
@@ -217,8 +212,8 @@ const resetQuery = () => {
 }
 
 const formRef = ref(); // 确保初始化为 null
-const openForm = (type: string, projectId?: number, supervisorId?:number, id?:number, studentId?:number) => {
-  formRef.value.open(type, projectId, supervisorId, id, studentId)
+const openForm = (type: string, projectId?: number, supervisorId?:number, id?:number, studentId?:number, recordId?:number) => {
+  formRef.value.open(type, projectId, supervisorId, id, studentId, recordId)
 }
 
 onMounted(() => {

+ 20 - 2
src/views/system/supervisorSelectionSetting/supervisorSelectionSettingForm.vue

@@ -36,7 +36,18 @@
     <el-row v-if="TUsertype ==='5'">
       <el-col :span="24">
         <el-form-item label="合作的校内导师" prop="workSupervisor">
-          <el-input v-model="formData.workSupervisor" placeholder="自动链接"/>
+          <!-- <el-input v-model="formData.workSupervisor" placeholder="自动链接"/> -->
+          <el-select
+            v-model="formData.workSupervisor" 
+            placeholder="请选择校内导师" 
+          >
+            <el-option 
+              v-for="item in innerSupervisors" 
+              :key="item.id" 
+              :label="item.nickname" 
+              :value="item.id" 
+            />
+          </el-select>
         </el-form-item>
       </el-col>
     </el-row>
@@ -177,8 +188,15 @@ const resetForm = () => {
   }
   formRef.value?.resetFields()
 }
+const innerSupervisors = ref();
+const getInnerSupervisor = async () => {
+  const res = await UserApi.getInnerSupervisor()
+  innerSupervisors.value = res
+  console.log(innerSupervisors.value,'innerSupervisors');
+}
 onMounted(() => {
-   getUserInfo()
+  getUserInfo()
+  getInnerSupervisor()
 })
 
 </script>

+ 25 - 5
src/views/system/userDetail/teacher.vue

@@ -36,7 +36,18 @@
     <el-row v-if="TUsertype ==='5' || userInfo.userType==='5'">
       <el-col :span="24">
         <el-form-item label="合作的校内导师" prop="workSupervisor">
-          <el-input v-model="formData.workSupervisor" placeholder="自动链接" :disabled="!isSupervisor"/>
+          <!-- <el-input v-model="formData.workSupervisor" placeholder="自动链接" :disabled="!isSupervisor"/> -->
+          <el-select
+            v-model="formData.workSupervisor" 
+            placeholder="请选择校内导师" 
+            :disabled="!isSupervisor"
+          >
+            <el-option 
+              v-for="item in innerSupervisors" 
+              :key="item.id" 
+              :label="item.nickname" 
+              :value="item.id" />
+          </el-select>
         </el-form-item>
       </el-col>
     </el-row>
@@ -147,7 +158,7 @@ const userInfo = ref({} as ProfileVO)
 const getUserInfo = async () => {
   const users = await getUserProfile()
   userInfo.value = users  
-  console.log(userInfo.value);
+  // console.log(userInfo.value);
 }
 // const isStudent = computed(() => userInfo.value.userType === "1");
 const TUsertype = ref<string | undefined>(undefined);
@@ -166,7 +177,7 @@ const open = async (type: string, supervisorId: number, userType?: string) => {
           ...user,
           supervisorId: supervisorId, // 确保 supervisorId 也被设置
         }
-        console.log(formData.value)
+        // console.log(formData.value)
       } finally {
         formLoading.value = false
       }
@@ -205,7 +216,7 @@ const submitForm = async () => {
     }
     if (formType.value === 'update') {
       await selectionBookApi.updateSelectionBook(data)
-      console.log(data)
+      // console.log(data)
       message.success(t('common.updateSuccess'))
     }
     dialogVisible.value = false
@@ -227,6 +238,14 @@ const cleanedintroduction = computed(() => {
 //   download.markdown(formData.value.introduction, '个人简历.pdf');
 // };
 
+//获取校内导师
+const innerSupervisors = ref();
+const getInnerSupervisor = async () => {
+  const res = await UserApi.getInnerSupervisor()
+  innerSupervisors.value = res
+  console.log(innerSupervisors.value,'innerSupervisors');
+}
+
 
 /** 重置表单 */
 const resetForm = () => {
@@ -245,8 +264,9 @@ const resetForm = () => {
   }
   formRef.value?.resetFields()
 }
-onMounted(() => {
+onMounted( async () => {
    getUserInfo()
+   await getInnerSupervisor()
 })
 
 </script>