Crazy пре 3 месеци
родитељ
комит
f8b25cb76a

+ 6 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/user/vo/user/StudentProjectRespVO.java

@@ -85,4 +85,10 @@ public class StudentProjectRespVO {
     @Schema(description = "项目id")
     private Long projectId;
 
+    @Schema(description = "选中的导师Id")
+    private String selectSupervisorId;
+
+    @Schema(description = "选中的导师名称")
+    private String selectSupervisor;
+
 }

+ 4 - 4
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/studentAttendance/StudentAttendanceMapper.java

@@ -54,11 +54,11 @@ public interface StudentAttendanceMapper extends BaseMapperX<StudentAttendanceDO
                 .orderByDesc(StudentAttendanceDO::getClockInTime);
 
         if (roleIds != null && !roleIds.isEmpty()) {
-            if (roleIds.contains(113L)) {//是教师 只出现在老师工作间下面的学生考勤情况
-                if(dept_id != null && dept_id != 0 ){
+            if (roleIds.contains(113L)) {//是教师 导师下面的
+                if (dept_id==null||dept_id==0) {
+                    queryWrapper.eqIfPresent(StudentAttendanceDO::getSupervisorId, loginId);
+                }else {
                     queryWrapper.eqIfPresent(StudentAttendanceDO::getDeptId, dept_id);
-                }else {//不查
-                    queryWrapper.eqIfPresent(StudentAttendanceDO::getDeptId,-1);
                 }
             } else if (roleIds.contains(112L)) {//是学生,只显示自己的
                 queryWrapper.eqIfPresent(StudentAttendanceDO::getStudentId, loginId);

+ 7 - 2
yudao-module-system/yudao-module-system-biz/src/main/resources/Mapper/user/AdminUserMapper.xml

@@ -426,7 +426,7 @@
 
     <select id="getIsPassedStudentsPage" resultType="cn.iocoder.yudao.module.system.controller.admin.user.vo.user.StudentProjectRespVO">
         SELECT
-        a.*,r.id,r.project_id,
+        a.*,r.id,r.project_id,r.supervisor_id,
         CASE
         WHEN COALESCE(MAX(r.select_type), 0) = 2 THEN 2
         WHEN COALESCE(MAX(r.select_type), 0) = 1 THEN 1
@@ -442,7 +442,9 @@
         COALESCE(system_dept.name, "测绘学院") AS deptName,
         supervisor_user.nickname AS supervisor,
         supervisor_user.mobile AS supervisorMobile,
-        externalSupervisor_user.nickname AS externalSupervisor
+        externalSupervisor_user.nickname AS externalSupervisor,
+        selectSupervisor_user.nickname AS selectSupervisor,
+        r.supervisor_id AS selectSupervisorId
         FROM
         system_users a
         LEFT JOIN
@@ -452,6 +454,8 @@
         LEFT JOIN
         system_users externalSupervisor_user ON externalSupervisor_user.id = a.external_supervisor_id AND externalSupervisor_user.deleted = 0
         LEFT JOIN
+        system_users selectSupervisor_user ON selectSupervisor_user.id = a.id AND selectSupervisor_user.deleted = 0
+        LEFT JOIN
         system_dept system_dept ON system_dept.id = a.dept_id
         WHERE
         1=1
@@ -520,6 +524,7 @@
         LEFT JOIN student_select_supervisor_record r ON r.student_id = a.id AND r.deleted = 0 AND r.project_id = #{projectId}
         LEFT JOIN system_users supervisor_user ON supervisor_user.id = a.supervisor_id AND supervisor_user.deleted = 0
         LEFT JOIN system_users externalSupervisor_user ON externalSupervisor_user.id = a.external_supervisor_id AND externalSupervisor_user.deleted = 0
+        LEFT JOIN system_users selectSupervisor_user ON selectSupervisor_user.id = a.id AND selectSupervisor_user.deleted = 0
         LEFT JOIN system_dept system_dept ON system_dept.id = a.dept_id
         WHERE 1 = 1
         <if test="reqVO.username != null and reqVO.username != ''">