|
@@ -80,6 +80,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
@Autowired
|
|
|
private CourseScheduleTeacherSalaryDao courseScheduleTeacherSalaryDao;
|
|
|
@Autowired
|
|
|
+ private StudentAttendanceDao studentAttendanceDao;
|
|
|
+ @Autowired
|
|
|
private CourseScheduleTeacherSalaryService courseScheduleTeacherSalaryService;
|
|
|
@Autowired
|
|
|
private StudentRegistrationService studentRegistrationService;
|
|
@@ -106,6 +108,8 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
private SubjectDao subjectDao;
|
|
|
@Autowired
|
|
|
private GroupDao groupDao;
|
|
|
+ @Autowired
|
|
|
+ private CourseScheduleEvaluateDao courseScheduleEvaluateDao;
|
|
|
|
|
|
@Override
|
|
|
public BaseDAO<Integer, ClassGroup> getDAO() {
|
|
@@ -975,7 +979,13 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
}
|
|
|
//剩余课程为显示陪练报告入口rul
|
|
|
if(teacherClassGroupDto.getType() == ClassGroupTypeEnum.PRACTICE){
|
|
|
- if(classGroupNoStartClassTimes.intValue()==0 && classGroupTeacherMap.get(teacherClassGroupDto.getClassGroupId().intValue()).equals(user.getId())){
|
|
|
+ List<CourseScheduleEvaluate> courseScheduleEvaluates = courseScheduleEvaluateDao.findByClassGroupIds(classGroupIds);
|
|
|
+ Map<Integer, Long> reportMap = courseScheduleEvaluates.stream().collect(Collectors.toMap(CourseScheduleEvaluate::getClassGroupId, CourseScheduleEvaluate::getId));
|
|
|
+ if(reportMap.containsKey(teacherClassGroupDto.getClassGroupId().intValue())){
|
|
|
+ teacherClassGroupDto.setHasReport(true);
|
|
|
+ String studyReportUrl = sysConfigDao.findConfigValue(SysConfigService.TEACHER_STUDY_REPORT_URL);
|
|
|
+ teacherClassGroupDto.setStudyReportUrl(studyReportUrl+teacherClassGroupDto.getClassGroupId());
|
|
|
+ }else if(classGroupNoStartClassTimes.intValue()==0 && classGroupTeacherMap.get(teacherClassGroupDto.getClassGroupId().intValue()).equals(user.getId())){
|
|
|
String studyReportUrl = sysConfigDao.findConfigValue(SysConfigService.TEACHER_STUDY_REPORT_URL);
|
|
|
teacherClassGroupDto.setStudyReportUrl(studyReportUrl+teacherClassGroupDto.getClassGroupId());
|
|
|
}
|
|
@@ -2026,25 +2036,28 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
// Set<Integer> mixClassGroupIds = dataList.stream().map(e -> e.getMixClassGroupId()).collect(Collectors.toSet());
|
|
|
// String mixClassGroupIdsStr = StringUtils.join(mixClassGroupIds, ",");
|
|
|
//所有课程编号的列表
|
|
|
- List<Integer> couseScheduleIds = dataList.stream().map(MusicGroupCourseScheduleDto::getCourseScheduleId).distinct().collect(Collectors.toList());
|
|
|
+ List<Integer> courseScheduleIds = dataList.stream().map(MusicGroupCourseScheduleDto::getCourseScheduleId).distinct().collect(Collectors.toList());
|
|
|
//获取合奏班名称
|
|
|
// Map<Integer, String> classGroupNames = MapUtil.convertMybatisMap(classGroupDao.findNameById(mixClassGroupIdsStr));
|
|
|
|
|
|
//主教老师
|
|
|
Map<Long, List<CourseScheduleTeacherSalary>> courseScheduleBishopTeacherMaps=new HashMap<>();
|
|
|
|
|
|
+ //是否点名
|
|
|
+ Map<Integer, Long> studentNumCourseMap = MapUtil.convertIntegerMap(studentAttendanceDao.countStudentAttendancesByCourses(courseScheduleIds));
|
|
|
//助教老师
|
|
|
Map<Long, List<CourseScheduleTeacherSalary>> courseScheduleTeachingTeacherMaps=new HashMap<>();
|
|
|
- if(!CollectionUtils.isEmpty(couseScheduleIds)){
|
|
|
- List<CourseScheduleTeacherSalary> bishopTeachers = courseScheduleTeacherSalaryDao.findByCourseScheduleIdsAndTeacherRole(couseScheduleIds, "BISHOP");
|
|
|
+ if(!CollectionUtils.isEmpty(courseScheduleIds)){
|
|
|
+ List<CourseScheduleTeacherSalary> bishopTeachers = courseScheduleTeacherSalaryDao.findByCourseScheduleIdsAndTeacherRole(courseScheduleIds, "BISHOP");
|
|
|
courseScheduleBishopTeacherMaps = bishopTeachers.stream().collect(Collectors.groupingBy(CourseScheduleTeacherSalary::getCourseScheduleId));
|
|
|
|
|
|
//助教老师
|
|
|
- List<CourseScheduleTeacherSalary> teachingTeachers = courseScheduleTeacherSalaryDao.findByCourseScheduleIdsAndTeacherRole(couseScheduleIds, "TEACHING");
|
|
|
+ List<CourseScheduleTeacherSalary> teachingTeachers = courseScheduleTeacherSalaryDao.findByCourseScheduleIdsAndTeacherRole(courseScheduleIds, "TEACHING");
|
|
|
courseScheduleTeachingTeacherMaps = teachingTeachers.stream().collect(Collectors.groupingBy(CourseScheduleTeacherSalary::getCourseScheduleId));
|
|
|
}
|
|
|
-
|
|
|
+ MusicGroupCourseScheduleDto scheduleDto = null;
|
|
|
for(int i=0;i<dataList.size();i++){
|
|
|
+ scheduleDto = dataList.get(i);
|
|
|
// e.setMixClassGroupName(classGroupNames.get(e.getMixClassGroupId()));
|
|
|
List<CourseScheduleTeacherSalary> currentBishopTeacher = courseScheduleBishopTeacherMaps.get(dataList.get(i).getCourseScheduleId().longValue());
|
|
|
List<CourseScheduleTeacherSalary> TeachingTeachers = new ArrayList<>();
|
|
@@ -2062,6 +2075,12 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
|
|
|
TeachingTeachers.addAll(currentCourseTeachingTeachers);
|
|
|
dataList.get(i).setTeachingTeachers(TeachingTeachers);
|
|
|
dataList.get(i).setTeacherNum(TeachingTeachers.size());
|
|
|
+ Long studentNum = studentNumCourseMap.get(scheduleDto.getCourseScheduleId());
|
|
|
+ if (Objects.nonNull(studentNum)) {
|
|
|
+ scheduleDto.setIsCallNames(studentNum > 0 ? YesOrNoEnum.YES : YesOrNoEnum.NO);
|
|
|
+ } else {
|
|
|
+ scheduleDto.setIsCallNames(YesOrNoEnum.NO);
|
|
|
+ }
|
|
|
/*if (CollectionUtils.isEmpty(currentCourseTeachingTeachers) && !CollectionUtils.isEmpty(currentBishopTeacher)) {
|
|
|
currentCourseTeachingTeachers = new ArrayList<>();
|
|
|
if (currentBishopTeacher != null) {
|