|
@@ -2214,8 +2214,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
throw new BizException("课程单价异常");
|
|
|
}
|
|
|
BigDecimal offlineVipGroupCharge = offlineClassesUnitPrice.multiply(offlineClassNum);
|
|
|
- BigDecimal teacherOnlineSalary=null,teacherOfflineSalary=null;
|
|
|
- BigDecimal giveTeacherOnlineSalary=null,giveTeacherOfflineSalary=null;
|
|
|
+ BigDecimal teacherOnlineSalary = BigDecimal.ZERO,teacherOfflineSalary = BigDecimal.ZERO;
|
|
|
+ BigDecimal giveTeacherOnlineSalary = BigDecimal.ZERO,giveTeacherOfflineSalary = BigDecimal.ZERO;
|
|
|
|
|
|
//课程购买费用计算
|
|
|
BigDecimal totalPrice = onlineVipGroupCharge.add(offlineVipGroupCharge);
|
|
@@ -2225,93 +2225,59 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
|
vipGroup.setTotalPrice(totalPrice.setScale(0,BigDecimal.ROUND_CEILING));
|
|
|
|
|
|
Integer studentNum = vipGroup.getStudentIdList().split(",").length;
|
|
|
+
|
|
|
//教师课酬线上单课酬计算
|
|
|
+ if(vipGroupCategory.getMusicTheory()){
|
|
|
+ teacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary().multiply(new BigDecimal(studentNum>5?5:studentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
+ }else {
|
|
|
+ teacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary();
|
|
|
+ }
|
|
|
if(Objects.nonNull(vipOnlineSalarySettlement)){
|
|
|
- if(Objects.isNull(teacherOnlineSalary)){
|
|
|
- switch (vipOnlineSalarySettlement.getSalarySettlementType()){
|
|
|
- case TEACHER_DEFAULT:
|
|
|
- if(vipGroupCategory.getMusicTheory()){
|
|
|
- teacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary().multiply(new BigDecimal(studentNum>5?5:studentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
- results.put("onlineTeacherSalary",teacherOnlineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }else {
|
|
|
- teacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary();
|
|
|
- results.put("onlineTeacherSalary",teacherOnlineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }
|
|
|
- break;
|
|
|
- case FIXED_SALARY:
|
|
|
- results.put("onlineTeacherSalary",vipOnlineSalarySettlement.getSettlementValue().setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- break;
|
|
|
- default:
|
|
|
- throw new BizException("错误的课酬结算标准!");
|
|
|
- }
|
|
|
-
|
|
|
+ if(vipOnlineSalarySettlement.getSalarySettlementType() == SalarySettlementTypeEnum.FIXED_SALARY){
|
|
|
+ teacherOnlineSalary = vipOnlineSalarySettlement.getSettlementValue();
|
|
|
}
|
|
|
}
|
|
|
+ results.put("onlineTeacherSalary",teacherOnlineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
+
|
|
|
//教师课酬赠送线上单课酬计算
|
|
|
+ if(vipGroupCategory.getMusicTheory()){
|
|
|
+ giveTeacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary().multiply(new BigDecimal(studentNum>5?5:studentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
+ }else {
|
|
|
+ giveTeacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary();
|
|
|
+ }
|
|
|
if(Objects.nonNull(giveVipOnlineSalarySettlement)){
|
|
|
- if(Objects.isNull(giveTeacherOnlineSalary)){
|
|
|
- switch (giveVipOnlineSalarySettlement.getSalarySettlementType()){
|
|
|
- case TEACHER_DEFAULT:
|
|
|
- if(vipGroupCategory.getMusicTheory()){
|
|
|
- giveTeacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary().multiply(new BigDecimal(studentNum>5?5:studentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
- results.put("giveOnlineTeacherSalary",giveTeacherOnlineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }else {
|
|
|
- giveTeacherOnlineSalary = teacherDefaultVipGroupSalary.getOnlineClassesSalary();
|
|
|
- results.put("giveOnlineTeacherSalary",giveTeacherOnlineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }
|
|
|
- break;
|
|
|
- case FIXED_SALARY:
|
|
|
- results.put("giveOnlineTeacherSalary",giveVipOnlineSalarySettlement.getSettlementValue().setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- break;
|
|
|
- default:
|
|
|
- throw new BizException("错误的课酬结算标准!");
|
|
|
- }
|
|
|
-
|
|
|
+ if (giveVipOnlineSalarySettlement.getSalarySettlementType() == SalarySettlementTypeEnum.FIXED_SALARY){
|
|
|
+ giveTeacherOnlineSalary = giveVipOnlineSalarySettlement.getSettlementValue();
|
|
|
}
|
|
|
}
|
|
|
+ results.put("giveOnlineTeacherSalary",giveTeacherOnlineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
|
|
|
//教师线下单课酬计算
|
|
|
+ if(vipGroupCategory.getMusicTheory()){
|
|
|
+ teacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary().multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
+ }else {
|
|
|
+ teacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
|
|
|
+ }
|
|
|
if(Objects.nonNull(vipOfflineSalarySettlement)){
|
|
|
- if(Objects.isNull(teacherOfflineSalary)){
|
|
|
- switch (vipOfflineSalarySettlement.getSalarySettlementType()){
|
|
|
- case TEACHER_DEFAULT:
|
|
|
- if(vipGroupCategory.getMusicTheory()){
|
|
|
- teacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary().multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
- results.put("offlineTeacherSalary",teacherOfflineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }else {
|
|
|
- teacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
|
|
|
- results.put("offlineTeacherSalary",teacherOfflineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }
|
|
|
- break;
|
|
|
- case FIXED_SALARY:
|
|
|
- results.put("offlineTeacherSalary",vipOfflineSalarySettlement.getSettlementValue().setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- break;
|
|
|
- default:
|
|
|
- throw new BizException("错误的课酬结算标准!");
|
|
|
- }
|
|
|
+ if(giveVipOfflineSalarySettlement.getSalarySettlementType() == SalarySettlementTypeEnum.FIXED_SALARY){
|
|
|
+ teacherOfflineSalary = vipOfflineSalarySettlement.getSettlementValue();
|
|
|
}
|
|
|
}
|
|
|
+ results.put("offlineTeacherSalary",teacherOfflineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
+
|
|
|
//教师赠送线下单课酬计算
|
|
|
+ if(vipGroupCategory.getMusicTheory()){
|
|
|
+ giveTeacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary().multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
+ }else {
|
|
|
+ giveTeacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
|
|
|
+ }
|
|
|
if(Objects.nonNull(giveVipOfflineSalarySettlement)){
|
|
|
- if(Objects.isNull(giveTeacherOfflineSalary)){
|
|
|
- switch (giveVipOfflineSalarySettlement.getSalarySettlementType()){
|
|
|
- case TEACHER_DEFAULT:
|
|
|
- if(vipGroupCategory.getMusicTheory()){
|
|
|
- giveTeacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary().multiply(new BigDecimal(normalStudentNum)).setScale(CommonConstants.DECIMAL_FINAL_PLACE, BigDecimal.ROUND_HALF_UP);
|
|
|
- results.put("giveOfflineTeacherSalary",giveTeacherOfflineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }else {
|
|
|
- giveTeacherOfflineSalary = teacherDefaultVipGroupSalary.getOfflineClassesSalary();
|
|
|
- results.put("giveOfflineTeacherSalary",giveTeacherOfflineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- }
|
|
|
- break;
|
|
|
- case FIXED_SALARY:
|
|
|
- results.put("giveOfflineTeacherSalary",giveVipOfflineSalarySettlement.getSettlementValue().setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
- break;
|
|
|
- default:
|
|
|
- throw new BizException("错误的课酬结算标准!");
|
|
|
- }
|
|
|
+ if(giveVipOfflineSalarySettlement.getSalarySettlementType() == SalarySettlementTypeEnum.FIXED_SALARY){
|
|
|
+ giveTeacherOfflineSalary = giveVipOfflineSalarySettlement.getSettlementValue();
|
|
|
+ results.put("giveOfflineTeacherSalary",giveVipOfflineSalarySettlement.getSettlementValue().setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
}
|
|
|
}
|
|
|
+ results.put("giveOfflineTeacherSalary",giveTeacherOfflineSalary.setScale(0, BigDecimal.ROUND_HALF_UP));
|
|
|
|
|
|
BigDecimal ots = results.get("onlineTeacherSalary");
|
|
|
if(Objects.isNull(ots)){
|