|
@@ -2,10 +2,8 @@ package com.ym.mec.biz.service.impl;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
import java.time.DayOfWeek;
|
|
import java.time.DayOfWeek;
|
|
-import java.time.Instant;
|
|
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
-import java.time.ZoneId;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.Arrays;
|
|
import java.util.Arrays;
|
|
import java.util.Comparator;
|
|
import java.util.Comparator;
|
|
@@ -20,7 +18,6 @@ import java.util.Optional;
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
-import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -59,6 +56,7 @@ import com.ym.mec.biz.dal.enums.IndexDataType;
|
|
import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
|
|
import com.ym.mec.biz.dal.enums.MusicGroupStatusEnum;
|
|
import com.ym.mec.biz.dal.enums.TeachTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.TeachTypeEnum;
|
|
import com.ym.mec.biz.dal.enums.YesOrNoEnum;
|
|
import com.ym.mec.biz.dal.enums.YesOrNoEnum;
|
|
|
|
+import com.ym.mec.biz.service.StudentExtracurricularExercisesSituationService;
|
|
import com.ym.mec.biz.service.StudentServeService;
|
|
import com.ym.mec.biz.service.StudentServeService;
|
|
import com.ym.mec.biz.service.SysConfigService;
|
|
import com.ym.mec.biz.service.SysConfigService;
|
|
import com.ym.mec.biz.service.SysTenantConfigService;
|
|
import com.ym.mec.biz.service.SysTenantConfigService;
|
|
@@ -373,6 +371,8 @@ public class StudentServeServiceImpl implements StudentServeService {
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ Map<String,List<Integer>> musicGroupStudentMap = studentRegistrationList.stream().collect(Collectors.groupingBy(StudentRegistration :: getMusicGroupId, Collectors.mapping(StudentRegistration :: getUserId, Collectors.toList())));
|
|
|
|
+
|
|
List<Integer> studentIds = studentRegistrationList.stream().map(t -> t.getUserId()).distinct().collect(Collectors.toList());
|
|
List<Integer> studentIds = studentRegistrationList.stream().map(t -> t.getUserId()).distinct().collect(Collectors.toList());
|
|
|
|
|
|
Set<String> holidayDays = new HashSet<>();
|
|
Set<String> holidayDays = new HashSet<>();
|
|
@@ -456,12 +456,15 @@ public class StudentServeServiceImpl implements StudentServeService {
|
|
Set<Long> courseIdList = null;
|
|
Set<Long> courseIdList = null;
|
|
ClassGroupTypeEnum teacherType;
|
|
ClassGroupTypeEnum teacherType;
|
|
Map<Integer,Integer> teacherCourseNumMap = null;
|
|
Map<Integer,Integer> teacherCourseNumMap = null;
|
|
|
|
+ List<Integer> musicGroupStudentIdList = null;
|
|
|
|
|
|
//理论上一个学生一个乐团只布置一次作业
|
|
//理论上一个学生一个乐团只布置一次作业
|
|
for (Entry<String, List<Integer>> entry : musicGroupStudentIdListMap.entrySet()) {
|
|
for (Entry<String, List<Integer>> entry : musicGroupStudentIdListMap.entrySet()) {
|
|
|
|
|
|
musicGroupId = entry.getKey();
|
|
musicGroupId = entry.getKey();
|
|
|
|
|
|
|
|
+ musicGroupStudentIdList = musicGroupStudentMap.get(musicGroupId);
|
|
|
|
+
|
|
MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
|
|
MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
|
|
if(musicGroup == null || musicGroup.getStatus() != MusicGroupStatusEnum.PROGRESS){
|
|
if(musicGroup == null || musicGroup.getStatus() != MusicGroupStatusEnum.PROGRESS){
|
|
continue;
|
|
continue;
|
|
@@ -477,6 +480,11 @@ public class StudentServeServiceImpl implements StudentServeService {
|
|
userCourseMap = musicGroupStudentCurrentWeekCourseMap.get(musicGroupId);
|
|
userCourseMap = musicGroupStudentCurrentWeekCourseMap.get(musicGroupId);
|
|
|
|
|
|
for(Integer studentId : entry.getValue()){
|
|
for(Integer studentId : entry.getValue()){
|
|
|
|
+
|
|
|
|
+ if(musicGroupStudentIdList == null || musicGroupStudentIdList.contains(studentId) == false){
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+
|
|
//在当前乐团,学生本周是否有课
|
|
//在当前乐团,学生本周是否有课
|
|
if(userCourseMap == null || userCourseMap.get(studentId) == null){//如果本周没课
|
|
if(userCourseMap == null || userCourseMap.get(studentId) == null){//如果本周没课
|
|
|
|
|