|
@@ -382,9 +382,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
pageInfo.setTotal(count);
|
|
pageInfo.setTotal(count);
|
|
params.put("offset", pageInfo.getOffset());
|
|
params.put("offset", pageInfo.getOffset());
|
|
dataList = vipGroupDao.findAllByOrgan(params);
|
|
dataList = vipGroupDao.findAllByOrgan(params);
|
|
- List<Long> vipGroupIds = dataList.stream().map(vipGroup -> vipGroup.getId()).collect(Collectors.toList());
|
|
|
|
|
|
+ List<Long> vipGroupIds = dataList.stream().map(vipGroup -> vipGroup.getId()).distinct().collect(Collectors.toList());
|
|
List<Map<Long, Integer>> vipGroupOverCourses = vipGroupDao.countVipGroupOverCourse(vipGroupIds);
|
|
List<Map<Long, Integer>> vipGroupOverCourses = vipGroupDao.countVipGroupOverCourse(vipGroupIds);
|
|
Map<Long,Integer> vipGroupOverCourseMaps = MapUtil.convertIntegerMap(vipGroupOverCourses);
|
|
Map<Long,Integer> vipGroupOverCourseMaps = MapUtil.convertIntegerMap(vipGroupOverCourses);
|
|
|
|
+ List<ClassGroup> classGroupsByVipGroups = vipGroupClassGroupMapperDao.findClassGroupsByVipGroups(vipGroupIds);
|
|
|
|
+ Map<String, ClassGroup> vipGroupClassGroupMap = classGroupsByVipGroups.stream().collect(Collectors.toMap(ClassGroup::getMusicGroupId, classGroup -> classGroup));
|
|
dataList.forEach(vipGroup -> {
|
|
dataList.forEach(vipGroup -> {
|
|
Integer overCourses = vipGroupOverCourseMaps.get(vipGroup.getId());
|
|
Integer overCourses = vipGroupOverCourseMaps.get(vipGroup.getId());
|
|
if(Objects.isNull(overCourses)){
|
|
if(Objects.isNull(overCourses)){
|
|
@@ -403,7 +405,12 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
vipGroup.setMonthConsumeRate(monthConsumeRate);
|
|
vipGroup.setMonthConsumeRate(monthConsumeRate);
|
|
}
|
|
}
|
|
|
|
|
|
-
|
|
|
|
|
|
+ }
|
|
|
|
+ ClassGroup classGroup = vipGroupClassGroupMap.get(vipGroup.getId().toString());
|
|
|
|
+ if(Objects.nonNull(classGroup)){
|
|
|
|
+ vipGroup.setStudentNum(classGroup.getStudentNum());
|
|
|
|
+ vipGroup.setTotalClassTimes(classGroup.getTotalClassTimes());
|
|
|
|
+ vipGroup.setCurrentClassTimes(classGroup.getCurrentClassTimes());
|
|
}
|
|
}
|
|
|
|
|
|
});
|
|
});
|
|
@@ -736,12 +743,13 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
}
|
|
}
|
|
|
|
|
|
Integer studentPaymentNum=studentPaymentOrderDao.countStudentPaymentNum(vipGroupId.toString());
|
|
Integer studentPaymentNum=studentPaymentOrderDao.countStudentPaymentNum(vipGroupId.toString());
|
|
-
|
|
|
|
if(studentPaymentNum.equals(classGroup.getExpectStudentNum())&&updateVipStatus){
|
|
if(studentPaymentNum.equals(classGroup.getExpectStudentNum())&&updateVipStatus){
|
|
|
|
+ classGroup.setDelFlag(YesOrNoEnum.NO);
|
|
vipGroup.setStatus(VipGroupStatusEnum.FINISH);
|
|
vipGroup.setStatus(VipGroupStatusEnum.FINISH);
|
|
vipGroupDao.update(vipGroup);
|
|
vipGroupDao.update(vipGroup);
|
|
createVipGroupCourseScheInfo(vipGroupId);
|
|
createVipGroupCourseScheInfo(vipGroupId);
|
|
}
|
|
}
|
|
|
|
+ System.out.println(studentPaymentNum+"------"+JSON.toJSONString(classGroup));
|
|
classGroupDao.update(classGroup);
|
|
classGroupDao.update(classGroup);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -755,8 +763,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
SysUser sysUser = sysUserFeignService.queryUserById(vipGroupApplyBaseInfoDto.getUserId());
|
|
SysUser sysUser = sysUserFeignService.queryUserById(vipGroupApplyBaseInfoDto.getUserId());
|
|
|
|
|
|
ClassGroup classGroup = classGroupDao.findByVipGroup(vipGroupId,null);
|
|
ClassGroup classGroup = classGroupDao.findByVipGroup(vipGroupId,null);
|
|
- classGroup.setDelFlag(YesOrNoEnum.NO);
|
|
|
|
- classGroupDao.update(classGroup);
|
|
|
|
|
|
|
|
ClassGroupTeacherSalary classGroupTeacherSalary = classGroupTeacherSalaryDao.findByVipGoupAndTeacher(vipGroupId.intValue(), vipGroupApplyBaseInfoDto.getUserId());
|
|
ClassGroupTeacherSalary classGroupTeacherSalary = classGroupTeacherSalaryDao.findByVipGoupAndTeacher(vipGroupId.intValue(), vipGroupApplyBaseInfoDto.getUserId());
|
|
|
|
|
|
@@ -858,6 +864,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
studentPaymentOrder.setMusicGroupId(vipGroup.getId().toString());
|
|
studentPaymentOrder.setMusicGroupId(vipGroup.getId().toString());
|
|
studentPaymentOrder.setClassGroupId(vipGroupClassGroupMapper.getClassGroupId());
|
|
studentPaymentOrder.setClassGroupId(vipGroupClassGroupMapper.getClassGroupId());
|
|
|
|
|
|
|
|
+ contractService.register(user.getId(),user.getRealName(),user.getIdCardNo(),user.getPhone());
|
|
|
|
+
|
|
//生成回调地址
|
|
//生成回调地址
|
|
Map<String,Object> payMap = payService.getPayMap(
|
|
Map<String,Object> payMap = payService.getPayMap(
|
|
vipGroup.getTotalPrice(),
|
|
vipGroup.getTotalPrice(),
|
|
@@ -1134,7 +1142,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
if(Objects.isNull(vipGroup)){
|
|
if(Objects.isNull(vipGroup)){
|
|
throw new BizException("该课程不存在");
|
|
throw new BizException("该课程不存在");
|
|
}
|
|
}
|
|
- if(vipGroup.getStatus()==VipGroupStatusEnum.FINISH||vipGroup.getStatus()==VipGroupStatusEnum.CANCEL){
|
|
|
|
|
|
+ if(vipGroup.getStatus()==VipGroupStatusEnum.CANCEL){
|
|
throw new BizException("该课程已结束或者已被停止,无法进行此操作");
|
|
throw new BizException("该课程已结束或者已被停止,无法进行此操作");
|
|
}
|
|
}
|
|
List<CourseSchedule> vipGroupCourseSchedules = courseScheduleDao.findVipGroupCourseSchedules(vipGroupId);
|
|
List<CourseSchedule> vipGroupCourseSchedules = courseScheduleDao.findVipGroupCourseSchedules(vipGroupId);
|
|
@@ -1150,13 +1158,15 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
|
|
if(CollectionUtils.isEmpty(maps)||(maps.size()==1&&Objects.isNull(maps.get(0)))){
|
|
if(CollectionUtils.isEmpty(maps)||(maps.size()==1&&Objects.isNull(maps.get(0)))){
|
|
vipGroup.setStatus(VipGroupStatusEnum.CANCEL);
|
|
vipGroup.setStatus(VipGroupStatusEnum.CANCEL);
|
|
vipGroupDao.update(vipGroup);
|
|
vipGroupDao.update(vipGroup);
|
|
- courseScheduleDao.batchDeleteCourseSchedules(courseScheduleIds);
|
|
|
|
- courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);
|
|
|
|
|
|
+ if(vipGroup.getStatus().equals(VipGroupStatusEnum.FINISH)){
|
|
|
|
+ courseScheduleDao.batchDeleteCourseSchedules(courseScheduleIds);
|
|
|
|
+ courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);
|
|
|
|
+ }
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
Map<Integer, BigDecimal> studentSurplusClassFees = MapUtil.convertIntegerMap(maps);
|
|
Map<Integer, BigDecimal> studentSurplusClassFees = MapUtil.convertIntegerMap(maps);
|
|
for(Integer userId:studentSurplusClassFees.keySet()){
|
|
for(Integer userId:studentSurplusClassFees.keySet()){
|
|
- StudentPaymentOrder studentPaymentOrder = studentPaymentOrderDao.findByStudentVipGroup(vipGroupId,userId,DealStatusEnum.SUCCESS.getMsg());
|
|
|
|
|
|
+ StudentPaymentOrder studentPaymentOrder = studentPaymentOrderDao.findByStudentVipGroup(vipGroupId,userId,DealStatusEnum.SUCCESS.getCode());
|
|
if(null==studentPaymentOrder){
|
|
if(null==studentPaymentOrder){
|
|
throw new BizException("未找到相关订单信息!");
|
|
throw new BizException("未找到相关订单信息!");
|
|
}
|
|
}
|