|  | @@ -86,12 +86,13 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 | 
	
		
			
				|  |  |  		Date date = new Date();
 | 
	
		
			
				|  |  |  		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderService.get(calenderDetails.get(0).getMusicGroupPaymentCalenderId());
 | 
	
		
			
				|  |  |  		//缴费项目已结束,并且没有单独开启缴费的学员,不能修改缴费金额
 | 
	
		
			
				|  |  | -		if(calender.getStatus() == OVER){
 | 
	
		
			
				|  |  | -			List<MusicGroupPaymentCalenderDetail> paymentCalenderDetails = calenderDetails.stream().filter(e -> e.getOpenFlag() == YesOrNoEnum.NO).collect(Collectors.toList());
 | 
	
		
			
				|  |  | -			if(paymentCalenderDetails != null && paymentCalenderDetails.size() > 0){
 | 
	
		
			
				|  |  | -				throw new BizException("修改失败:存在未开启缴费的学员");
 | 
	
		
			
				|  |  | -			}
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | +//		if(calender.getStatus() == OVER){
 | 
	
		
			
				|  |  | +//			List<MusicGroupPaymentCalenderDetail> paymentCalenderDetails = calenderDetails.stream().filter(e -> e.getOpenFlag() == YesOrNoEnum.NO).collect(Collectors.toList());
 | 
	
		
			
				|  |  | +//			if(paymentCalenderDetails != null && paymentCalenderDetails.size() > 0){
 | 
	
		
			
				|  |  | +//				throw new BizException("修改失败:存在未开启缴费的学员");
 | 
	
		
			
				|  |  | +//			}
 | 
	
		
			
				|  |  | +//		}
 | 
	
		
			
				|  |  | +		//为了解决学员欠费数量的问题,只要学员没有缴费就可以修改金额
 | 
	
		
			
				|  |  |  		Set<Integer> studentIds = new HashSet<>();
 | 
	
		
			
				|  |  |  				calenderDetails.forEach(e->{
 | 
	
		
			
				|  |  |  			if(e.getPaymentStatus() == null || e.getPaymentStatus() != NON_PAYMENT){
 | 
	
	
		
			
				|  | @@ -110,7 +111,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 | 
	
		
			
				|  |  |  		});
 | 
	
		
			
				|  |  |  		musicGroupPaymentCalenderDetailDao.batchUpdate(calenderDetails);
 | 
	
		
			
				|  |  |  		//推送消息
 | 
	
		
			
				|  |  | -		if (calender.getPayUserType() == STUDENT && studentIds.size() > 0) {
 | 
	
		
			
				|  |  | +		/*if (calender.getPayUserType() == STUDENT && studentIds.size() > 0) {
 | 
	
		
			
				|  |  |  			String musicGroupId = calenderDetails.get(0).getMusicGroupId();
 | 
	
		
			
				|  |  |  			Map<Integer, String> push = new HashMap<>();
 | 
	
		
			
				|  |  |  			for (Integer userId : studentIds) {
 | 
	
	
		
			
				|  | @@ -129,7 +130,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 | 
	
		
			
				|  |  |  				sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.STUDENT_SMS_WAIT_RENEW_MESSAGE, studentMaps,
 | 
	
		
			
				|  |  |  						null, 0, memo, null, musicGroup.getName());
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | +		}*/
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  	@Override
 | 
	
	
		
			
				|  | @@ -145,8 +146,8 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  		int length = ids.split(",").length;
 | 
	
		
			
				|  |  |  		Date date = new Date();
 | 
	
		
			
				|  |  | -		Long calenderId = calenderDetails.get(0).getMusicGroupPaymentCalenderId();
 | 
	
		
			
				|  |  | -		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderService.get(calenderId);
 | 
	
		
			
				|  |  | +//		Long calenderId = calenderDetails.get(0).getMusicGroupPaymentCalenderId();
 | 
	
		
			
				|  |  | +//		MusicGroupPaymentCalender calender = musicGroupPaymentCalenderService.get(calenderId);
 | 
	
		
			
				|  |  |  		calenderDetails.forEach(e->{
 | 
	
		
			
				|  |  |  			e.setUpdateTime(date);
 | 
	
		
			
				|  |  |  			e.setOpen(1);
 | 
	
	
		
			
				|  | @@ -156,7 +157,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 | 
	
		
			
				|  |  |  		musicGroupPaymentCalenderDetailDao.batchUpdate(calenderDetails);
 | 
	
		
			
				|  |  |  		Set<Integer> studentIds = calenderDetails.stream().map(e -> e.getUserId()).collect(Collectors.toSet());
 | 
	
		
			
				|  |  |  		//推送消息
 | 
	
		
			
				|  |  | -		if (calender.getPayUserType() == STUDENT && studentIds.size() > 0) {
 | 
	
		
			
				|  |  | +		/*if (calender.getPayUserType() == STUDENT && studentIds.size() > 0) {
 | 
	
		
			
				|  |  |  			Map<Integer, String> push = new HashMap<>();
 | 
	
		
			
				|  |  |  			for (Integer userId : studentIds) {
 | 
	
		
			
				|  |  |  				push.put(userId, userId + "");
 | 
	
	
		
			
				|  | @@ -173,7 +174,7 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 | 
	
		
			
				|  |  |  				sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.STUDENT_SMS_WAIT_RENEW_MESSAGE, studentMaps,
 | 
	
		
			
				|  |  |  						null, 0, memo, null, musicGroup.getName());
 | 
	
		
			
				|  |  |  			}
 | 
	
		
			
				|  |  | -		}
 | 
	
		
			
				|  |  | +		}*/
 | 
	
		
			
				|  |  |  		StringBuffer append = new StringBuffer("操作成功: 成功开启缴费").append(studentIds.size()).append("条,失败").append(length - studentIds.size()).append("条");
 | 
	
		
			
				|  |  |  		return append.toString();
 | 
	
		
			
				|  |  |  	}
 | 
	
	
		
			
				|  | @@ -590,4 +591,36 @@ public class MusicGroupPaymentCalenderDetailServiceImpl extends BaseServiceImpl<
 | 
	
		
			
				|  |  |  		}
 | 
	
		
			
				|  |  |  		return musicGroupPaymentCalenderDetailDao.getNoPaymentStudentMusicGroups(organIds);
 | 
	
		
			
				|  |  |  	}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +	@Override
 | 
	
		
			
				|  |  | +	public void pushWaitRenewMessage(Long calenderDetailId, String studentIds) {
 | 
	
		
			
				|  |  | +		MusicGroupPaymentCalenderDetail calenderDetail = musicGroupPaymentCalenderDetailDao.get(calenderDetailId);
 | 
	
		
			
				|  |  | +		if(calenderDetail == null){
 | 
	
		
			
				|  |  | +			throw new BizException("缴费详情不存在");
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +		Long calenderId = calenderDetail.getMusicGroupPaymentCalenderId();
 | 
	
		
			
				|  |  | +		MusicGroupPaymentCalender paymentCalender = musicGroupPaymentCalenderDao.get(calenderId);
 | 
	
		
			
				|  |  | +		if(paymentCalender.getStatus() != OPEN && calenderDetail.getOpenFlag() != YesOrNoEnum.YES){
 | 
	
		
			
				|  |  | +			throw new BizException("操作失败:请开启缴费");
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +		//未缴费
 | 
	
		
			
				|  |  | +		HashSet<String> strings = new HashSet<>(Arrays.asList(studentIds.split(",")));
 | 
	
		
			
				|  |  | +		Map<Integer,String> studentMaps = MapUtil.convertMybatisMap(musicGroupPaymentCalenderDetailDao.queryNoPaymentAndNotZeroStudent(calenderId,strings));
 | 
	
		
			
				|  |  | +		if(studentMaps.size() > 0){
 | 
	
		
			
				|  |  | +			MusicGroup musicGroup = musicGroupDao.get(paymentCalender.getMusicGroupId());
 | 
	
		
			
				|  |  | +			String baseUrl = sysConfigDao.findConfigValue(SysConfigService.BASE_API_URL);
 | 
	
		
			
				|  |  | +			String memo = "4?" + baseUrl + "/#/musicGroupRenew?calenderId="+calenderId+"&id=" + musicGroup.getId();
 | 
	
		
			
				|  |  | +			Map<Integer, String> push = new HashMap<>();
 | 
	
		
			
				|  |  | +			for (String userId : strings) {
 | 
	
		
			
				|  |  | +				push.put(Integer.parseInt(userId), userId);
 | 
	
		
			
				|  |  | +			}
 | 
	
		
			
				|  |  | +			// 发送续费通知
 | 
	
		
			
				|  |  | +			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.STUDENT_PUSH_WAIT_RENEW_MESSAGE, push,
 | 
	
		
			
				|  |  | +					null, 0, memo, "STUDENT", musicGroup.getName());
 | 
	
		
			
				|  |  | +			sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.AWSMS, MessageTypeEnum.STUDENT_SMS_WAIT_RENEW_MESSAGE, studentMaps,
 | 
	
		
			
				|  |  | +					null, 0, memo, null, musicGroup.getName());
 | 
	
		
			
				|  |  | +		}else {
 | 
	
		
			
				|  |  | +			throw new BizException("操作失败:没有待续费学员");
 | 
	
		
			
				|  |  | +		}
 | 
	
		
			
				|  |  | +	}
 | 
	
		
			
				|  |  |  }
 |