|
@@ -528,7 +528,8 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
|
|
|
if(musicGroup == null){
|
|
|
throw new BizException("乐团[{}]信息查询失败", studentRegistration.getMusicGroupId());
|
|
|
}
|
|
|
-
|
|
|
+ MusicGroupPaymentCalender calender = musicGroupPaymentCalenderDao.get(studentPaymentOrder.getCalenderId());
|
|
|
+
|
|
|
boolean isGiveAccessories = musicGroup.getIsGiveAccessories() == null ? false : musicGroup.getIsGiveAccessories();
|
|
|
|
|
|
Date date = new Date();
|
|
@@ -654,13 +655,21 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
|
|
|
}
|
|
|
|
|
|
//活动 todo VIP 或 网管课
|
|
|
+ List<MusicGroupPaymentCalenderActivity> calenderActivities = null;
|
|
|
List<Long> buyCalenderActivityId = registerPayDto.getBuyCalenderActivityId();
|
|
|
if (CollectionUtils.isNotEmpty(buyCalenderActivityId)) {
|
|
|
- List<MusicGroupPaymentCalenderActivity> calenderActivities = musicGroupPaymentCalenderActivityService.findByIds(buyCalenderActivityId);
|
|
|
+ calenderActivities = musicGroupPaymentCalenderActivityService.findByIds(buyCalenderActivityId);
|
|
|
+ }else if(Objects.nonNull(calender) && calender.getPayUserType() == MusicGroupPaymentCalender.PayUserType.SCHOOL){
|
|
|
+ calenderActivities = musicGroupPaymentCalenderActivityService.findByCalenderId(calender.getId());
|
|
|
+ }
|
|
|
+ if(CollectionUtils.isNotEmpty(calenderActivities)){
|
|
|
for (MusicGroupPaymentCalenderActivity calenderActivity : calenderActivities) {
|
|
|
StudentPaymentOrderDetail maintenanceOrderDetail = new StudentPaymentOrderDetail();
|
|
|
maintenanceOrderDetail.setType("网管课".equals(calenderActivity.getCategoryName()) ? PRACTICE : VIP);
|
|
|
maintenanceOrderDetail.setPrice(calenderActivity.getActualAmount());
|
|
|
+ if(calender.getPayUserType() == MusicGroupPaymentCalender.PayUserType.SCHOOL){
|
|
|
+ maintenanceOrderDetail.setPrice(BigDecimal.ZERO);
|
|
|
+ }
|
|
|
maintenanceOrderDetail.setRemitFee(BigDecimal.ZERO);
|
|
|
maintenanceOrderDetail.setCreateTime(date);
|
|
|
maintenanceOrderDetail.setUpdateTime(date);
|
|
@@ -672,18 +681,24 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
//云教练/云教练+ todo 团练宝
|
|
|
- if (registerPayDto.getBuyCloudTeacher()) {
|
|
|
+ if (registerPayDto.getBuyCloudTeacher() || (Objects.nonNull(calender) && calender.getPayUserType() == MusicGroupPaymentCalender.PayUserType.SCHOOL)) {
|
|
|
MusicGroupPaymentCalenderMember calenderMember = musicGroupPaymentCalenderMemberService.findByCalenderId(studentPaymentOrder.getCalenderId());
|
|
|
- StudentPaymentOrderDetail cloudTeacherOrderDetail = new StudentPaymentOrderDetail();
|
|
|
- cloudTeacherOrderDetail.setType(OrderDetailTypeEnum.CLOUD_TEACHER);
|
|
|
- cloudTeacherOrderDetail.setPrice(calenderMember.getActualAmount());
|
|
|
- cloudTeacherOrderDetail.setRemitFee(BigDecimal.ZERO);
|
|
|
- cloudTeacherOrderDetail.setCreateTime(date);
|
|
|
- cloudTeacherOrderDetail.setUpdateTime(date);
|
|
|
- cloudTeacherOrderDetail.setPaymentOrderId(studentPaymentOrder.getId());
|
|
|
- cloudTeacherOrderDetail.setIsRenew(0);
|
|
|
- studentPaymentOrderDetailList.add(cloudTeacherOrderDetail);
|
|
|
+ if(Objects.nonNull(calenderMember)){
|
|
|
+ StudentPaymentOrderDetail cloudTeacherOrderDetail = new StudentPaymentOrderDetail();
|
|
|
+ cloudTeacherOrderDetail.setType(OrderDetailTypeEnum.CLOUD_TEACHER);
|
|
|
+ cloudTeacherOrderDetail.setPrice(calenderMember.getActualAmount());
|
|
|
+ if(calender.getPayUserType() == MusicGroupPaymentCalender.PayUserType.SCHOOL){
|
|
|
+ cloudTeacherOrderDetail.setPrice(BigDecimal.ZERO);
|
|
|
+ }
|
|
|
+ cloudTeacherOrderDetail.setRemitFee(BigDecimal.ZERO);
|
|
|
+ cloudTeacherOrderDetail.setCreateTime(date);
|
|
|
+ cloudTeacherOrderDetail.setUpdateTime(date);
|
|
|
+ cloudTeacherOrderDetail.setPaymentOrderId(studentPaymentOrder.getId());
|
|
|
+ cloudTeacherOrderDetail.setIsRenew(0);
|
|
|
+ studentPaymentOrderDetailList.add(cloudTeacherOrderDetail);
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//开始计算商品的优惠券
|