|  | @@ -1346,6 +1346,9 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
 | 
	
		
			
				|  |  |              checkTeacherLeaveDate = false;
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +        SysConfig practiceFreeApplyExpireDateConfig = sysConfigService.findByParamName(SysConfigService.PRACTICE_FREE_APPLY_EXPIRE_DATE);
 | 
	
		
			
				|  |  | +        Date practiceFreeApplyExpireDate = DateUtil.stringToDate(practiceFreeApplyExpireDateConfig.getParanValue());
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |          Date now = new Date();
 | 
	
		
			
				|  |  |          if (now.before(applyStartDay)) {
 | 
	
		
			
				|  |  |              now = applyStartDay;
 | 
	
	
		
			
				|  | @@ -1356,13 +1359,13 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
 | 
	
		
			
				|  |  |          calendar.set(Calendar.MINUTE, 0);
 | 
	
		
			
				|  |  |          calendar.set(Calendar.SECOND, 0);
 | 
	
		
			
				|  |  |          calendar.set(Calendar.MILLISECOND, 0);
 | 
	
		
			
				|  |  | -        while (calendar.getTime().before(activityEndDate)) {
 | 
	
		
			
				|  |  | +        while (calendar.getTime().before(practiceFreeApplyExpireDate)) {
 | 
	
		
			
				|  |  |              calendar.add(Calendar.DATE, 1);
 | 
	
		
			
				|  |  |              Date applyStartDay = calendar.getTime();
 | 
	
		
			
				|  |  |              calendar.add(Calendar.DATE, 6);
 | 
	
		
			
				|  |  |              Date applyEndDay = calendar.getTime();
 | 
	
		
			
				|  |  | -            if (applyEndDay.after(activityEndDate)) {
 | 
	
		
			
				|  |  | -                applyEndDay = activityEndDate;
 | 
	
		
			
				|  |  | +            if (applyEndDay.after(practiceFreeApplyExpireDate)) {
 | 
	
		
			
				|  |  | +                applyEndDay = practiceFreeApplyExpireDate;
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              Date firstMonday = DateUtil.getWeekDayWithDate(applyStartDay, Calendar.MONDAY);
 | 
	
		
			
				|  |  |              Date secondMonday = DateUtil.getWeekDayWithDate(applyEndDay, Calendar.MONDAY);
 |