|
@@ -735,20 +735,20 @@ public class CourseGroupServiceImpl extends ServiceImpl<CourseGroupDao, CourseGr
|
|
|
|
|
|
// 课程组 人数 + 1
|
|
// 课程组 人数 + 1
|
|
courseGroup.setPreStudentNum(courseGroup.getPreStudentNum() + 1);
|
|
courseGroup.setPreStudentNum(courseGroup.getPreStudentNum() + 1);
|
|
-
|
|
|
|
|
|
+ //查询课程组课程列表
|
|
List<CourseSchedule> courseList = courseScheduleService.list(Wrappers.<CourseSchedule>lambdaQuery()
|
|
List<CourseSchedule> courseList = courseScheduleService.list(Wrappers.<CourseSchedule>lambdaQuery()
|
|
.eq(CourseSchedule::getCourseGroupId, studentPayment.getCourseGroupId()));
|
|
.eq(CourseSchedule::getCourseGroupId, studentPayment.getCourseGroupId()));
|
|
- //计算课程组单节课价格 取CourseScheduleStudentPayment expectPrice
|
|
|
|
- BigDecimal expectPrice = studentPayment.getExpectPrice();
|
|
|
|
|
|
+ //课程总金额
|
|
|
|
+ BigDecimal totalExpectPrice = WrapperUtil.sumList(studentPaymentList, CourseScheduleStudentPayment::getExpectPrice);
|
|
//查询直播课服务费
|
|
//查询直播课服务费
|
|
String liveServiceRateStr = sysConfigService.findConfigValue(SysConfigConstant.LIVE_SERVICE_RATE);
|
|
String liveServiceRateStr = sysConfigService.findConfigValue(SysConfigConstant.LIVE_SERVICE_RATE);
|
|
BigDecimal liveServiceRate = new BigDecimal(liveServiceRateStr).divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
|
|
BigDecimal liveServiceRate = new BigDecimal(liveServiceRateStr).divide(new BigDecimal("100"), 2, RoundingMode.HALF_UP);
|
|
//总课酬 1 - (1 * 手续费率)
|
|
//总课酬 1 - (1 * 手续费率)
|
|
- BigDecimal totalRatePrice = expectPrice.subtract(expectPrice.multiply(liveServiceRate)).setScale(2, RoundingMode.HALF_UP);
|
|
|
|
|
|
+ BigDecimal totalRatePrice = totalExpectPrice.subtract(totalExpectPrice.multiply(liveServiceRate)).setScale(2, RoundingMode.HALF_UP);
|
|
//获取每节课的实际课酬 key 课堂数 value 课酬
|
|
//获取每节课的实际课酬 key 课堂数 value 课酬
|
|
Map<Integer, BigDecimal> singerActualCourseSalary = WrapperUtil.getAveragePrice(courseGroup.getCourseNum(), totalRatePrice);
|
|
Map<Integer, BigDecimal> singerActualCourseSalary = WrapperUtil.getAveragePrice(courseGroup.getCourseNum(), totalRatePrice);
|
|
//获取每节课的预计原课酬 key 课堂数 value 课酬
|
|
//获取每节课的预计原课酬 key 课堂数 value 课酬
|
|
- Map<Integer, BigDecimal> singerExpectCourseSalary = WrapperUtil.getAveragePrice(courseGroup.getCourseNum(), expectPrice);
|
|
|
|
|
|
+ Map<Integer, BigDecimal> singerExpectCourseSalary = WrapperUtil.getAveragePrice(courseGroup.getCourseNum(), totalExpectPrice);
|
|
//写入课酬表计算-根据课程组总金额计算分配到每节课的金额
|
|
//写入课酬表计算-根据课程组总金额计算分配到每节课的金额
|
|
Date now = new Date();
|
|
Date now = new Date();
|
|
List<CourseScheduleTeacherSalary> teacherSalaryList = new ArrayList<>();
|
|
List<CourseScheduleTeacherSalary> teacherSalaryList = new ArrayList<>();
|