|
@@ -1822,7 +1822,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
@Override
|
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
|
|
|
public boolean approveQuitMusicGroup(Long id, ApprovalStatus status, String reason, boolean isRefundCourseFee, boolean isRefundInstrumentFee,
|
|
|
- boolean isRefundTeachingAssistantsFee, BigDecimal maintenanceFee, BigDecimal cloudTeacherAmount) {
|
|
|
+ boolean isRefundTeachingAssistantsFee,boolean isRefundMemberFee, BigDecimal maintenanceFee, BigDecimal cloudTeacherAmount) {
|
|
|
|
|
|
MusicGroupQuit musicGroupQuit = musicGroupQuitDao.get(id);
|
|
|
if (musicGroupQuit == null) {
|
|
@@ -2015,27 +2015,29 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //退云教练费用
|
|
|
- if (cloudTeacherAmount != null) {
|
|
|
- Date nowDate = new Date();
|
|
|
- List<CloudTeacherOrder> cloudTeacherOrders = cloudTeacherOrderService.getStudentCloudTeacherOrder(userId, musicGroupId);
|
|
|
- BigDecimal orderAmount = BigDecimal.ZERO;
|
|
|
- if(cloudTeacherOrders.size() > 0){
|
|
|
- List<CloudTeacherOrder> quitCloudTeacherOrders = new ArrayList<>();
|
|
|
- for (CloudTeacherOrder cloudTeacherOrder : cloudTeacherOrders) {
|
|
|
- if (cloudTeacherOrder.getEndTime() == null || cloudTeacherOrder.getEndTime().compareTo(nowDate) > 0) {
|
|
|
- quitCloudTeacherOrders.add(cloudTeacherOrder);
|
|
|
- orderAmount = orderAmount.add(cloudTeacherOrder.getAmount());
|
|
|
+ if(isRefundMemberFee){
|
|
|
+ //退云教练费用
|
|
|
+ if (cloudTeacherAmount != null) {
|
|
|
+ Date nowDate = new Date();
|
|
|
+ List<CloudTeacherOrder> cloudTeacherOrders = cloudTeacherOrderService.getStudentCloudTeacherOrder(userId, musicGroupId);
|
|
|
+ BigDecimal orderAmount = BigDecimal.ZERO;
|
|
|
+ if(cloudTeacherOrders.size() > 0){
|
|
|
+ List<CloudTeacherOrder> quitCloudTeacherOrders = new ArrayList<>();
|
|
|
+ for (CloudTeacherOrder cloudTeacherOrder : cloudTeacherOrders) {
|
|
|
+ if (cloudTeacherOrder.getEndTime() == null || cloudTeacherOrder.getEndTime().compareTo(nowDate) > 0) {
|
|
|
+ quitCloudTeacherOrders.add(cloudTeacherOrder);
|
|
|
+ orderAmount = orderAmount.add(cloudTeacherOrder.getAmount());
|
|
|
+ }
|
|
|
}
|
|
|
+ cloudTeacherOrderService.quitCloudTeacherOrders(quitCloudTeacherOrders, cloudTeacherAmount);
|
|
|
}
|
|
|
- cloudTeacherOrderService.quitCloudTeacherOrders(quitCloudTeacherOrders, cloudTeacherAmount);
|
|
|
- }
|
|
|
- if (cloudTeacherAmount.compareTo(orderAmount) > 0) {
|
|
|
- throw new BizException("云教练退费金额不能大于原始订单金额");
|
|
|
+ if (cloudTeacherAmount.compareTo(orderAmount) > 0) {
|
|
|
+ throw new BizException("云教练退费金额不能大于原始订单金额");
|
|
|
+ }
|
|
|
+ amount = amount.add(cloudTeacherAmount);
|
|
|
+ //清除学员云教练
|
|
|
+ studentService.cleanMember(userId);
|
|
|
}
|
|
|
- amount = amount.add(cloudTeacherAmount);
|
|
|
- //清除学员云教练
|
|
|
- studentService.cleanMember(userId);
|
|
|
}
|
|
|
|
|
|
if (amount.doubleValue() > 0) {
|
|
@@ -2050,7 +2052,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
@Override
|
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
|
|
|
public boolean directQuitMusicGroup(String musicGroupId, Integer userId, String reason, boolean isRefundCourseFee, boolean isRefundInstrumentFee,
|
|
|
- boolean isRefundTeachingAssistantsFee, BigDecimal maintenanceFee, BigDecimal cloudTeacherAmount) {
|
|
|
+ boolean isRefundTeachingAssistantsFee,boolean isRefundMemberFee, BigDecimal maintenanceFee, BigDecimal cloudTeacherAmount) {
|
|
|
|
|
|
SysUser sysUser = sysUserFeignService.queryUserById(userId);
|
|
|
if (sysUser == null) {
|
|
@@ -2265,27 +2267,29 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //退云教练费用
|
|
|
- if (cloudTeacherAmount != null) {
|
|
|
- Date nowDate = new Date();
|
|
|
- List<CloudTeacherOrder> cloudTeacherOrders = cloudTeacherOrderService.getStudentCloudTeacherOrder(userId, musicGroupId);
|
|
|
- BigDecimal orderAmount = BigDecimal.ZERO;
|
|
|
- if(cloudTeacherOrders.size() > 0){
|
|
|
- List<CloudTeacherOrder> quitCloudTeacherOrders = new ArrayList<>();
|
|
|
- for (CloudTeacherOrder cloudTeacherOrder : cloudTeacherOrders) {
|
|
|
- if (cloudTeacherOrder.getEndTime() == null || cloudTeacherOrder.getEndTime().compareTo(nowDate) > 0) {
|
|
|
- quitCloudTeacherOrders.add(cloudTeacherOrder);
|
|
|
- orderAmount = orderAmount.add(cloudTeacherOrder.getAmount());
|
|
|
+ if (isRefundMemberFee){
|
|
|
+ //退云教练费用
|
|
|
+ if (cloudTeacherAmount != null) {
|
|
|
+ Date nowDate = new Date();
|
|
|
+ List<CloudTeacherOrder> cloudTeacherOrders = cloudTeacherOrderService.getStudentCloudTeacherOrder(userId, musicGroupId);
|
|
|
+ BigDecimal orderAmount = BigDecimal.ZERO;
|
|
|
+ if(cloudTeacherOrders.size() > 0){
|
|
|
+ List<CloudTeacherOrder> quitCloudTeacherOrders = new ArrayList<>();
|
|
|
+ for (CloudTeacherOrder cloudTeacherOrder : cloudTeacherOrders) {
|
|
|
+ if (cloudTeacherOrder.getEndTime() == null || cloudTeacherOrder.getEndTime().compareTo(nowDate) > 0) {
|
|
|
+ quitCloudTeacherOrders.add(cloudTeacherOrder);
|
|
|
+ orderAmount = orderAmount.add(cloudTeacherOrder.getAmount());
|
|
|
+ }
|
|
|
}
|
|
|
+ cloudTeacherOrderService.quitCloudTeacherOrders(quitCloudTeacherOrders, cloudTeacherAmount);
|
|
|
}
|
|
|
- cloudTeacherOrderService.quitCloudTeacherOrders(quitCloudTeacherOrders, cloudTeacherAmount);
|
|
|
- }
|
|
|
- if (cloudTeacherAmount.compareTo(orderAmount) > 0) {
|
|
|
- throw new BizException("云教练退费金额不能大于原始订单金额");
|
|
|
+ if (cloudTeacherAmount.compareTo(orderAmount) > 0) {
|
|
|
+ throw new BizException("云教练退费金额不能大于原始订单金额");
|
|
|
+ }
|
|
|
+ amount = amount.add(cloudTeacherAmount);
|
|
|
+ //清除学员云教练
|
|
|
+ studentService.cleanMember(userId);
|
|
|
}
|
|
|
- amount = amount.add(cloudTeacherAmount);
|
|
|
- //清除学员云教练
|
|
|
- studentService.cleanMember(userId);
|
|
|
}
|
|
|
|
|
|
if (amount.doubleValue() > 0) {
|