|
@@ -507,6 +507,12 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
|
|
|
sysUser.setImToken(register.getToken());
|
|
|
teacherDao.updateUser(sysUser);
|
|
|
} else {
|
|
|
+ sysUser.setPhone(studentRegistration.getParentsPhone());
|
|
|
+ sysUser.setRealName(studentRegistration.getParentsName());
|
|
|
+ sysUser.setUsername(studentRegistration.getName());
|
|
|
+ sysUser.setGender(studentRegistration.getGender());
|
|
|
+ sysUser.setOrganId(studentRegistration.getOrganId());
|
|
|
+ teacherDao.updateUser(sysUser);
|
|
|
userId = sysUser.getId();
|
|
|
}
|
|
|
studentRegistration.setActualSubjectId(studentRegistration.getSubjectId());
|
|
@@ -532,9 +538,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
|
|
|
studentAddDto.setCourseFee(musicOneSubjectClassPlan.getFee());
|
|
|
}
|
|
|
Date nextPaymentDate = musicGroupPaymentCalenderService.getNextPaymentDate(musicGroupId);
|
|
|
- musicGroupStudentFeeDao.insert(new MusicGroupStudentFee(musicGroupId,
|
|
|
- userId, studentRegistration.getSubjectId(), studentAddDto.getCourseFee(),
|
|
|
- nextPaymentDate, studentAddDto.getTemporaryCourseFee()));
|
|
|
+
|
|
|
//生成订单
|
|
|
StudentPaymentOrder studentPaymentOrder = new StudentPaymentOrder();
|
|
|
studentPaymentOrder.setUserId(userId);
|
|
@@ -548,22 +552,33 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
|
|
|
List<StudentPaymentOrderDetail> studentPaymentOrderDetails = studentAddDto.getStudentPaymentOrderDetails();
|
|
|
if (studentPaymentOrderDetails == null) {
|
|
|
studentPaymentOrderDetails = new ArrayList<>();
|
|
|
+ }else {
|
|
|
+ studentPaymentOrderDetails.forEach(e->{
|
|
|
+ if(e.getPrice() == null){
|
|
|
+ throw new BizException("请补全订单信息");
|
|
|
+ }
|
|
|
+ });
|
|
|
}
|
|
|
StudentPaymentOrderDetail studentPaymentOrderDetail = new StudentPaymentOrderDetail();
|
|
|
studentPaymentOrderDetail.setPrice(studentAddDto.getTemporaryCourseFee());
|
|
|
studentPaymentOrderDetail.setType(OrderDetailTypeEnum.COURSE);
|
|
|
studentPaymentOrderDetails.add(studentPaymentOrderDetail);
|
|
|
//汇总金额
|
|
|
+
|
|
|
BigDecimal reduce = studentPaymentOrderDetails.stream().map(e -> e.getPrice()).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
+ MusicGroupStudentFee.PaymentStatus paymentStatus = MusicGroupStudentFee.PaymentStatus.NON_PAYMENT;
|
|
|
if (reduce == BigDecimal.ZERO) {
|
|
|
+ paymentStatus = MusicGroupStudentFee.PaymentStatus.PAID_COMPLETED;
|
|
|
studentPaymentOrder.setStatus(DealStatusEnum.SUCCESS);
|
|
|
studentRegistration.setPaymentStatus(PaymentStatusEnum.YES);
|
|
|
studentPaymentOrder.setActualAmount(reduce);
|
|
|
studentPaymentOrder.setPayTime(date);
|
|
|
}
|
|
|
+ musicGroupStudentFeeDao.insert(new MusicGroupStudentFee(musicGroupId,
|
|
|
+ userId, studentRegistration.getSubjectId(), studentAddDto.getCourseFee(),
|
|
|
+ nextPaymentDate, studentAddDto.getTemporaryCourseFee(),paymentStatus));
|
|
|
studentPaymentOrder.setExpectAmount(reduce);
|
|
|
//当前学员是否以前存在过当前乐团
|
|
|
-// StudentRegistration registration = studentRegistrationDao.queryByUserIdAndMusicGroupId(userId, musicGroupId);
|
|
|
if(phoneAndMusicGroupId != null){
|
|
|
studentRegistration.setId(phoneAndMusicGroupId.getId());
|
|
|
studentRegistrationDao.update(studentRegistration);
|