|  | @@ -42,8 +42,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  	@Autowired
 | 
	
		
			
				|  |  |  	private ClassGroupDao classGroupDao;
 | 
	
		
			
				|  |  |  	@Autowired
 | 
	
		
			
				|  |  | -	private VipGroupClassGroupMapperDao vipGroupClassGroupMapperDao;
 | 
	
		
			
				|  |  | -	@Autowired
 | 
	
		
			
				|  |  |  	private ClassGroupTeacherMapperDao classGroupTeacherMapperDao;
 | 
	
		
			
				|  |  |  	@Autowired
 | 
	
		
			
				|  |  |  	private CourseScheduleService courseScheduleService;
 | 
	
	
		
			
				|  | @@ -258,17 +256,12 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  		classGroup.setTotalClassTimes(totalClassTimes);
 | 
	
		
			
				|  |  |  		classGroup.setType(ClassGroupTypeEnum.VIP);
 | 
	
		
			
				|  |  |  		classGroup.setDelFlag(YesOrNoEnum.YES);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  		classGroup.setMusicGroupId(vipGroupApplyBaseInfoDto.getId().toString());
 | 
	
		
			
				|  |  |  		classGroup.setCreateTime(now);
 | 
	
		
			
				|  |  |  		classGroup.setUpdateTime(now);
 | 
	
		
			
				|  |  |  		classGroupDao.insert(classGroup);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -		//创建vip课班级关联记录
 | 
	
		
			
				|  |  | -		VipGroupClassGroupMapper vipGroupClassGroupMapper=new VipGroupClassGroupMapper();
 | 
	
		
			
				|  |  | -		vipGroupClassGroupMapper.setVipGroupId(vipGroupApplyBaseInfoDto.getId());
 | 
	
		
			
				|  |  | -		vipGroupClassGroupMapper.setClassGroupId(classGroup.getId());
 | 
	
		
			
				|  |  | -		vipGroupClassGroupMapperDao.insert(vipGroupClassGroupMapper);
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  		//创建班级老师关联记录
 | 
	
		
			
				|  |  |  		ClassGroupTeacherMapper classGroupTeacherMapper=new ClassGroupTeacherMapper();
 | 
	
		
			
				|  |  |  		classGroupTeacherMapper.setMusicGroupId(vipGroupApplyBaseInfoDto.getId().toString());
 | 
	
	
		
			
				|  | @@ -447,7 +440,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  			List<Long> vipGroupIds = dataList.stream().map(vipGroup -> vipGroup.getId()).distinct().collect(Collectors.toList());
 | 
	
		
			
				|  |  |  			List<Map<Long, Integer>> vipGroupOverCourses = vipGroupDao.countVipGroupOverCourse(vipGroupIds);
 | 
	
		
			
				|  |  |  			Map<Long,Integer> vipGroupOverCourseMaps = MapUtil.convertIntegerMap(vipGroupOverCourses);
 | 
	
		
			
				|  |  | -			List<ClassGroup> classGroupsByVipGroups = vipGroupClassGroupMapperDao.findClassGroupsByVipGroups(vipGroupIds);
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +			List<ClassGroup> classGroupsByVipGroups = classGroupDao
 | 
	
		
			
				|  |  | +					.findByMusicGroupsAndType(vipGroupIds.stream().map(vipGroupId->String.valueOf(vipGroupId)).collect(Collectors.toList()),
 | 
	
		
			
				|  |  | +							ClassGroupTypeEnum.VIP.getCode());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |  			Map<String, ClassGroup> vipGroupClassGroupMap = classGroupsByVipGroups.stream().collect(Collectors.toMap(ClassGroup::getMusicGroupId, classGroup -> classGroup));
 | 
	
		
			
				|  |  |  			dataList.forEach(vipGroup -> {
 | 
	
		
			
				|  |  |  				Integer overCourses = vipGroupOverCourseMaps.get(vipGroup.getId());
 | 
	
	
		
			
				|  | @@ -822,7 +819,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  		if(Objects.isNull(vipGroup)){
 | 
	
		
			
				|  |  |  			throw new BizException("指定的vip课程不存在");
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  | -		ClassGroup classGroup=vipGroupClassGroupMapperDao.findClassGroupByVipGroup(vipGroupId);
 | 
	
		
			
				|  |  | +		ClassGroup classGroup=classGroupDao.findByMusicGroupAndType(vipGroupId.toString(),ClassGroupTypeEnum.VIP.getCode());
 | 
	
		
			
				|  |  |  		if(Objects.isNull(classGroup)){
 | 
	
		
			
				|  |  |  			throw new BizException("未找到关联班级");
 | 
	
		
			
				|  |  |  		}
 | 
	
	
		
			
				|  | @@ -909,13 +906,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  			throw new BizException("您已购买过此课程");
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -		VipGroupClassGroupMapper vipGroupClassGroupMapper = vipGroupClassGroupMapperDao.findByVipGroupId(vipGroup.getId());
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -		if(Objects.isNull(vipGroupClassGroupMapper)){
 | 
	
		
			
				|  |  | -			throw new BizException("课程信息错误");
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -		ClassGroup classGroup = vipGroupClassGroupMapperDao.findClassGroupByVipGroup(vipGroupBuyParams.getVipGroupId());
 | 
	
		
			
				|  |  | +		ClassGroup classGroup= classGroupDao.findByMusicGroupAndType(vipGroup.getId().toString(),ClassGroupTypeEnum.VIP.getCode());
 | 
	
		
			
				|  |  |  		if(Objects.isNull(classGroup)){
 | 
	
		
			
				|  |  |  			throw new BizException("课程信息错误");
 | 
	
		
			
				|  |  |  		}
 | 
	
	
		
			
				|  | @@ -934,7 +925,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  			//更新班级人数,如果订单支付失败则减少
 | 
	
		
			
				|  |  |  			this.updateVipGroupStudentNumAndStatus(vipGroup.getId(),1,false);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -			ClassGroupStudentMapper classGroupStudentMapper=new ClassGroupStudentMapper(vipGroupClassGroupMapper.getClassGroupId(),user.getId().intValue());
 | 
	
		
			
				|  |  | +			ClassGroupStudentMapper classGroupStudentMapper=new ClassGroupStudentMapper(classGroup.getId(),user.getId().intValue());
 | 
	
		
			
				|  |  |  			classGroupStudentMapper.setMusicGroupId(vipGroup.getId().toString());
 | 
	
		
			
				|  |  |  			classGroupStudentMapperDao.insert(classGroupStudentMapper);
 | 
	
		
			
				|  |  |  		}
 | 
	
	
		
			
				|  | @@ -952,7 +943,7 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  		studentPaymentOrder.setMusicGroupId(vipGroup.getId().toString());
 | 
	
		
			
				|  |  |  		studentPaymentOrder.setActualAmount(studentPaymentOrder.getExpectAmount());
 | 
	
		
			
				|  |  |  		studentPaymentOrder.setMusicGroupId(vipGroup.getId().toString());
 | 
	
		
			
				|  |  | -		studentPaymentOrder.setClassGroupId(vipGroupClassGroupMapper.getClassGroupId());
 | 
	
		
			
				|  |  | +		studentPaymentOrder.setClassGroupId(classGroup.getId());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		try {
 | 
	
		
			
				|  |  |  			contractService.register(user.getId(),user.getRealName(),user.getIdCardNo(),user.getPhone());
 | 
	
	
		
			
				|  | @@ -1029,10 +1020,10 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 | 
	
		
			
				|  |  |  		sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_VIP_BUY, map, null, 0, "2",
 | 
	
		
			
				|  |  |  				vipGroup.getName());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -		VipGroupClassGroupMapper vipGroupClassGroupMapper = vipGroupClassGroupMapperDao.findByVipGroupId(vipGroupId);
 | 
	
		
			
				|  |  | +		ClassGroup classGroup=classGroupDao.findByMusicGroupAndType(vipGroupId.toString(),ClassGroupTypeEnum.VIP.getCode());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  		//更新所属分部列表
 | 
	
		
			
				|  |  | -		List<Integer> organIds = classGroupDao.findStudentOrganIdsByClassGroup(vipGroupClassGroupMapper.getClassGroupId().longValue());
 | 
	
		
			
				|  |  | +		List<Integer> organIds = classGroupDao.findStudentOrganIdsByClassGroup(classGroup.getId().longValue());
 | 
	
		
			
				|  |  |  		organIds.add(vipGroup.getOrganId());
 | 
	
		
			
				|  |  |  		HashSet<Integer> hashSet = new HashSet<>(organIds);
 | 
	
		
			
				|  |  |  		String organIdsString = StringUtils.join(hashSet, ",");
 |