| 
					
				 | 
			
			
				@ -903,7 +903,6 @@ public class StatisticsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        res.put("inTime", saveModel3.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        res.put("noReplyRate", statisticsUtilService.getTwoRange(saveModel2.getResult2(), saveModel1.getResult2())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        res.put("inTimeRate", statisticsUtilService.getTwoRange(saveModel3.getResult2(), saveModel1.getResult2())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return res; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1098,7 +1097,8 @@ public class StatisticsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if ("37".equals(index)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            archiType = "1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<SaveModel> sexList = elasticsearchUtil.findDateQuotaLevel2ByKeyGroup(endDate, endDate, defalutArea, level, "51", SaveModel.timeLevel_DDL, null, archiType, null, null, "2", "1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<SaveModel> sexList = elasticsearchUtil.findDateQuotaLevel2ByKeyGroup(endDate, endDate, area, level, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "51", SaveModel.timeLevel_DDL, null, archiType, null, null, null, "1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray sexArray = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (int i = 0; i < sexList.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            SaveModel saveModel = sexList.get(i); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1420,7 +1420,7 @@ public class StatisticsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 管理端首页安防预警统计分析 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject statisticsSecurityOlder(String endDate, String area, int level, String type) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject statisticsSecurityOlder(String endDate, String area, Integer level, String type) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject res = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevels(endDate, endDate, area, level, "46", SaveModel.timeLevel_DDL, null, null, "-2,0,1" ); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1857,8 +1857,7 @@ public class StatisticsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject patientAnalysisDP(String endDate, String area, int level, String index) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject res = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String areaLevel = "6"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if ("42".equals(index)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            areaLevel = "4"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if ("42".equals(index)) {//幼儿 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //新生儿 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //是否入学 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<SaveModel> statusList = elasticsearchUtil.findDateAllQuotaLevel1(endDate, endDate, area, level, index, SaveModel.timeLevel_DDL, null, null, areaLevel); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1872,13 +1871,13 @@ public class StatisticsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                statusArray.add(json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("statusList", statusArray); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else {//老人 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //老人 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //能力评估 从签约时服务标签取 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("levelList", cloudCareForTheElderly(endDate, area, level)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //居民健康标签 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<SaveModel> list = elasticsearchUtil.findDateAllQuotaLevel1(endDate, endDate, area, level, "47", SaveModel.timeLevel_DDL, null, null, "2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<SaveModel> list = elasticsearchUtil.findDateAllQuotaLevel1(endDate, endDate, area, level, "47", SaveModel.timeLevel_DDL, null, null, areaLevel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONArray labelArr = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Long total = 0l; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int i = 0; i < list.size(); i++) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1903,7 +1902,7 @@ public class StatisticsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //年龄分布 50 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            ageList = elasticsearchUtil.findDateAllQuotaLevel1(endDate, endDate, area, level, "50", SaveModel.timeLevel_DDL,null,null,"2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<SaveModel> ageList = elasticsearchUtil.findDateAllQuotaLevel1(endDate, endDate, area, level, "50", SaveModel.timeLevel_DDL, null, null, "2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            List<SaveModel> ageList = elasticsearchUtil.findDateAllQuotaLevel1(endDate, endDate, area, level, "50", SaveModel.timeLevel_DDL, null, null, areaLevel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONArray ageArray = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (int i = 0; i < ageList.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                SaveModel saveModel = ageList.get(i); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2561,4 +2560,61 @@ public class StatisticsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return list; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 咨询排名情况 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endDate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param area 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param level 1省2市3区县4机构5团队6医生 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param type 咨询类型 23新生儿在线咨询 24老人在线咨询,25老人健康咨询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray getConsultAnalysisRank(String endDate,String area,int level,String type) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray result = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String totalIndex = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String noReplyIndex = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String inTimeIndex = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String lowLevel = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if ("23".equals(type)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            totalIndex = "28"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            noReplyIndex = "29"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            inTimeIndex = "30"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            lowLevel = "4"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if ("24".equals(type)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            totalIndex = "31"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            noReplyIndex = "32"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            inTimeIndex = "33"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            lowLevel = "5"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else if ("25".equals(type)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            totalIndex = "57"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            noReplyIndex = "58"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            inTimeIndex = "59"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            lowLevel = "5"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //按机构排名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<SaveModel> list = elasticsearchUtil.findDateQuotaLevelList(endDate, endDate, area, level, totalIndex, SaveModel.timeLevel_DDL,null,lowLevel, null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (SaveModel tmp:list){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject res = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            SaveModel saveModel2 = elasticsearchUtil.findOneDateQuotaLevel0(endDate, endDate, area, level, noReplyIndex, SaveModel.timeLevel_DDL); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //及时回复数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            SaveModel saveModel3 = elasticsearchUtil.findOneDateQuotaLevel0(endDate, endDate, area, level, inTimeIndex, SaveModel.timeLevel_DDL); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("total", tmp.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("dept", tmp.getDept()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("deptName", tmp.getDeptName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("hospital", tmp.getHospital()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("hospitalName", tmp.getHospitalName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("noReply", saveModel2.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("inTime", saveModel3.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("finish", saveModel2.getResult2().longValue()+saveModel3.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("noReplyRate", commonUtil.getRangeDouble(saveModel2.getResult2().intValue(), tmp.getResult2().intValue())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("inTimeRate", commonUtil.getRangeDouble(saveModel3.getResult2().intValue(), tmp.getResult2().intValue())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            res.put("finishRate", commonUtil.getRangeDouble(saveModel2.getResult2().intValue()+saveModel3.getResult2().intValue(), tmp.getResult2().intValue())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            result.add(res); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        result.sort(Comparator.comparing(obj -> ((JSONObject) obj).getDouble("finishRate")).reversed()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |