فهرست منبع

1、如果是会员收费那么计算云教练成本

zouxuan 2 سال پیش
والد
کامیت
f41204172c

+ 27 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MemberFeeSettingServiceImpl.java

@@ -122,4 +122,31 @@ public class MemberFeeSettingServiceImpl extends BaseServiceImpl<Integer, Member
         return amount;
     }
 
+    public static BigDecimal getIncome (PeriodEnum periodEnum, MemberFeeSetting memberFee) {
+        BigDecimal amount;
+        switch (periodEnum) {
+            case DAY:
+                amount = memberFee.getIncomeDayFee();
+                break;
+            case MONTH:
+                amount = memberFee.getIncomeMonthFee();
+                break;
+            case QUARTERLY:
+                amount = memberFee.getIncomeQuarterlyFee();
+                break;
+            case YEAR_HALF:
+                amount = memberFee.getIncomeHalfYearFee();
+                break;
+            case YEAR:
+                amount = memberFee.getIncomeYearFee();
+                break;
+            default:
+                throw new BizException("请选择正确的会员有效期");
+        }
+        if (Objects.isNull(amount)) {
+            throw new BizException("未设置云教练经营报表确认收入");
+        }
+        return amount;
+    }
+
 }

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupPaymentCalenderServiceImpl.java

@@ -127,6 +127,8 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
     private ImGroupService imGroupService;
     @Autowired
     private ImGroupMemberService imGroupMemberService;
+    @Autowired
+    private MemberFeeSettingService memberFeeSettingService;
 
     @Override
     public BaseDAO<Long, MusicGroupPaymentCalender> getDAO() {
@@ -382,6 +384,13 @@ public class MusicGroupPaymentCalenderServiceImpl extends BaseServiceImpl<Long,
             calenderMember.setActualAmount(memberActualAmount);
             calenderMember.setOriginalAmount(memberOriginalAmount);
             calenderMember.setCalenderId(calenderId);
+            //如果当前乐团是会员收费,那么获取云教练收入
+            if(musicGroup.getCourseViewType() == CourseViewTypeEnum.MEMBER_FEE){
+                BigDecimal income = memberFeeSettingService.getAmount(sysUser.getOrganId(),1,
+                        calenderMember.getPeriod(),new BigDecimal(1),
+                        MemberFeeSettingServiceImpl::getIncome);
+                calenderMember.setIncome(income);
+            }
             musicGroupPaymentCalenderMemberService.insert(calenderMember);
         }
         //保存乐保缴费信息