| 
					
				 | 
			
			
				@@ -664,7 +664,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	@Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	public Map<String, Object> getIndexErrData(String organIdsStr, IndexErrorType errorType) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		//只筛选指定时间之后的数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		String startTime = DateUtil.format(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(new Date(), -2)),DateUtil.ISO_EXPANDED_DATE_FORMAT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String startTime = DateUtil.format(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(new Date(), -1)),DateUtil.ISO_EXPANDED_DATE_FORMAT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Set<Integer> organIds = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(StringUtils.isNotBlank(organIdsStr)){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -689,7 +689,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			List<IndexErrInfoDto> oneChild = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			//基础技能班学员数量异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			oneChild.add(new IndexErrInfoDto(IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE, IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE.getMsg(), indexBaseMonthDataDao.countLessThenThreeClassGroupNum(organIds,educationUserId,tenantId), null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			oneChild.add(new IndexErrInfoDto(IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE, IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE.getMsg(), indexBaseMonthDataDao.countLessThenThreeClassGroupNum(organIds,educationUserId,tenantId,false), null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			//乐团巡查事项异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			int errInspection = indexBaseMonthDataDao.queryErrInspection(organIds,startTime,tenantId); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -780,22 +780,25 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			List<IndexErrInfoDto> fourChild = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			//课程考勤异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			int attendanceError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			int teacherAttendanceError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			int studentAttendanceError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			int noAttendance = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			//课程时间安排异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			int courseTimeError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//			int courseTimeError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if(classGroupIds == null || classGroupIds.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				attendanceError = indexBaseMonthDataDao.getAttendanceError(organIds,startTime,classGroupIds,tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				teacherAttendanceError = indexBaseMonthDataDao.getTeacherAttendanceError(organIds,startTime,classGroupIds,tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				studentAttendanceError = indexBaseMonthDataDao.getStudentAttendanceError(organIds,startTime,classGroupIds,tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				noAttendance = indexBaseMonthDataDao.getNoAttendance(organIds,startTime,classGroupIds,tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				String courseStartTimeError = sysTenantConfigService.getTenantConfigValue(SysConfigService.COURSE_START_TIME_ERROR, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				String courseEndTimeError = sysTenantConfigService.getTenantConfigValue(SysConfigService.COURSE_END_TIME_ERROR, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				if(StringUtils.isNotEmpty(courseStartTimeError) && StringUtils.isNotEmpty(courseEndTimeError)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					courseTimeError = indexBaseMonthDataDao.getCourseTimeError(organIds,classGroupIds,courseStartTimeError,courseEndTimeError,tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//				String courseStartTimeError = sysTenantConfigService.getTenantConfigValue(SysConfigService.COURSE_START_TIME_ERROR, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//				String courseEndTimeError = sysTenantConfigService.getTenantConfigValue(SysConfigService.COURSE_END_TIME_ERROR, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//				if(StringUtils.isNotEmpty(courseStartTimeError) && StringUtils.isNotEmpty(courseEndTimeError)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//					courseTimeError = indexBaseMonthDataDao.getCourseTimeError(organIds,classGroupIds,courseStartTimeError,courseEndTimeError,tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			fourChild.add(new IndexErrInfoDto(IndexErrorType.COURSE_TIME_ERROR, IndexErrorType.COURSE_TIME_ERROR.getMsg(), courseTimeError, null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//			fourChild.add(new IndexErrInfoDto(IndexErrorType.COURSE_TIME_ERROR, IndexErrorType.COURSE_TIME_ERROR.getMsg(), courseTimeError, null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			fourChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE, IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE.getMsg(), attendanceError, null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fourChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE, IndexErrorType.TEACHER_EXCEPTION_ATTENDANCE.getMsg(), teacherAttendanceError, null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			fourChild.add(new IndexErrInfoDto(IndexErrorType.STUDENT_EXCEPTION_ATTENDANCE, IndexErrorType.STUDENT_EXCEPTION_ATTENDANCE.getMsg(), studentAttendanceError, null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			//课程异常 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			fourChild.add(new IndexErrInfoDto(IndexErrorType.TEACHER_NOT_A_CLASS, IndexErrorType.TEACHER_NOT_A_CLASS.getMsg(), noAttendance, null)); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1125,6 +1128,9 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		List<String> musicGroupIds = musicGroupDao.queryHasSubCourseTimes(organIds,tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		result.add(new IndexErrInfoDto(IndexErrorType.MUSIC_GROUP_HAS_COURSE_TIMES, IndexErrorType.MUSIC_GROUP_HAS_COURSE_TIMES.getMsg(),musicGroupIds.size(), null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		//基础技能班学员数量异常提醒 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		result.add(new IndexErrInfoDto(IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE_INFO, IndexErrorType.HIGH_CLASS_STUDENT_LESS_THAN_THREE_INFO.getMsg(), indexBaseMonthDataDao.countLessThenThreeClassGroupNum(organIdSet,educationUserId,tenantId,true), null)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		//合作单位回款提醒 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Map<String, Object> params = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		params.put("organId", organIds); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1137,7 +1143,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	@Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 	public Map<String,Boolean> hasIndexErrData(String organIdsStr) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Integer tenantId = TenantContextHolder.getTenantId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		String startTime = DateUtil.format(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(new Date(), -2)),DateUtil.ISO_EXPANDED_DATE_FORMAT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		String startTime = DateUtil.format(DateUtil.getFirstDayOfMonth(DateUtil.addMonths(new Date(), -1)),DateUtil.ISO_EXPANDED_DATE_FORMAT); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Map<String,Boolean> resultMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Set<Integer> organIds = null; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1156,7 +1162,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		Date date = new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		boolean flag1 = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		int countLessThenThreeClassGroupNum = indexBaseMonthDataDao.countLessThenThreeClassGroupNum(organIds,educationUserId, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		int countLessThenThreeClassGroupNum = indexBaseMonthDataDao.countLessThenThreeClassGroupNum(organIds,educationUserId, tenantId,false); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(countLessThenThreeClassGroupNum > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			flag1 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1247,7 +1253,7 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		resultMap.put("teacherInfo",flag3); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		boolean flag4 = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-		if(!flag4){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/*		if(!flag4){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			int courseTimeError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if(classGroupIds == null || classGroupIds.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				String courseStartTimeError = sysTenantConfigService.getTenantConfigValue(SysConfigService.COURSE_START_TIME_ERROR, tenantId); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1259,11 +1265,20 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if(courseTimeError > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				flag4 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		}*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(!flag4){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			int attendanceError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(classGroupIds == null || classGroupIds.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				attendanceError = indexBaseMonthDataDao.getTeacherAttendanceError(organIds,startTime,classGroupIds, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(attendanceError > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				flag4 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(!flag4){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			int attendanceError = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if(classGroupIds == null || classGroupIds.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				attendanceError = indexBaseMonthDataDao.getAttendanceError(organIds,startTime,classGroupIds, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				attendanceError = indexBaseMonthDataDao.getStudentAttendanceError(organIds,startTime,classGroupIds, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			if(attendanceError > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 				flag4 = true; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -1325,19 +1340,21 @@ public class IndexBaseMonthDataServiceImpl extends BaseServiceImpl<Long, IndexBa 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(!flag5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			if(!flag5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				List<StudentRegistration> studentRegistrations = studentRegistrationDao.queryMemberEndAutoQuitMusic(null,educationUserId,organIdsStr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				if(studentRegistrations.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					flag5 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<StudentRegistration> studentRegistrations = studentRegistrationDao.queryMemberEndAutoQuitMusic(null,educationUserId,organIdsStr); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(studentRegistrations.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				flag5 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		if(!flag5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-			if(!flag5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				List<String> strings = musicGroupDao.queryHasSubCourseTimes(organIdsStr, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				if(strings.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-					flag5 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-				} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			List<String> strings = musicGroupDao.queryHasSubCourseTimes(organIdsStr, tenantId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(strings.size() > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				flag5 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+		if(!flag5){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			int countLessThenThreeClassGroupNumInfo = indexBaseMonthDataDao.countLessThenThreeClassGroupNum(organIds,educationUserId, tenantId,true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+			if(countLessThenThreeClassGroupNumInfo > 0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+				flag5 = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 			} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 		resultMap.put("remindMatterData",flag5); 
			 |