Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 5 năm trước cách đây
mục cha
commit
037181156c

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentAttendanceServiceImpl.java

@@ -336,6 +336,9 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 			dataList = courseScheduleStudentPaymentDao.findStudentByClassGroup(params);
 			//学生编号列表
 			List<Integer> userIds = dataList.stream().map(StudentAttendanceStatisticsResponse::getUserId).collect(Collectors.toList());
+			//学生-旷课次数关联集合
+			List<Map<Integer, Integer>> continuousAbsenteeismTimesByUsersAndMusicGroup = musicGroupStudentFeeDao.findContinuousAbsenteeismTimesByUsersAndMusicGroup(classGroup.getMusicGroupId(), userIds);
+			Map<Integer,Integer> continuousAbsenteeismTimesWithUser=MapUtil.convertIntegerMap(continuousAbsenteeismTimesByUsersAndMusicGroup);
 			//学生签到记录列表
 			List<StudentAttendanceResponse> studentAttendances = studentAttendanceDao.findByClassGroupAndUsers(queryInfo.getClassGroupId(), userIds);
 			//学生签到状态统计列表
@@ -347,6 +350,13 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 				Map<Integer, List<StudentAttendanceResponse>> studentAttendanceByUser = studentAttendances.stream().collect(Collectors.groupingBy(StudentAttendanceResponse::getUserId));
 
 				dataList.forEach(student->{
+					//判断是否是连续签到
+					Integer continuousAbsenteeismTimes = continuousAbsenteeismTimesWithUser.get(student.getUserId());
+					if(Objects.nonNull(continuousAbsenteeismTimes)){
+						if(continuousAbsenteeismTimes>=3){
+							student.setTruant(true);
+						}
+					}
 					//当前学生的签到状态统计
 					List<StudentAttendanceStatusCountDto> currentStudentAttendanceStatusCountDtos = studentAttendanceStatusCountDtosByUser.get(student.getUserId());
 					if(!CollectionUtils.isEmpty(currentStudentAttendanceStatusCountDtos)){

+ 1 - 1
mec-biz/src/main/resources/config/mybatis/CourseScheduleStudentPaymentMapper.xml

@@ -153,7 +153,7 @@
 	<select id="findStudentByClassGroup" resultMap="StudentAttendanceStatisticsResp">
 		SELECT
 			cssp.user_id_,
-			su.real_name_
+			su.username_
 		FROM
 			course_schedule_student_payment cssp
 			LEFT JOIN sys_user su ON cssp.user_id_ = su.id_