|
@@ -330,32 +330,28 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
|
|
|
params.put("offset", pageInfo.getOffset());
|
|
|
teacherCourseGroups = coursesGroupDao.findTeacherCourseGroupsWithWeb(params);
|
|
|
List<String> groupIds = teacherCourseGroups.stream().map(e -> String.valueOf(e.getId())).collect(Collectors.toList());
|
|
|
- List<BaseMapDto<String, Long>> groupStudentNums = groupDao.countGroupStudentNum(groupIds, GroupType.COMM);
|
|
|
- Map<String, Long> groupStudentNumMap = groupStudentNums.stream().collect(Collectors.toMap(BaseMapDto::getKey, BaseMapDto::getValue));
|
|
|
- List<BaseMapDto<String, Long>> groupTotalClassesTimes = groupDao.countGroupTotalClassesTimes(groupIds, GroupType.COMM);
|
|
|
- Map<String, Long> groupTotalClassesTimesMap = groupTotalClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, e->e.getValue()));
|
|
|
- List<BaseMapDto<String, Long>> groupFinishedClassesTimes = groupDao.countGroupFinishedClassesTimes(groupIds, GroupType.COMM);
|
|
|
- Map<String, Long> groupFinishedClassesTimesMap = groupFinishedClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, e->e.getValue()));
|
|
|
- List<BaseMapDto<String, String>> groupsFirstClassesTimes = groupDao.findGroupsFirstClassesTime(groupIds, GroupType.COMM);
|
|
|
- Map<String, String> groupsFirstClassesTimeMap = groupsFirstClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, BaseMapDto::getValue));
|
|
|
- List<BaseMapDto<String, String>> groupsLastClassesTimes = groupDao.findGroupsLastClassesTime(groupIds, GroupType.COMM);
|
|
|
- Map<String, String> groupsLastClassesTimeMap = groupsLastClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, BaseMapDto::getValue));
|
|
|
+ List<GroupBaseCourseInfoDto> groupStudentNums = groupDao.countGroupStudentNum(groupIds, GroupType.COMM);
|
|
|
+ Map<String, Integer> groupStudentNumMap = groupStudentNums.stream().collect(Collectors.toMap(GroupBaseCourseInfoDto::getId, GroupBaseCourseInfoDto::getStudentNum));
|
|
|
+
|
|
|
+ List<GroupBaseCourseInfoDto> groupTotalClassesTimes = groupDao.countGroupTotalClassesTimes(groupIds, GroupType.COMM);
|
|
|
+ Map<String, GroupBaseCourseInfoDto> groupBaseCourseInfoMap = groupTotalClassesTimes.stream().collect(Collectors.toMap(GroupBaseCourseInfoDto::getId, e->e));
|
|
|
+
|
|
|
+ List<GroupBaseCourseInfoDto> groupFinishedClassesTimes = groupDao.countGroupFinishedClassesTimes(groupIds, GroupType.COMM);
|
|
|
+ Map<String, Integer> groupFinishedClassesTimesMap = groupFinishedClassesTimes.stream().collect(Collectors.toMap(GroupBaseCourseInfoDto::getId, e->e.getCurrentClassTimes()));
|
|
|
+
|
|
|
for (CourseGroupExtendDto teacherCourseGroup : teacherCourseGroups) {
|
|
|
if(Objects.nonNull(groupStudentNumMap.get(teacherCourseGroup.getId().toString()))) {
|
|
|
teacherCourseGroup.setStudentNum(groupStudentNumMap.get(teacherCourseGroup.getId().toString()).intValue());
|
|
|
}
|
|
|
- if(Objects.nonNull(groupTotalClassesTimesMap.get(teacherCourseGroup.getId().toString()))) {
|
|
|
- teacherCourseGroup.setTotalClassTimes(groupTotalClassesTimesMap.get(teacherCourseGroup.getId().toString()).intValue());
|
|
|
+ GroupBaseCourseInfoDto groupBaseCourseInfo = groupBaseCourseInfoMap.get(teacherCourseGroup.getId().toString());
|
|
|
+ if(Objects.nonNull(groupBaseCourseInfo)){
|
|
|
+ teacherCourseGroup.setTotalClassTimes(groupBaseCourseInfo.getTotalClassTimes());
|
|
|
+ teacherCourseGroup.setFirstClassesStartTime(groupBaseCourseInfo.getFirstClassesStartTime());
|
|
|
+ teacherCourseGroup.setLastClassesEndTime(groupBaseCourseInfo.getLastClassesEndTime());
|
|
|
}
|
|
|
if(Objects.nonNull(groupFinishedClassesTimesMap.get(teacherCourseGroup.getId().toString()))) {
|
|
|
teacherCourseGroup.setCurrentClassTimes(groupFinishedClassesTimesMap.get(teacherCourseGroup.getId().toString()).intValue());
|
|
|
}
|
|
|
- if(Objects.nonNull(groupsFirstClassesTimeMap.get(teacherCourseGroup.getId().toString()))){
|
|
|
- teacherCourseGroup.setFirstClassesStartTime(DateUtil.stringToDate(groupsFirstClassesTimeMap.get(teacherCourseGroup.getId().toString()), "yyyy-MM-dd HH:mm:ss"));
|
|
|
- }
|
|
|
- if(Objects.nonNull(groupsLastClassesTimeMap.get(teacherCourseGroup.getId().toString()))){
|
|
|
- teacherCourseGroup.setLastClassesEndTime(DateUtil.stringToDate(groupsLastClassesTimeMap.get(teacherCourseGroup.getId().toString()), "yyyy-MM-dd HH:mm:ss"));
|
|
|
- }
|
|
|
if(Objects.nonNull(teacherCourseGroup.getTotalClassTimes())){
|
|
|
teacherCourseGroup.setGroupClassesTotalDuration(teacherCourseGroup.getSingleClassMinutes()*teacherCourseGroup.getTotalClassTimes());
|
|
|
}
|
|
@@ -382,16 +378,14 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
|
|
|
teacherCourseGroups = coursesGroupDao.findStudentCourseGroupsWithWeb(params);
|
|
|
List<Integer> teacherIds = teacherCourseGroups.stream().map(CourseGroupExtendDto::getTeacherId).collect(Collectors.toList());
|
|
|
List<String> groupIds = teacherCourseGroups.stream().map(e -> String.valueOf(e.getId())).collect(Collectors.toList());
|
|
|
- List<BaseMapDto<String, Long>> groupStudentNums = groupDao.countGroupStudentNum(groupIds, GroupType.COMM);
|
|
|
- Map<String, Long> groupStudentNumMap = groupStudentNums.stream().collect(Collectors.toMap(BaseMapDto::getKey, BaseMapDto::getValue));
|
|
|
- List<BaseMapDto<String, Long>> groupTotalClassesTimes = groupDao.countGroupTotalClassesTimes(groupIds, GroupType.COMM);
|
|
|
- Map<String, Long> groupTotalClassesTimesMap = groupTotalClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, e->e.getValue()));
|
|
|
- List<BaseMapDto<String, Long>> groupFinishedClassesTimes = groupDao.countGroupFinishedClassesTimes(groupIds, GroupType.COMM);
|
|
|
- Map<String, Long> groupFinishedClassesTimesMap = groupFinishedClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, e->e.getValue()));
|
|
|
- List<BaseMapDto<String, String>> groupsFirstClassesTimes = groupDao.findGroupsFirstClassesTime(groupIds, GroupType.COMM);
|
|
|
- Map<String, String> groupsFirstClassesTimeMap = groupsFirstClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, BaseMapDto::getValue));
|
|
|
- List<BaseMapDto<String, String>> groupsLastClassesTimes = groupDao.findGroupsLastClassesTime(groupIds, GroupType.COMM);
|
|
|
- Map<String, String> groupsLastClassesTimeMap = groupsLastClassesTimes.stream().collect(Collectors.toMap(BaseMapDto::getKey, BaseMapDto::getValue));
|
|
|
+ List<GroupBaseCourseInfoDto> groupStudentNums = groupDao.countGroupStudentNum(groupIds, GroupType.COMM);
|
|
|
+ Map<String, Integer> groupStudentNumMap = groupStudentNums.stream().collect(Collectors.toMap(GroupBaseCourseInfoDto::getId, GroupBaseCourseInfoDto::getStudentNum));
|
|
|
+
|
|
|
+ List<GroupBaseCourseInfoDto> groupTotalClassesTimes = groupDao.countGroupTotalClassesTimes(groupIds, GroupType.COMM);
|
|
|
+ Map<String, GroupBaseCourseInfoDto> groupBaseCourseInfoMap = groupTotalClassesTimes.stream().collect(Collectors.toMap(GroupBaseCourseInfoDto::getId, e->e));
|
|
|
+
|
|
|
+ List<GroupBaseCourseInfoDto> groupFinishedClassesTimes = groupDao.countGroupFinishedClassesTimes(groupIds, GroupType.COMM);
|
|
|
+ Map<String, Integer> groupFinishedClassesTimesMap = groupFinishedClassesTimes.stream().collect(Collectors.toMap(GroupBaseCourseInfoDto::getId, e->e.getCurrentClassTimes()));
|
|
|
|
|
|
List<SimpleUserDto> teachers = teacherDao.findSimpleTeachers(teacherIds);
|
|
|
Map<Integer, String> idNameMap = teachers.stream().collect(Collectors.toMap(SimpleUserDto::getUserId, SimpleUserDto::getUserName));
|
|
@@ -400,18 +394,15 @@ public class CoursesGroupServiceImpl extends BaseServiceImpl<Long, CoursesGroup>
|
|
|
if(Objects.nonNull(groupStudentNumMap.get(teacherCourseGroup.getId().toString()))) {
|
|
|
teacherCourseGroup.setStudentNum(groupStudentNumMap.get(teacherCourseGroup.getId().toString()).intValue());
|
|
|
}
|
|
|
- if(Objects.nonNull(groupTotalClassesTimesMap.get(teacherCourseGroup.getId().toString()))) {
|
|
|
- teacherCourseGroup.setTotalClassTimes(groupTotalClassesTimesMap.get(teacherCourseGroup.getId().toString()).intValue());
|
|
|
+ GroupBaseCourseInfoDto groupBaseCourseInfo = groupBaseCourseInfoMap.get(teacherCourseGroup.getId().toString());
|
|
|
+ if(Objects.nonNull(groupBaseCourseInfo)){
|
|
|
+ teacherCourseGroup.setTotalClassTimes(groupBaseCourseInfo.getTotalClassTimes());
|
|
|
+ teacherCourseGroup.setFirstClassesStartTime(groupBaseCourseInfo.getFirstClassesStartTime());
|
|
|
+ teacherCourseGroup.setLastClassesEndTime(groupBaseCourseInfo.getLastClassesEndTime());
|
|
|
}
|
|
|
if(Objects.nonNull(groupFinishedClassesTimesMap.get(teacherCourseGroup.getId().toString()))) {
|
|
|
teacherCourseGroup.setCurrentClassTimes(groupFinishedClassesTimesMap.get(teacherCourseGroup.getId().toString()).intValue());
|
|
|
}
|
|
|
- if(Objects.nonNull(groupsFirstClassesTimeMap.get(teacherCourseGroup.getId().toString()))){
|
|
|
- teacherCourseGroup.setFirstClassesStartTime(DateUtil.stringToDate(groupsFirstClassesTimeMap.get(teacherCourseGroup.getId().toString()), "yyyy-MM-dd HH:mm:ss"));
|
|
|
- }
|
|
|
- if(Objects.nonNull(groupsLastClassesTimeMap.get(teacherCourseGroup.getId().toString()))){
|
|
|
- teacherCourseGroup.setLastClassesEndTime(DateUtil.stringToDate(groupsLastClassesTimeMap.get(teacherCourseGroup.getId().toString()), "yyyy-MM-dd HH:mm:ss"));
|
|
|
- }
|
|
|
if(Objects.nonNull(teacherCourseGroup.getTotalClassTimes())){
|
|
|
teacherCourseGroup.setGroupClassesTotalDuration(teacherCourseGroup.getSingleClassMinutes()*teacherCourseGroup.getTotalClassTimes());
|
|
|
}
|