Jelajahi Sumber

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

yonge 4 tahun lalu
induk
melakukan
1a58af7838

+ 0 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -1658,7 +1658,6 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
         classGroup.setName(classGroup4MixDtos.get(0).getClassGroupName());
         classGroup.setExpectStudentNum(studentList.size());
         classGroup.setStudentNum(studentList.size());
-        classGroup.setExpectStudentNum(classGroup4MixDtos.get(0).getExpectStudentNum());
         classGroup.setType(classGroup4MixDtos.get(0).getType());
         classGroup.setDelFlag(0);
         classGroup.setGroupType(GroupType.MUSIC);

+ 10 - 3
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupStudentMapperServiceImpl.java

@@ -384,15 +384,22 @@ public class ClassGroupStudentMapperServiceImpl extends BaseServiceImpl<Long, Cl
         addStudentIds = allStudentIds.stream().filter(id -> !repeatStudentIds.contains(id)).collect(Collectors.toSet());
         removeStudentIds = oldNormalStudentIds.stream().filter(id -> !repeatStudentIds.contains(id)).collect(Collectors.toSet());
 
+        List<ClassGroupStudentMapper> needUpdateClassGroupStudents = new ArrayList<>();
+
         for (ClassGroupStudentMapper classGroupStudent : classGroupStudents) {
-            if(addStudentIds.contains(classGroupStudent.getUserId())){
+            if(addStudentIds.contains(classGroupStudent.getUserId())&&!classGroupStudent.getStatus().equals(ClassGroupStudentStatusEnum.NORMAL)){
                 classGroupStudent.setStatus(ClassGroupStudentStatusEnum.NORMAL);
-            }else if(removeStudentIds.contains(classGroupStudent.getUserId())){
+            }else if(removeStudentIds.contains(classGroupStudent.getUserId())&&!classGroupStudent.getStatus().equals(ClassGroupStudentStatusEnum.QUIT)){
                 classGroupStudent.setStatus(ClassGroupStudentStatusEnum.QUIT);
+            }else{
+                continue;
             }
+            needUpdateClassGroupStudents.add(classGroupStudent);
         }
 
-        classGroupStudentMapperDao.batchUpdate(classGroupStudents);
+        if(!CollectionUtils.isEmpty(needUpdateClassGroupStudents)){
+            classGroupStudentMapperDao.batchUpdate(needUpdateClassGroupStudents);
+        }
 
         Date now = new Date();
         List<ClassGroupStudentMapper> classGroupStudentMappers = new ArrayList<>();

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderCourseSettingsServiceImpl.java

@@ -37,6 +37,9 @@ public class MusicGroupPaymentCalenderCourseSettingsServiceImpl extends BaseServ
 		Map<CourseSchedule.CourseScheduleType, List<MusicGroupPaymentStudentCourseDetail>> courseTypeDetailsMap = mgpscds.stream().collect(Collectors.groupingBy(MusicGroupPaymentStudentCourseDetail::getCourseType));
 		for (Map.Entry<CourseSchedule.CourseScheduleType, List<MusicGroupPaymentStudentCourseDetail>> courseTypeDetailsEntry : courseTypeDetailsMap.entrySet()) {
 			Map<Integer, List<MusicGroupPaymentStudentCourseDetail>> userDetailsMap = courseTypeDetailsEntry.getValue().stream().collect(Collectors.groupingBy(MusicGroupPaymentStudentCourseDetail::getUserId));
+			if(CollectionUtils.isEmpty(userDetailsMap)||userDetailsMap.keySet().size()!=studentIds.size()){
+				continue;
+			}
 			List<MusicGroupPaymentStudentCourseDetail> details = new ArrayList<>();
 			for (Map.Entry<Integer, List<MusicGroupPaymentStudentCourseDetail>> userDetailsEntry : userDetailsMap.entrySet()) {
 				details.add(userDetailsEntry.getValue().stream().min(Comparator.comparing(MusicGroupPaymentStudentCourseDetail::getId)).get());

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -367,7 +367,7 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
 			musicGroupPaymentCalender.setDeadlinePaymentDate(DateUtil.addDays(musicGroupPaymentCalender.getStartPaymentDate(), 3));
 		}
 		int count = musicGroupPaymentCalenderDao.queryIntersectionByValidDate(musicGroupId, musicGroupPaymentCalender.getPayUserType(), musicGroupPaymentCalender.getPaymentValidStartDate(),
-				musicGroupPaymentCalender.getPaymentValidEndDate(), null);
+				musicGroupPaymentCalender.getPaymentValidEndDate(), musicGroupPaymentCalender.getId());
 		if (count > 0) {
 			throw new BizException("缴费有效期存在冲突,请修改缴费有效期");
 		}