|
@@ -47,6 +47,8 @@ import java.time.temporal.WeekFields;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
+import static com.ym.mec.biz.dal.enums.SignInStatusEnum.*;
|
|
|
|
+
|
|
@Service
|
|
@Service
|
|
public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGroup> implements PracticeGroupService {
|
|
public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGroup> implements PracticeGroupService {
|
|
|
|
|
|
@@ -2155,9 +2157,9 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
|
|
int count = dataList.size();
|
|
int count = dataList.size();
|
|
if (count > 0) {
|
|
if (count > 0) {
|
|
pageInfo.setTotal(count);
|
|
pageInfo.setTotal(count);
|
|
- List<Long> courseScheduleIds = dataList.stream()
|
|
|
|
- .map(courseSchedule -> courseSchedule.getId())
|
|
|
|
- .distinct().collect(Collectors.toList());
|
|
|
|
|
|
+ List<Long> courseScheduleIds = dataList.stream().map(courseSchedule -> courseSchedule.getId()).distinct().collect(Collectors.toList());
|
|
|
|
+ List<TeacherAttendance> teacherAttendances = teacherAttendanceDao.findTeacherIdByCourseSchedule(courseScheduleIds);
|
|
|
|
+ Map<Long, List<TeacherAttendance>> courseTeacherAttendanceMap = teacherAttendances.stream().collect(Collectors.groupingBy(TeacherAttendance::getCourseScheduleId));
|
|
List<Map<Long, Integer>> courseSettlementMaps = courseScheduleTeacherSalaryDao.checkCoursesIsSettlement(courseScheduleIds);
|
|
List<Map<Long, Integer>> courseSettlementMaps = courseScheduleTeacherSalaryDao.checkCoursesIsSettlement(courseScheduleIds);
|
|
Map<Long, Long> courseSettlementMap = MapUtil.convertIntegerMap(courseSettlementMaps);
|
|
Map<Long, Long> courseSettlementMap = MapUtil.convertIntegerMap(courseSettlementMaps);
|
|
Map<Integer, Long> studentNumCourseMap = MapUtil.convertIntegerMap(studentAttendanceDao.countStudentAttendancesByCourses(courseScheduleIds));
|
|
Map<Integer, Long> studentNumCourseMap = MapUtil.convertIntegerMap(studentAttendanceDao.countStudentAttendancesByCourses(courseScheduleIds));
|
|
@@ -2178,6 +2180,16 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
|
|
} else {
|
|
} else {
|
|
e.setIsCallNames(YesOrNoEnum.NO);
|
|
e.setIsCallNames(YesOrNoEnum.NO);
|
|
}
|
|
}
|
|
|
|
+ List<TeacherAttendance> courseTeacherAttendances = courseTeacherAttendanceMap.get(e.getId());
|
|
|
|
+ if(!CollectionUtils.isEmpty(courseTeacherAttendances)){
|
|
|
|
+ TeacherAttendance teacherAttendance=courseTeacherAttendances.get(0);
|
|
|
|
+ e.setIsSignIn(Objects.isNull(teacherAttendance.getSignInStatus())?3:teacherAttendance.getSignInStatus().getCode());
|
|
|
|
+ e.setIsSignOut(Objects.isNull(teacherAttendance.getSignOutStatus())?3:teacherAttendance.getSignOutStatus().getCode());
|
|
|
|
+ e.setSignInStatusEnum(e.getIsSignIn() == 1?NORMAL:e.getIsSignIn() == 0?UNUSUAL:NO);
|
|
|
|
+ e.setSignOutStatusEnum(e.getIsSignOut() == 1?SignOutStatusEnum.NORMAL:e.getIsSignOut() == 0? SignOutStatusEnum.UNUSUAL: SignOutStatusEnum.NO);
|
|
|
|
+ e.setSignInTime(teacherAttendance.getSignInTime());
|
|
|
|
+ e.setSignOutTime(teacherAttendance.getSignOutTime());
|
|
|
|
+ }
|
|
});
|
|
});
|
|
}
|
|
}
|
|
pageInfo.setRows(dataList);
|
|
pageInfo.setRows(dataList);
|