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