Crazy 4 months ago
parent
commit
ec65a0aeb7

+ 187 - 13
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/mail/MailTemplateController.java

@@ -55,7 +55,7 @@ public class MailTemplateController {
 
 
     @Scheduled(cron = "0 30 22 * * ?") // 每天晚上 22:30
     @Scheduled(cron = "0 30 22 * * ?") // 每天晚上 22:30
     @Operation(summary = "定时发送邮件给导师")
     @Operation(summary = "定时发送邮件给导师")
-    public void sendMailToFamilyScheduled() {
+    public void sendMailToTeacherScheduled() {
         // 创建结果对象并设置属性
         // 创建结果对象并设置属性
         UserPageReqVO reqVO = new UserPageReqVO();
         UserPageReqVO reqVO = new UserPageReqVO();
         reqVO.setUserType("3");//找导师
         reqVO.setUserType("3");//找导师
@@ -75,13 +75,16 @@ public class MailTemplateController {
                         studentAttendanceService.getStudentAttendanceErrorListForTeacher(pageReqVO.setDeptId(String.valueOf(teacher.getDeptId()))),
                         studentAttendanceService.getStudentAttendanceErrorListForTeacher(pageReqVO.setDeptId(String.valueOf(teacher.getDeptId()))),
                         StudentAttendanceEmailVO.class
                         StudentAttendanceEmailVO.class
                 );
                 );
+                List<StudentAttendanceEmailVO> excusedList = BeanUtils.toBean(
+                        studentAttendanceService.getStudentAttendanceExcusedListForTeacher(pageReqVO.setDeptId(String.valueOf(teacher.getDeptId()))),
+                        StudentAttendanceEmailVO.class
+                );
 
 
                 StringBuilder normalListBuilder = new StringBuilder();
                 StringBuilder normalListBuilder = new StringBuilder();
                 for (StudentAttendanceEmailVO attendance : normalList) {
                 for (StudentAttendanceEmailVO attendance : normalList) {
                     normalListBuilder
                     normalListBuilder
                             .append(", 学生姓名: ").append(attendance.getStudentName())
                             .append(", 学生姓名: ").append(attendance.getStudentName())
                             .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
                             .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
-//                        .append(", 工作间名称: ").append(deptService.getDept(Long.valueOf(attendance.getDeptId())).getName()) // 这里需要映射为实际工作间名称
                             .append(", 日期: ").append(attendance.getDate())
                             .append(", 日期: ").append(attendance.getDate())
                             .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
                             .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
                             .append("<br/>");
                             .append("<br/>");
@@ -92,14 +95,24 @@ public class MailTemplateController {
                     errorListBuilder
                     errorListBuilder
                             .append(", 学生姓名: ").append(attendance.getStudentName())
                             .append(", 学生姓名: ").append(attendance.getStudentName())
                             .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
                             .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
-//                        .append(", 工作间名称: ").append(deptService.getDept(Long.valueOf(attendance.getDeptId())).getName())
                             .append(", 日期: ").append(attendance.getDate())
                             .append(", 日期: ").append(attendance.getDate())
                             .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
                             .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
                             .append("<br/>");
                             .append("<br/>");
                 }
                 }
 
 
+                StringBuilder excusedListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : excusedList) {
+                    excusedListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "请假")
+                            .append("<br/>");
+                }
+
                 templateParams.put("normalList", normalListBuilder.toString());
                 templateParams.put("normalList", normalListBuilder.toString());
                 templateParams.put("errorList", errorListBuilder.toString());
                 templateParams.put("errorList", errorListBuilder.toString());
+                templateParams.put("excusedList", excusedListBuilder.toString());
                 if (teacher.getEmail() != null) {
                 if (teacher.getEmail() != null) {
                     mailSendService.sendSingleMailToMember(teacher.getEmail(), null, "attendance-list", templateParams);
                     mailSendService.sendSingleMailToMember(teacher.getEmail(), null, "attendance-list", templateParams);
                 }
                 }
@@ -108,6 +121,78 @@ public class MailTemplateController {
 
 
     }
     }
 
 
+    @Scheduled(cron = "0 30 22 * * ?") // 每天晚上 22:30
+    @Operation(summary = "定时发送邮件给学院")
+    public void sendMailToCollegeScheduled() {
+        UserPageReqVO reqVO = new UserPageReqVO();
+        reqVO.setUserType("4");//找学院
+        List<AdminUserDO> collegeList = adminUserService.getUserList(reqVO);
+        StudentAttendancePageReqVO attendanceReqVO =new StudentAttendancePageReqVO();
+        Map<String, Object> templateParams =new HashMap<>();//模板参数设置
+        // 获取当前这天
+        LocalDate today = LocalDate.now();
+        if ( collegeList!=null&& !collegeList.isEmpty()) {
+            for (AdminUserDO college : collegeList) {
+                attendanceReqVO.setDate(today);
+                List<StudentAttendanceEmailVO> normalList = BeanUtils.toBean(
+                        studentAttendanceService.getStudentAttendanceListForTeacher(attendanceReqVO),
+                        StudentAttendanceEmailVO.class
+                );
+                List<StudentAttendanceEmailVO> errorList = BeanUtils.toBean(
+                        studentAttendanceService.getStudentAttendanceErrorListForTeacher(attendanceReqVO),
+                        StudentAttendanceEmailVO.class
+                );
+                List<StudentAttendanceEmailVO> excusedList = BeanUtils.toBean(//请假
+                        studentAttendanceService.getStudentAttendanceExcusedListForTeacher(attendanceReqVO),
+                        StudentAttendanceEmailVO.class
+                );
+
+                StringBuilder normalListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : normalList) {
+                    normalListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 工作间名称: ").append(attendance.getDeptName()!=null?attendance.getDeptName():"无")
+                            .append(",导师名称:").append(attendance.getSupervisor()!=null ? attendance.getSupervisor():"无" )
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
+                            .append("<br/>");
+                }
+
+                StringBuilder errorListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : errorList) {
+                    errorListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 工作间名称: ").append(attendance.getDeptName()!=null?attendance.getDeptName():"无")
+                            .append(",导师名称:").append(attendance.getSupervisor()!=null ? attendance.getSupervisor():"无" )
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
+                            .append("<br/>");
+                }
+
+                StringBuilder excusedListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : excusedList) {
+                    excusedListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 工作间名称: ").append(attendance.getDeptName()!=null?attendance.getDeptName():"无")
+                            .append(",导师名称:").append(attendance.getSupervisor()!=null ? attendance.getSupervisor():"无" )
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "请假")
+                            .append("<br/>");
+                }
+
+                templateParams.put("normalList", normalListBuilder.toString());
+                templateParams.put("errorList", errorListBuilder.toString());
+                templateParams.put("excusedList", excusedListBuilder.toString());
+                if (college.getEmail() != null) {
+                    mailSendService.sendSingleMailToMember(college.getEmail(), null, "attendance-list", templateParams);
+                }
+            }
+        }
+
+    }
 
 
 
 
     @PostMapping("/create")
     @PostMapping("/create")
@@ -167,18 +252,18 @@ public class MailTemplateController {
     }
     }
 
 
 
 
-    @PostMapping("/test")
-    @Operation(summary = "发送邮件给导师测试")
-    public void test() {
+    @PostMapping("/testTeacher")
+    @Operation(summary = "定时发送邮件给导师")
+    public void testTeacher() {
         // 创建结果对象并设置属性
         // 创建结果对象并设置属性
         UserPageReqVO reqVO = new UserPageReqVO();
         UserPageReqVO reqVO = new UserPageReqVO();
-        reqVO.setUserType("3");
-        List<AdminUserDO> TeacherList = adminUserService.getUserPage(reqVO).getList();//所有老师
-        StudentAttendancePageReqVO pageReqVO = new StudentAttendancePageReqVO();
+        reqVO.setUserType("3");//找导师
+        List<AdminUserDO> TeacherList = adminUserService.getUserList(reqVO);
+        StudentAttendancePageReqVO pageReqVO =new StudentAttendancePageReqVO();
+        Map<String, Object> templateParams =new HashMap<>();//模板参数设置
         // 获取当前这天
         // 获取当前这天
         LocalDate today = LocalDate.now();
         LocalDate today = LocalDate.now();
-        Map<String, Object> templateParams = new HashMap<>();//模板参数设置
-        if (TeacherList != null && !TeacherList.isEmpty()) {
+        if ( TeacherList!=null&& !TeacherList.isEmpty()) {
             for (AdminUserDO teacher : TeacherList) {
             for (AdminUserDO teacher : TeacherList) {
                 pageReqVO.setDate(today);
                 pageReqVO.setDate(today);
                 List<StudentAttendanceEmailVO> normalList = BeanUtils.toBean(
                 List<StudentAttendanceEmailVO> normalList = BeanUtils.toBean(
@@ -189,10 +274,14 @@ public class MailTemplateController {
                         studentAttendanceService.getStudentAttendanceErrorListForTeacher(pageReqVO.setDeptId(String.valueOf(teacher.getDeptId()))),
                         studentAttendanceService.getStudentAttendanceErrorListForTeacher(pageReqVO.setDeptId(String.valueOf(teacher.getDeptId()))),
                         StudentAttendanceEmailVO.class
                         StudentAttendanceEmailVO.class
                 );
                 );
+                List<StudentAttendanceEmailVO> excusedList = BeanUtils.toBean(
+                        studentAttendanceService.getStudentAttendanceExcusedListForTeacher(pageReqVO.setDeptId(String.valueOf(teacher.getDeptId()))),
+                        StudentAttendanceEmailVO.class
+                );
 
 
                 StringBuilder normalListBuilder = new StringBuilder();
                 StringBuilder normalListBuilder = new StringBuilder();
                 for (StudentAttendanceEmailVO attendance : normalList) {
                 for (StudentAttendanceEmailVO attendance : normalList) {
-                    normalListBuilder.append("学生id: ").append(attendance.getId())
+                    normalListBuilder
                             .append(", 学生姓名: ").append(attendance.getStudentName())
                             .append(", 学生姓名: ").append(attendance.getStudentName())
                             .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
                             .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
                             .append(", 日期: ").append(attendance.getDate())
                             .append(", 日期: ").append(attendance.getDate())
@@ -210,13 +299,98 @@ public class MailTemplateController {
                             .append("<br/>");
                             .append("<br/>");
                 }
                 }
 
 
+                StringBuilder excusedListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : excusedList) {
+                    excusedListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "请假")
+                            .append("<br/>");
+                }
+
                 templateParams.put("normalList", normalListBuilder.toString());
                 templateParams.put("normalList", normalListBuilder.toString());
                 templateParams.put("errorList", errorListBuilder.toString());
                 templateParams.put("errorList", errorListBuilder.toString());
+                templateParams.put("excusedList", excusedListBuilder.toString());
                 if (teacher.getEmail() != null) {
                 if (teacher.getEmail() != null) {
-                    mailSendService.sendSingleMailToMember(teacher.getEmail(), teacher.getId(), "attendance-list", templateParams);
+                    mailSendService.sendSingleMailToMember(teacher.getEmail(), null, "attendance-list", templateParams);
                 }
                 }
             }
             }
         }
         }
+
+    }
+
+    @PostMapping("/testCollege")
+    @Operation(summary = "定时发送邮件给学院")
+    public void testCollege() {
+        UserPageReqVO reqVO = new UserPageReqVO();
+        reqVO.setUserType("4");//找学院
+        List<AdminUserDO> collegeList = adminUserService.getUserList(reqVO);
+        StudentAttendancePageReqVO attendanceReqVO =new StudentAttendancePageReqVO();
+        Map<String, Object> templateParams =new HashMap<>();//模板参数设置
+        // 获取当前这天
+        LocalDate today = LocalDate.now();
+        if ( collegeList!=null&& !collegeList.isEmpty()) {
+            for (AdminUserDO college : collegeList) {
+                attendanceReqVO.setDate(today);
+                List<StudentAttendanceEmailVO> normalList = BeanUtils.toBean(
+                        studentAttendanceService.getStudentAttendanceListForTeacher(attendanceReqVO),
+                        StudentAttendanceEmailVO.class
+                );
+                List<StudentAttendanceEmailVO> errorList = BeanUtils.toBean(
+                        studentAttendanceService.getStudentAttendanceErrorListForTeacher(attendanceReqVO),
+                        StudentAttendanceEmailVO.class
+                );
+                List<StudentAttendanceEmailVO> excusedList = BeanUtils.toBean(//请假
+                        studentAttendanceService.getStudentAttendanceExcusedListForTeacher(attendanceReqVO),
+                        StudentAttendanceEmailVO.class
+                );
+
+                StringBuilder normalListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : normalList) {
+                    normalListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 工作间名称: ").append(attendance.getDeptName()!=null?attendance.getDeptName():"无")
+                            .append(", 导师名称:").append(attendance.getSupervisor()!=null ? attendance.getSupervisor():"无" )
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
+                            .append("<br/>");
+                }
+
+                StringBuilder errorListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : errorList) {
+                    errorListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 工作间名称: ").append(attendance.getDeptName()!=null?attendance.getDeptName():"无")
+                            .append(", 导师名称:").append(attendance.getSupervisor()!=null ? attendance.getSupervisor():"无" )
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "未打卡")
+                            .append("<br/>");
+                }
+
+                StringBuilder excusedListBuilder = new StringBuilder();
+                for (StudentAttendanceEmailVO attendance : excusedList) {
+                    excusedListBuilder
+                            .append(", 学生姓名: ").append(attendance.getStudentName())
+                            .append(", 学生学号: ").append(attendance.getUserNumber() != null ? attendance.getUserNumber() : "无")
+                            .append(", 工作间名称: ").append(attendance.getDeptName()!=null?attendance.getDeptName():"无")
+                            .append(", 导师名称:").append(attendance.getSupervisor()!=null ? attendance.getSupervisor():"无" )
+                            .append(", 日期: ").append(attendance.getDate())
+                            .append(", 打卡时间: ").append(attendance.getClockInTime() != null ? attendance.getClockInTime() : "请假")
+                            .append("<br/>");
+                }
+
+                templateParams.put("normalList", normalListBuilder.toString());
+                templateParams.put("errorList", errorListBuilder.toString());
+                templateParams.put("excusedList", excusedListBuilder.toString());
+                if (college.getEmail() != null) {
+                    mailSendService.sendSingleMailToMember(college.getEmail(), null, "attendance-list", templateParams);
+                }
+            }
+        }
+
     }
     }
 
 
 }
 }

+ 6 - 4
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/studentAttendance/vo/StudentAttendanceEmailVO.java

@@ -27,9 +27,11 @@ public class StudentAttendanceEmailVO {
     @ExcelProperty("学生学号")
     @ExcelProperty("学生学号")
     private String userNumber;
     private String userNumber;
 
 
-    @Schema(description = "工作间id", requiredMode = Schema.RequiredMode.REQUIRED, example = "22266")
-    @ExcelProperty("工作间id")
-    private String deptId;
+    @Schema(description = "工作间名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "22266")
+    private String deptName;
+
+    @Schema(description = "导师名称")
+    private String supervisor;
 
 
     @Schema(description = "日期", requiredMode = Schema.RequiredMode.REQUIRED)
     @Schema(description = "日期", requiredMode = Schema.RequiredMode.REQUIRED)
     @ExcelProperty("日期")
     @ExcelProperty("日期")
@@ -39,7 +41,7 @@ public class StudentAttendanceEmailVO {
     @ExcelProperty("打卡时间")
     @ExcelProperty("打卡时间")
     private String clockInTime;
     private String clockInTime;
 
 
-    @Schema(description = "打卡状态 0正常,1未打卡", example = "1")
+    @Schema(description = "打卡状态 0正常,1未打卡,2请假", example = "1")
     @ExcelProperty("打卡状态 0正常,1未打卡")
     @ExcelProperty("打卡状态 0正常,1未打卡")
     private String clockInStatus;
     private String clockInStatus;
 
 

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

@@ -327,6 +327,29 @@ public interface StudentAttendanceMapper extends BaseMapperX<StudentAttendanceDO
         return selectList(queryWrapper);
         return selectList(queryWrapper);
     }
     }
 
 
+    default List<StudentAttendanceDO> selectExcusedListForTeacher(StudentAttendancePageReqVO reqVO) {
+
+        MPJLambdaWrapperX<StudentAttendanceDO> queryWrapperX =new MPJLambdaWrapperX<>();
+        queryWrapperX.betweenIfPresent(StudentAttendanceDO::getCreateTime,reqVO.getCreateTime())
+                .eqIfPresent(StudentAttendanceDO::getDate,reqVO.getDate())
+                .selectAll(StudentAttendanceDO.class)
+                .selectAs(DeptDO::getName, StudentAttendanceDO::getDeptName)
+                .selectAs(AdminUserDO::getUserNumber, StudentAttendanceDO::getUserNumber)
+                .leftJoin(DeptDO.class, DeptDO::getId, StudentAttendanceDO::getDeptId)
+                .leftJoin(AdminUserDO.class, AdminUserDO::getId, StudentAttendanceDO::getStudentId)
+                .likeIfExists(StudentAttendanceDO::getStudentName, reqVO.getStudentName())
+                .likeIfExists(StudentAttendanceDO::getUserNumber, reqVO.getUserNumber())//按学号查
+                .likeIfExists(DeptDO::getName,reqVO.getDeptName())//工作间名称
+                .eqIfExists(StudentAttendanceDO::getSupervisorId,reqVO.getSupervisorId())//导师查
+                .eqIfExists(StudentAttendanceDO::getDeptId, reqVO.getDeptId())
+                .eqIfExists(StudentAttendanceDO::getClockInStatus, reqVO.getClockInStatus())
+                .eqIfExists(StudentAttendanceDO::getDeptId, reqVO.getDeptId())
+                //1未打卡
+                .eqIfExists(StudentAttendanceDO::getClockInStatus,"2")
+                .orderByDesc(StudentAttendanceDO::getDate);//请假
+        return selectList(queryWrapperX);
+    }
+
     @Select("SELECT * FROM system_student_attendance WHERE user_number = #{userNumber} AND clock_in_time = #{clockTime}")
     @Select("SELECT * FROM system_student_attendance WHERE user_number = #{userNumber} AND clock_in_time = #{clockTime}")
     StudentAttendanceDO getStudentAttendanceOne(@Param("userNumber") String userNumber,
     StudentAttendanceDO getStudentAttendanceOne(@Param("userNumber") String userNumber,
                                                 @Param("clockTime") LocalDateTime clockTime);
                                                 @Param("clockTime") LocalDateTime clockTime);

+ 1 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/studentAttendance/StudentAttendanceService.java

@@ -70,6 +70,7 @@ public interface StudentAttendanceService {
 
 
     PageResult<StudentAttendanceDO> getStudentAttendanceExcusedPage(StudentAttendancePageReqVO pageReqVO);
     PageResult<StudentAttendanceDO> getStudentAttendanceExcusedPage(StudentAttendancePageReqVO pageReqVO);
     List<StudentAttendanceDO> getStudentAttendanceExcusedList(StudentAttendancePageReqVO pageReqVO);
     List<StudentAttendanceDO> getStudentAttendanceExcusedList(StudentAttendancePageReqVO pageReqVO);
+    List<StudentAttendanceDO> getStudentAttendanceExcusedListForTeacher(StudentAttendancePageReqVO pageReqVO);
 
 
     StudentAttendanceDO getStudentAttendanceOne(String userNumber,LocalDateTime clockTime);
     StudentAttendanceDO getStudentAttendanceOne(String userNumber,LocalDateTime clockTime);
 
 

+ 20 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/studentAttendance/StudentAttendanceServiceImpl.java

@@ -233,6 +233,26 @@ public class StudentAttendanceServiceImpl implements StudentAttendanceService {
         return result;
         return result;
     }
     }
 
 
+    @Override
+    public List<StudentAttendanceDO> getStudentAttendanceExcusedListForTeacher(StudentAttendancePageReqVO pageReqVO) {
+
+        List<StudentAttendanceDO> result =studentAttendanceMapper.selectExcusedListForTeacher(pageReqVO);
+
+        result.stream().forEach(attendanceDO-> {
+            if (attendanceDO.getSupervisorId()!=null){
+                AdminUserDO supervisorUser = adminUserService.getUser(attendanceDO.getSupervisorId());
+                if(supervisorUser != null){
+                    attendanceDO.setSupervisor(supervisorUser.getNickname());
+                }
+            }
+            if (attendanceDO.getDeptId()==null||attendanceDO.getDeptId()==0L){
+                attendanceDO.setDeptName("测绘学院");
+            }
+        });
+        return result;
+    }
+
+
    public StudentAttendanceDO getStudentAttendanceOne(String userNumber, LocalDateTime clockTime){
    public StudentAttendanceDO getStudentAttendanceOne(String userNumber, LocalDateTime clockTime){
         return studentAttendanceMapper.getStudentAttendanceOne(userNumber,clockTime);
         return studentAttendanceMapper.getStudentAttendanceOne(userNumber,clockTime);
     }
     }