|
@@ -5357,7 +5357,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
}
|
|
|
courseScheduleDao.batchUpdate(mergeCourses);
|
|
|
|
|
|
- courseScheduleStudentPaymentDao.batchUpdate(updatePayments);
|
|
|
+ if(!CollectionUtils.isEmpty(updatePayments)){
|
|
|
+ courseScheduleStudentPaymentDao.batchUpdate(updatePayments);
|
|
|
+ }
|
|
|
if(!CollectionUtils.isEmpty(newPayments))
|
|
|
courseScheduleStudentPaymentDao.batchInsert(newPayments);
|
|
|
|
|
@@ -5370,7 +5372,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public void mergeCourseSplit(Long mainCourseId) {
|
|
|
+ public void mergeCourseSplit(Long mainCourseId, Integer operatorId) {
|
|
|
List<CourseSchedule> courseSchedules = courseScheduleDao.findByMainMergeCourse(mainCourseId);
|
|
|
if(CollectionUtils.isEmpty(courseSchedules)){
|
|
|
throw new BizException("未找到相关合并课程信息");
|
|
@@ -5382,8 +5384,6 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
throw new BizException("已结束的主课暂不支持此操作");
|
|
|
}
|
|
|
|
|
|
- courseScheduleDao.cleanCoursMergeId(courseIds);
|
|
|
-
|
|
|
List<CourseScheduleStudentPayment> courseScheduleStudentPayments = courseScheduleStudentPaymentDao.findByMainMergedCourse(mainCourseId);
|
|
|
Map<Integer, CourseScheduleStudentPayment> studentMainCoursePaymentMap = courseScheduleStudentPayments.stream().filter(c -> c.getCourseScheduleId().equals(mainCourseId)).collect(Collectors.toMap(CourseScheduleStudentPayment::getUserId, c -> c, (c1, c2) -> c1));
|
|
|
|
|
@@ -5392,9 +5392,13 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
List<Integer> deletePaymentIds = new ArrayList<>();
|
|
|
List<CourseScheduleStudentPayment> updatePayments = new ArrayList<>();
|
|
|
|
|
|
+ otherCoursePayments.sort(Comparator.comparing(CourseScheduleStudentPayment::getCreateTime).reversed());
|
|
|
for (CourseScheduleStudentPayment otherCoursePayment : otherCoursePayments) {
|
|
|
CourseScheduleStudentPayment mainCoursePayment = studentMainCoursePaymentMap.get(otherCoursePayment.getUserId());
|
|
|
- if(Objects.nonNull(mainCoursePayment.getBeMerged())&&mainCoursePayment.getBeMerged()){
|
|
|
+ if(Objects.isNull(mainCoursePayment.getBeMerged())){
|
|
|
+ throw new BizException("当前课程暂不支持此操作");
|
|
|
+ }
|
|
|
+ if(mainCoursePayment.getBeMerged()){
|
|
|
deletePaymentIds.add(mainCoursePayment.getId().intValue());
|
|
|
continue;
|
|
|
}
|
|
@@ -5413,11 +5417,16 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
|
|
|
courseScheduleModifyLog.setPreviousCourseSchedule(JsonUtil.toJSONString(courseSchedule));
|
|
|
|
|
|
//课程信息变更
|
|
|
- courseSchedule.setNewCourseId(courseSchedule.getId());
|
|
|
+ courseSchedule.setNote("合并课程还原");
|
|
|
|
|
|
courseScheduleModifyLog.setCurrentCourseSchedule(JsonUtil.toJSONString(courseSchedule));
|
|
|
-// courseScheduleModifyLog.setOperatorId(courseMergeInfo.getOperatorId());
|
|
|
+ courseScheduleModifyLog.setOperatorId(operatorId);
|
|
|
insertCourseScheduleModifyLogList.add(courseScheduleModifyLog);
|
|
|
}
|
|
|
+ courseScheduleDao.batchUpdate(courseSchedules);
|
|
|
+ courseScheduleDao.cleanCoursMergeId(courseIds);
|
|
|
+ if (insertCourseScheduleModifyLogList.size() > 0) {
|
|
|
+ courseScheduleModifyLogDao.batchInsert(insertCourseScheduleModifyLogList);
|
|
|
+ }
|
|
|
}
|
|
|
}
|