| 
					
				 | 
			
			
				@@ -50,6 +50,9 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     private CloudTeacherDao cloudTeacherDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private OrganizationDao organizationDao; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public BaseDAO<Integer, Student> getDAO() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         return studentDao; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -422,6 +425,72 @@ public class StudentServiceImpl extends BaseServiceImpl<Integer, Student> implem 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public List<EduOrganStudentDataDto> organStudentOverView(List<Integer> organIds) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Organization> organs = organizationDao.getOrgans(organIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(CollectionUtils.isEmpty(organs)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return Collections.emptyList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<Integer, Integer>> organsStudentNumMapList = studentDao.getOrgansStudentNum(organIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, Long> organsStudentNumMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!CollectionUtils.isEmpty(organsStudentNumMapList)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            organsStudentNumMap = MapUtil.convertIntegerMap(organsStudentNumMapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<Integer, Integer>> organsVipStudentNumMapList = cloudTeacherDao.getOrgansVipStudentNum(organIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, Long> organsVipStudentNumMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!CollectionUtils.isEmpty(organsVipStudentNumMapList)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            organsVipStudentNumMap = MapUtil.convertIntegerMap(organsVipStudentNumMapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<Integer, Integer>> organsEVipStudentNumMapList = studentDao.getOrgansEVipStudentNum(organIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, Long> organsEVipStudentNumMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!CollectionUtils.isEmpty(organsEVipStudentNumMapList)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            organsEVipStudentNumMap = MapUtil.convertIntegerMap(organsEVipStudentNumMapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<Integer, Integer>> organCloudStudyStudentNumMapList = studentDao.getOrganCloudStudyStudentNum(organIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, Long> organCloudStudyStudentNumMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!CollectionUtils.isEmpty(organCloudStudyStudentNumMapList)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            organCloudStudyStudentNumMap = MapUtil.convertIntegerMap(organCloudStudyStudentNumMapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<Integer, Integer>> organCloudStudyLivelyStudentNumMapList = studentDao.getOrganCloudStudyLivelyStudentNum(organIds); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Map<String, Long> organCloudStudyLivelyStudentNumMap = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!CollectionUtils.isEmpty(organCloudStudyLivelyStudentNumMapList)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            organCloudStudyLivelyStudentNumMap = MapUtil.convertIntegerMap(organCloudStudyLivelyStudentNumMapList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<EduOrganStudentDataDto> result = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (Organization organ : organs) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            EduOrganStudentDataDto organStudentVipData = new EduOrganStudentDataDto(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            organStudentVipData.setOrganName(organ.getName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(organsStudentNumMap.containsKey(organ.getId().toString())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                organStudentVipData.setTotalStudentNum(organsStudentNumMap.get(organ.getId().toString()).intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(organsVipStudentNumMap.containsKey(organ.getId().toString())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                organStudentVipData.setVipStudentNum(organsVipStudentNumMap.get(organ.getId().toString()).intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(organsEVipStudentNumMap.containsKey(organ.getId().toString())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                organStudentVipData.seteVipStudentNum(organsEVipStudentNumMap.get(organ.getId().toString()).intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(organCloudStudyStudentNumMap.containsKey(organ.getId().toString())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                organStudentVipData.setCloudStudyUseStudentNum(organCloudStudyStudentNumMap.get(organ.getId().toString()).intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(organCloudStudyLivelyStudentNumMap.containsKey(organ.getId().toString())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                organStudentVipData.setCloudStudyLivelyStudentNum(organCloudStudyLivelyStudentNumMap.get(organ.getId().toString()).intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(organStudentVipData.getVipStudentNum()>0&&organStudentVipData.getTotalStudentNum()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                organStudentVipData.setVipStudentDuty(new BigDecimal(organStudentVipData.getVipStudentNum()).divide(new BigDecimal(organStudentVipData.getTotalStudentNum()), 4, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).floatValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(organStudentVipData.getCloudStudyUseStudentNum()>0&&organStudentVipData.getTotalStudentNum()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                organStudentVipData.setCloudStudyUseStudentDuty(new BigDecimal(organStudentVipData.getCloudStudyUseStudentNum()).divide(new BigDecimal(organStudentVipData.getTotalStudentNum()), 4, BigDecimal.ROUND_DOWN).multiply(new BigDecimal(100)).floatValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            result.add(organStudentVipData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public void cleanStudentCloudStudySequenceDays() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         studentDao.cleanStudentCloudStudySequenceDays(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 |