|
@@ -46,9 +46,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
@Autowired
|
|
@Autowired
|
|
private MusicGroupPaymentCalenderService musicGroupPaymentCalenderService;
|
|
private MusicGroupPaymentCalenderService musicGroupPaymentCalenderService;
|
|
@Autowired
|
|
@Autowired
|
|
- private MusicGroupPaymentCalenderCourseSettingsDao musicGroupPaymentCalenderCourseSettingsDao;
|
|
|
|
- @Autowired
|
|
|
|
- private MusicGroupPaymentStudentCourseDetailDao musicGroupPaymentStudentCourseDetailDao;
|
|
|
|
|
|
+ private MusicGroupPaymentStudentCourseDetailService musicGroupPaymentStudentCourseDetailService;
|
|
@Autowired
|
|
@Autowired
|
|
private MusicGroupDao musicGroupDao;
|
|
private MusicGroupDao musicGroupDao;
|
|
@Autowired
|
|
@Autowired
|
|
@@ -70,8 +68,6 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
@Autowired
|
|
@Autowired
|
|
private StudentPaymentOrderDao studentPaymentOrderDao;
|
|
private StudentPaymentOrderDao studentPaymentOrderDao;
|
|
@Autowired
|
|
@Autowired
|
|
- private StudentDao studentDao;
|
|
|
|
- @Autowired
|
|
|
|
private VipGroupActivityDao vipGroupActivityDao;
|
|
private VipGroupActivityDao vipGroupActivityDao;
|
|
@Autowired
|
|
@Autowired
|
|
private OperatingReportCloudService operatingReportCloudService;
|
|
private OperatingReportCloudService operatingReportCloudService;
|
|
@@ -215,11 +211,9 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
throw new BizException("操作失败:包含已存在的学员");
|
|
throw new BizException("操作失败:包含已存在的学员");
|
|
}
|
|
}
|
|
|
|
|
|
- List<MusicGroupPaymentCalenderCourseSettings> courseSettingsList = musicGroupPaymentCalenderCourseSettingsDao.getWithPaymentCalender(musicGroupPaymentCalenderId);
|
|
|
|
-
|
|
|
|
Date date = new Date();
|
|
Date date = new Date();
|
|
MusicGroupPaymentCalenderDetail musicGroupPaymentCalenderDetail = null;
|
|
MusicGroupPaymentCalenderDetail musicGroupPaymentCalenderDetail = null;
|
|
- Map<Integer, Long> userMap = new HashMap<>();
|
|
|
|
|
|
+ Map<Integer, Long> userCalenderDetailMap = new HashMap<>();
|
|
Map<Integer, Integer> activityuserMap = new HashMap<>();
|
|
Map<Integer, Integer> activityuserMap = new HashMap<>();
|
|
List<MusicGroupPaymentCalenderDetail> musicGroupPaymentCalenderDetailList = new ArrayList<>();
|
|
List<MusicGroupPaymentCalenderDetail> musicGroupPaymentCalenderDetailList = new ArrayList<>();
|
|
//创建缴费明细
|
|
//创建缴费明细
|
|
@@ -300,7 +294,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
|
|
|
|
if (musicGroupPaymentCalenderDetailList.size() > 0) {
|
|
if (musicGroupPaymentCalenderDetailList.size() > 0) {
|
|
musicGroupPaymentCalenderDetailDao.batchInsert(musicGroupPaymentCalenderDetailList);
|
|
musicGroupPaymentCalenderDetailDao.batchInsert(musicGroupPaymentCalenderDetailList);
|
|
- musicGroupPaymentCalenderDetailList.stream().forEach(e -> userMap.put(e.getUserId(), e.getId()));
|
|
|
|
|
|
+ musicGroupPaymentCalenderDetailList.stream().forEach(e -> userCalenderDetailMap.put(e.getUserId(), e.getId()));
|
|
}
|
|
}
|
|
//更新预计缴费人数
|
|
//更新预计缴费人数
|
|
musicGroupPaymentCalender.setExpectNum(musicGroupPaymentCalender.getExpectNum() + userIdList.size());
|
|
musicGroupPaymentCalender.setExpectNum(musicGroupPaymentCalender.getExpectNum() + userIdList.size());
|
|
@@ -309,43 +303,9 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
musicGroupPaymentCalender.setActualNum(musicGroupPaymentCalender.getActualNum() + userIdList.size());
|
|
musicGroupPaymentCalender.setActualNum(musicGroupPaymentCalender.getActualNum() + userIdList.size());
|
|
}
|
|
}
|
|
musicGroupPaymentCalenderService.update(musicGroupPaymentCalender);
|
|
musicGroupPaymentCalenderService.update(musicGroupPaymentCalender);
|
|
-
|
|
|
|
//创建学生课排课分钟数
|
|
//创建学生课排课分钟数
|
|
- if (courseSettingsList != null && courseSettingsList.size() > 0) {
|
|
|
|
- List<MusicGroupPaymentStudentCourseDetail> musicGroupPaymentStudentCourseDetailList = new ArrayList<>();
|
|
|
|
- MusicGroupPaymentStudentCourseDetail musicGroupPaymentStudentCourseDetail = null;
|
|
|
|
- for (Integer studentId : userIdList) {
|
|
|
|
- for (MusicGroupPaymentCalenderCourseSettings courseSettings : courseSettingsList) {
|
|
|
|
- if (courseSettings.getCourseTotalMinuties() == null || courseSettings.getCourseTotalMinuties() == 0) {
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- musicGroupPaymentStudentCourseDetail = new MusicGroupPaymentStudentCourseDetail();
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setMusicGroupId(musicGroupId);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseType(courseSettings.getCourseType());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCreateTime(date);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setMusicGroupPaymentCalenderId(musicGroupPaymentCalenderId);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setMusicGroupPaymentCalenderDetailId(userMap.get(studentId));
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setTotalCourseMinutes(courseSettings.getCourseTotalMinuties());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseMinutes(courseSettings.getCourseTotalMinuties());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseOriginalPrice(courseSettings.getCourseOriginalPrice());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseCurrentPrice(courseSettings.getCourseCurrentPrice());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseOriginalPrice(courseSettings.getCourseOriginalPrice());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseCurrentPrice(courseSettings.getCourseCurrentPrice());
|
|
|
|
- if(musicGroupPaymentCalender.getPayUserType() == SCHOOL){
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseCurrentPrice(BigDecimal.ZERO);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseCurrentPrice(BigDecimal.ZERO);
|
|
|
|
- }
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setUpdateTime(date);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setUsedCourseMinutes(0);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setUserId(studentId);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCloudTeacherPaymentFlag(musicGroupPaymentCalender.getCloudTeacherPaymentFlag());
|
|
|
|
- musicGroupPaymentStudentCourseDetailList.add(musicGroupPaymentStudentCourseDetail);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- if (musicGroupPaymentStudentCourseDetailList.size() > 0) {
|
|
|
|
- musicGroupPaymentStudentCourseDetailDao.batchInsert(musicGroupPaymentStudentCourseDetailList);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ musicGroupPaymentStudentCourseDetailService.batchInsert(userIdList,musicGroupPaymentCalender,userCalenderDetailMap);
|
|
|
|
+
|
|
//给学员推送缴费通知
|
|
//给学员推送缴费通知
|
|
if (musicGroupPaymentCalender.getPayUserType() == STUDENT && musicGroupPaymentCalender.getStatus() == PaymentCalenderStatusEnum.OPEN) {
|
|
if (musicGroupPaymentCalender.getPayUserType() == STUDENT && musicGroupPaymentCalender.getStatus() == PaymentCalenderStatusEnum.OPEN) {
|
|
musicGroupPaymentCalenderService.pushWaitRenewMessage(musicGroupPaymentCalender.getId(),
|
|
musicGroupPaymentCalenderService.pushWaitRenewMessage(musicGroupPaymentCalender.getId(),
|
|
@@ -383,7 +343,8 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
musicGroupPaymentCalenderDetailIdList.add(Long.parseLong(s));
|
|
musicGroupPaymentCalenderDetailIdList.add(Long.parseLong(s));
|
|
}
|
|
}
|
|
//是否已排课
|
|
//是否已排课
|
|
- List<MusicGroupPaymentStudentCourseDetail> musicGroupPaymentStudentCourseDetailList = musicGroupPaymentStudentCourseDetailDao.queryByMusicGroupPaymentStudentCourseDetailId(musicGroupPaymentCalenderDetailIdList);
|
|
|
|
|
|
+ List<MusicGroupPaymentStudentCourseDetail> musicGroupPaymentStudentCourseDetailList =
|
|
|
|
+ musicGroupPaymentStudentCourseDetailService.queryByMusicGroupPaymentStudentCourseDetailId(musicGroupPaymentCalenderDetailIdList);
|
|
count = musicGroupPaymentStudentCourseDetailList.stream().filter(e -> e.getUsedCourseMinutes() > 0).count();
|
|
count = musicGroupPaymentStudentCourseDetailList.stream().filter(e -> e.getUsedCourseMinutes() > 0).count();
|
|
if (count > 0) {
|
|
if (count > 0) {
|
|
throw new BizException("删除失败:存在已排课的学员");
|
|
throw new BizException("删除失败:存在已排课的学员");
|
|
@@ -391,11 +352,10 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
|
|
|
|
int currentNum = musicGroupPaymentCalender.getExpectNum() - details.size();
|
|
int currentNum = musicGroupPaymentCalender.getExpectNum() - details.size();
|
|
musicGroupPaymentCalender.setExpectNum(currentNum < 0 ? 0 : currentNum);
|
|
musicGroupPaymentCalender.setExpectNum(currentNum < 0 ? 0 : currentNum);
|
|
- musicGroupPaymentCalender.setUpdateTime(new Date());
|
|
|
|
musicGroupPaymentCalenderDao.update(musicGroupPaymentCalender);
|
|
musicGroupPaymentCalenderDao.update(musicGroupPaymentCalender);
|
|
|
|
|
|
musicGroupPaymentCalenderDetailDao.batchDel(musicGroupPaymentCalenderDetailIds);
|
|
musicGroupPaymentCalenderDetailDao.batchDel(musicGroupPaymentCalenderDetailIds);
|
|
- musicGroupPaymentStudentCourseDetailDao.deleteByMusicGroupPaymentCalenderDetailId(musicGroupPaymentCalenderDetailIdList);
|
|
|
|
|
|
+ musicGroupPaymentStudentCourseDetailService.deleteByMusicGroupPaymentCalenderDetailId(musicGroupPaymentCalenderDetailIdList);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -551,53 +511,10 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
|
|
|
|
|
|
//保存、更新云教练缴费项目预收
|
|
//保存、更新云教练缴费项目预收
|
|
operatingReportCloudService.updateSet(musicGroupPaymentCalender,studentPaymentOrder.getId());
|
|
operatingReportCloudService.updateSet(musicGroupPaymentCalender,studentPaymentOrder.getId());
|
|
-
|
|
|
|
- Boolean cloudTeacherPaymentFlag = false;
|
|
|
|
- if(musicGroupPaymentCalender.getCloudTeacherPaymentFlag()){
|
|
|
|
- List<MusicGroupPaymentCalenderCourseSettings> courseSettings = musicGroupPaymentCalenderCourseSettingsDao.queryCalenderCourseSettings(musicGroupPaymentCalender.getId());
|
|
|
|
- BigDecimal reduce = courseSettings.stream().map(e -> e.getCourseCurrentPrice()).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
- cloudTeacherPaymentFlag = reduce.compareTo(BigDecimal.ZERO) == 0;
|
|
|
|
- }
|
|
|
|
//续费项目加学员时就生成了课程时长,报名项目在缴费成功后才需要添加课程时长
|
|
//续费项目加学员时就生成了课程时长,报名项目在缴费成功后才需要添加课程时长
|
|
- if (musicGroupPaymentCalender.getPaymentType() == MusicGroupPaymentCalender.PaymentType.MUSIC_APPLY) {
|
|
|
|
- List<MusicGroupPaymentStudentCourseDetail> musicGroupPaymentStudentCourseDetails = new ArrayList<>();
|
|
|
|
- List<String> orderDetailTypes = studentPaymentOrderDetailDao.getOrderDetailType(studentPaymentOrder.getId());
|
|
|
|
- List<MusicGroupPaymentCalenderCourseSettings> courseSettingsList = musicGroupPaymentCalenderCourseSettingsDao
|
|
|
|
- .getWithPaymentCalender(musicGroupPaymentCalender.getId());
|
|
|
|
- for (MusicGroupPaymentCalenderCourseSettings courseSetting : courseSettingsList) {
|
|
|
|
- if (musicGroupPaymentCalender.getPayUserType().equals(MusicGroupPaymentCalender.PayUserType.STUDENT)
|
|
|
|
- && !orderDetailTypes.contains(courseSetting.getCourseType().getCode())) {
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- if (courseSetting.getCourseTotalMinuties() == null || courseSetting.getCourseTotalMinuties() == 0) {
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- MusicGroupPaymentStudentCourseDetail musicGroupPaymentStudentCourseDetail = new MusicGroupPaymentStudentCourseDetail();
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setMusicGroupId(musicGroupPaymentCalender.getMusicGroupId());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setMusicGroupPaymentCalenderId(musicGroupPaymentCalender.getId());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setMusicGroupPaymentCalenderDetailId(musicGroupPaymentCalenderDetail.getId());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setUserId(studentPaymentOrder.getUserId());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseType(courseSetting.getCourseType());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setTotalCourseMinutes(courseSetting.getCourseTotalMinuties());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseMinutes(courseSetting.getCourseTotalMinuties());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseOriginalPrice(courseSetting.getCourseOriginalPrice());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseCurrentPrice(courseSetting.getCourseCurrentPrice());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseOriginalPrice(courseSetting.getCourseOriginalPrice());
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseCurrentPrice(courseSetting.getCourseCurrentPrice());
|
|
|
|
- if(musicGroupPaymentCalender.getPayUserType() == SCHOOL){
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCourseCurrentPrice(BigDecimal.ZERO);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setSubCourseCurrentPrice(BigDecimal.ZERO);
|
|
|
|
- }
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setUsedCourseMinutes(0);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCreateTime(nowDate);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setUpdateTime(nowDate);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setTenantId(tenantId);
|
|
|
|
- musicGroupPaymentStudentCourseDetail.setCloudTeacherPaymentFlag(cloudTeacherPaymentFlag);
|
|
|
|
- musicGroupPaymentStudentCourseDetails.add(musicGroupPaymentStudentCourseDetail);
|
|
|
|
- }
|
|
|
|
- if (musicGroupPaymentStudentCourseDetails.size() > 0) {
|
|
|
|
- musicGroupPaymentStudentCourseDetailDao.batchInsert(musicGroupPaymentStudentCourseDetails);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ musicGroupPaymentStudentCourseDetailService.batchInsert(studentPaymentOrder.getUserId(),
|
|
|
|
+ musicGroupPaymentCalender,
|
|
|
|
+ musicGroupPaymentCalenderDetail.getId(),
|
|
|
|
+ studentPaymentOrder.getId());
|
|
}
|
|
}
|
|
}
|
|
}
|