Browse Source

缴费项目改造

zouxuan 2 years ago
parent
commit
62afb1d54f

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderDetailServiceImpl.java

@@ -580,6 +580,10 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
                 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);

+ 27 - 12
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -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);
+            }
         }
 
         //开始计算商品的优惠券