|
@@ -339,6 +339,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
String endClassTime = DateUtil.getDate(classDate) + " " + highClassGroup.getEndClassTime() + ":00";
|
|
|
|
|
|
courseSchedule.setSchoolId(schoolId);
|
|
|
+ courseSchedule.setMusicGroupId(highClassGroup.getMusicGroupId());
|
|
|
courseSchedule.setClassGroupId(highClassGroup.getId());
|
|
|
courseSchedule.setStatus(CourseStatusEnum.NOT_START);
|
|
|
courseSchedule.setClassDate(classDate);
|
|
@@ -414,7 +415,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
// List<Map<Integer, String>> names = vipGroupActivityDao.queryNamesById(StringUtils.join(activityIds, ","));
|
|
|
// Map<Integer, String> nameMap = MapUtil.convertMybatisMap(names);
|
|
|
//计算月度平均消耗值(已上课时 / 消耗月份)
|
|
|
- List<Long> vipGroupIds = dataList.stream().map(vipGroup -> vipGroup.getVipClassId()).collect(Collectors.toList());
|
|
|
+ List<String> vipGroupIds = dataList.stream().map(vipGroup -> String.valueOf(vipGroup.getVipClassId())).collect(Collectors.toList());
|
|
|
List<Map<Long, Integer>> vipGroupOverCourses = vipGroupDao.countVipGroupOverCourse(vipGroupIds);
|
|
|
Map<Long, Integer> vipGroupOverCourseMaps = MapUtil.convertIntegerMap(vipGroupOverCourses);
|
|
|
dataList.forEach(vipGroup -> {
|
|
@@ -778,13 +779,25 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
List<String> subjectIdsList = teacherMusicClassGroup.stream().map(teacherClassGroupDto -> teacherClassGroupDto.getSubjectIdList()).collect(Collectors.toList());
|
|
|
Map<Long, String> subjectMapBySubjectIdsList = subjectService.findSubjectMapBySubjectIdsList(subjectIdsList);
|
|
|
|
|
|
- List<Long> musicGroupIds = teacherMusicClassGroup.stream().map(teacherClassGroupDto -> teacherClassGroupDto.getMusicGroupId()).collect(Collectors.toList());
|
|
|
+ List<String> musicGroupIds = teacherMusicClassGroup.stream().map(teacherClassGroupDto -> String.valueOf(teacherClassGroupDto.getMusicGroupId())).collect(Collectors.toList());
|
|
|
+
|
|
|
+ List<Integer> classGroupIds = teacherMusicClassGroup.stream().map(teacherClassGroupDto -> teacherClassGroupDto.getClassGroupId().intValue()).collect(Collectors.toList());
|
|
|
+
|
|
|
+ //统计连续旷课的人数
|
|
|
List<Map<Long, Integer>> musicGroupIdAndNumList = musicGroupStudentFeeDao.countContinuosAbsenteeismStudentNum(musicGroupIds);
|
|
|
Map<Long, Integer> musicGroupIdAndNum = MapUtil.convertIntegerMap(musicGroupIdAndNumList);
|
|
|
|
|
|
List<Map<Long, Integer>> vipGroupOverCourses = vipGroupDao.countVipGroupOverCourse(musicGroupIds);
|
|
|
Map<Long, Integer> vipGroupOverCourseMaps = MapUtil.convertIntegerMap(vipGroupOverCourses);
|
|
|
|
|
|
+ List<ClassGroup> byClassGroupIds = classGroupDao.findByClassGroupIds(classGroupIds);
|
|
|
+ Map<Integer, ClassGroup> classGorupIdMap = byClassGroupIds.stream()
|
|
|
+ .collect(Collectors.toMap(ClassGroup::getId, classGroup -> classGroup));
|
|
|
+
|
|
|
+ //统计班级人数
|
|
|
+ List<Map<Integer, Integer>> classGroupStudentNumMaps = classGroupStudentMapperDao.countClassGroupsStudentNum(classGroupIds);
|
|
|
+ Map<Integer, Long> classGroupStudentNumMap = MapUtil.convertIntegerMap(classGroupStudentNumMaps);
|
|
|
+
|
|
|
teacherMusicClassGroup.forEach(teacherClassGroupDto -> {
|
|
|
|
|
|
if (teacherClassGroupDto.getType() == ClassGroupTypeEnum.VIP) {
|
|
@@ -815,6 +828,13 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
}
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ ClassGroup classGroup = classGorupIdMap.get(teacherClassGroupDto.getClassGroupId().intValue());
|
|
|
+
|
|
|
+ teacherClassGroupDto.setSurplusClassTimes(classGroup.getTotalClassTimes()-classGroup.getCurrentClassTimes());
|
|
|
+ Long studentNum=classGroupStudentNumMap.get(teacherClassGroupDto.getClassGroupId().intValue());
|
|
|
+ teacherClassGroupDto.setStudentNum(Objects.isNull(studentNum)?0:studentNum.intValue());
|
|
|
+
|
|
|
String subjectIdList = teacherClassGroupDto.getSubjectIdList();
|
|
|
if (StringUtils.isNotEmpty(subjectIdList)) {
|
|
|
if (Objects.nonNull(musicGroupIdAndNum) && Objects.nonNull(musicGroupIdAndNum.get(teacherClassGroupDto.getMusicGroupId()))) {
|
|
@@ -860,7 +880,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
}
|
|
|
|
|
|
TeacherClassHeadInfo teacherClassHeadInfo = new TeacherClassHeadInfo();
|
|
|
- teacherClassHeadInfo.setStudentNum(classGroup.getStudentNum());
|
|
|
+ teacherClassHeadInfo.setStudentNum(classGroupStudentMapperDao.countClassGroupStudentNum(classGroup.getId()));
|
|
|
teacherClassHeadInfo.setCurrentClassTimes(classGroup.getCurrentClassTimes());
|
|
|
teacherClassHeadInfo.setTotalClassTimes(classGroup.getTotalClassTimes());
|
|
|
ClassGroupTeacherMapper bishopTeacher = classGroupTeacherMapperDao.findByClassGroupAndRole(classGroupId, TeachTypeEnum.BISHOP);
|