| 
					
				 | 
			
			
				@ -189,7 +189,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public long getIntervalIncrement(String startDate, String endDate, String area, int level, String index) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel0(startDate,endDate,area,level,index,"1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -270,7 +270,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            saveModel = elasticsearchUtil.findOneDateQuotaLevel0(startDate,endDate,area,level,index,"1"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -321,9 +321,9 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                map.put("code",saveModel.getTeam()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                map.put("name",saveModel.getCityName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("amount",Long.parseLong(saveModel.getResult2()+"")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("amount",saveModel.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("rate",df.format((saveModel.getResult2() * 1.0000) / populationBase.getNum() * 100)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("rateString",saveModel.getResult2()+"/"+populationBase.getNum()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("rateString",saveModel.getResult2().longValue()+"/"+populationBase.getNum()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            resultList.add(map); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Collections.sort(resultList, new Comparator<Map<String, Object>>() { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -359,7 +359,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String, Object> map = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("code",saveModel.getSlaveKey1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("name",saveModel.getSlaveKey1Name()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("amount",Long.parseLong(saveModel.getResult2()+"")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            map.put("amount",saveModel.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if (index.equals("7")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                // 分组指标总数算法 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                String code = saveModel.getSlaveKey2(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -441,7 +441,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            endDate = elasticsearchUtil.getQuotaTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel0(endDate,area,level,index,timeLevel); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -455,7 +455,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public long getWeiJiaoFei(String endDate, String area, int level) throws Exception{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel1(endDate,area,level,"16","2","0"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -477,12 +477,12 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String timeKey = elasticsearchUtil.getQuotaTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel0(timeKey,area,Integer.parseInt(level),renewIndex,"2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int renewNum = saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int renewNum = saveModel.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //根据年度获取去年的签约数 签约指标是1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String date = year + "-06-30"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String index = "1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel2 = elasticsearchUtil.findOneDateQuotaLevel0(date,area,Integer.parseInt(level),index,"2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int signNum = saveModel2.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int signNum = saveModel2.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject jo = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jo.put("yesterYearSign", signNum);//去年的签约量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        jo.put("thisYearRenew", renewNum);//今年的续签量 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -501,7 +501,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject getSignRate(String endDate, String area, int level, String year) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel0(endDate,area,level,"13","2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long signAmount = saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long signAmount = saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        PopulationBase peopleNum = getPopulationBase(area, year); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject json = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        DecimalFormat df = new DecimalFormat("0.0000"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -532,7 +532,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            endDate = elasticsearchUtil.getQuotaTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel0(endDate,area,level,"13","2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long signAmount = saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long signAmount = saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        PopulationBase peopleNum = getPopulationBase(area, year); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        DecimalFormat df = new DecimalFormat("0.0000"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject json = new JSONObject(); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -563,7 +563,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<SaveModel> list = elasticsearchUtil.findDateQuotaLevel1(endDate,endDate,area,level,"17","2",lowCode,null,null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        long total = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(list.size()>0){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            total = list.get(0).getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            total = list.get(0).getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int num = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int taskNum = 0; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -675,7 +675,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            endDate = elasticsearchUtil.getQuotaTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel1(endDate,area,level,"8","2","6"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -727,7 +727,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for (SaveModel saveModel:list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject range = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            range.put("range", df.format(saveModel.getQuotaDate())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            range.put("amount", saveModel.getResult2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            range.put("amount", saveModel.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            result.add(range); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        json.put("data", new ArrayList<>(result)); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1026,7 +1026,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (esModelList != null && esModelList.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (SaveModel one : esModelList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Map<String, Object> maps = new HashMap<String, Object>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                maps.put("amount", one.getResult1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                maps.put("amount", one.getResult2().longValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (low_level.equals("3")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    maps.put("code", one.getTown()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    maps.put("name", one.getTownName()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1250,7 +1250,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONObject jo = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("name", one.getTownName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("code", one.getTown()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2().intValue(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    ja.put(jo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1259,7 +1259,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    JSONObject jo = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("name", one.getHospitalName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("code", one.getHospital()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2().intValue(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    ja.put(jo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1269,7 +1269,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject jo = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("name", one.getHospitalName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("code", one.getHospital()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2().intValue(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                ja.put(jo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else if (level == 2) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1279,7 +1279,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                JSONObject jo = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("name", one.getTeam()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("code", one.getTeamName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                jo.put("avgCount", getRangeDouuble(one.getResult1(), one.getResult2().intValue(), 2)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                ja.put(jo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            translateTeamLeaderName(ja); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1311,7 +1311,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (esModelList != null && esModelList.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (SaveModel one : esModelList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Map<String, Object> maps = new HashMap<String, Object>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                maps.put("amount", one.getResult1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                maps.put("amount", one.getResult2().intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (low_level.equals("3")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    maps.put("code", one.getTown()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    maps.put("name", one.getTownName()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1405,7 +1405,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (esModelList != null && esModelList.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (SaveModel one : esModelList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                Map<String, Object> maps = new HashMap<String, Object>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                maps.put("amount", one.getResult1()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                maps.put("amount", one.getResult2().intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if (low_level.equals("3")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    maps.put("code", one.getTown()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    maps.put("name", one.getTownName()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1680,9 +1680,9 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //合并结果集 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer totalNm = totalRs.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer relyNm = relyRs.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer noRelyNm = onRelyRs.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer totalNm = totalRs.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer relyNm = relyRs.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Integer noRelyNm = onRelyRs.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            rs.put("name", relyRs.get(area+"Name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(level==4){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                rs.put("name", relyRs.getHospitalName()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1875,9 +1875,9 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //合并结果集 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> rs = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer totalNm = total.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer relyNm = rely.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer noRelyNm = onRely.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer totalNm = total.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer relyNm = rely.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer noRelyNm = onRely.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        rs.put("name", rely.get(area + "Name")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (SaveModel.cityLevel.equals(level+"")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            rs.put("code", rely.getCity()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1970,8 +1970,8 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                //转签量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                switchSaveModel=elasticsearchUtil.findOneDateQuotaLevel0(timeKey,area,level,renewIndex,"2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int renewNum = renewSaveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int switchNum = switchSaveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int renewNum = renewSaveModel.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int switchNum = switchSaveModel.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //根据年度获取去年的签约数 签约指标是1 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(StringUtils.isNoneBlank(lowCode)){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -1991,7 +1991,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                signSaveModel=elasticsearchUtil.findOneDateQuotaLevel0(date,area,level,signIndex,"2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //签约量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int signNum = signSaveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            int signNum = signSaveModel.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            jo.put("yesterYearSign", signNum);//去年的签约量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            jo.put("thisYearRenew", renewNum);//今年的续签量 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            jo.put("thisYearSwithch", switchNum);//今年的转签量 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2056,7 +2056,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private int getLevel1NumForRedis(String index, String level, String code, String timeKey) throws Exception{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel0(timeKey,code,Integer.parseInt(level),index,"2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return saveModel.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 通用的方法 获取二级维度的数据列表 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2214,11 +2214,11 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (renewSaveModels != null && renewSaveModels.size() > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for (SaveModel saveModel : renewSaveModels) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if ("3".equals(low_level)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    renewMap.put(saveModel.getTown(), saveModel.getResult2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    renewMap.put(saveModel.getTown(), saveModel.getResult2().intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else if ("4".equals(low_level)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    renewMap.put(saveModel.getHospital(), saveModel.getResult2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    renewMap.put(saveModel.getHospital(), saveModel.getResult2().intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else if ("5".equals(low_level)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    renewMap.put(saveModel.getTeam(), saveModel.getResult2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    renewMap.put(saveModel.getTeam(), saveModel.getResult2().intValue()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    continue; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2267,7 +2267,7 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    int signNum = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    int renewNum = renewMap.get(reMap.get("code").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    if (one != null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        signNum = Integer.valueOf(one.getResult2()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                        signNum = one.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    reMap.put("rate", getRange(renewNum, signNum, 2));//续签率是 续签量/去年的签约数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    reMap.put("signNum", signNum); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -2299,4 +2299,83 @@ public class StatisticsESService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 统计微信绑定率 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONObject getBindingRate() throws Exception{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject result = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        Long bindCout = jdbcTemplate.queryForObject(getBindingCountSQL(), Long.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        Long signCout = jdbcTemplate.queryForObject(getSignCountSQL(), Long.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String quotaTime = elasticsearchUtil.getQuotaTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        quotaTime = "2017-10-19"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel1 = elasticsearchUtil.findOneDateQuotaLevel0(quotaTime,"350200",Integer.parseInt(SaveModel.cityLevel),"50","2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel2 = elasticsearchUtil.findOneDateQuotaLevel0(quotaTime,"350200",Integer.parseInt(SaveModel.cityLevel),"1","2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer bindCout = saveModel1.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Integer signCout = saveModel2.getResult2().intValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if ((bindCout != null || bindCout != 0) && (signCout != null && signCout != 0)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            double rate = (double) bindCout / signCout * 100; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            DecimalFormat df = new DecimalFormat("###.00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            result.put("bindRate", df.format(rate) + "%"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            result.put("bindRate", "0.00%"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray getAVGSocreByMonth(String level, String area, String startDate, String endDate) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //每个月的评分数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        List<SaveModel> list = elasticsearchUtil.findLineChartDateQuotaLevel0(startDate,endDate,area,Integer.parseInt(level),"28","2","3"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        // 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT count(1) as num FROM wlyy_doctor d WHERE d.czrq<= ? "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (SaveModel.cityLevel.equals(level)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and d.city = ? "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //区级 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else if (SaveModel.townLevel.equals(level)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and d.town = ? "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //机构 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } else if (SaveModel.OrgLevel.equals(level)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            sql += " and d.hospital = ? "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> rs = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONArray jsRs = new JSONArray(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        DecimalFormat df = new DecimalFormat("0.00"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        for(SaveModel saveModel : list){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject json = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            rs = jdbcTemplate.queryForMap(sql, saveModel.getQuotaDate(), area); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            json.put("month", dateFormat.format(saveModel.getQuotaDate())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            double rr = (double) saveModel.getResult1() / (Double.parseDouble(rs.get("num")+"")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            json.put("socre", df.format(rr)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            jsRs.put(json); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return jsRs; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 统计当前团队,签约人数,服务次数,平均满意度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public JSONArray getStatTitleInfo(String doctor, String startDate, String endDate) throws Exception { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        AdminTeam admin = adminTeamDao.findByLeaderCode(doctor); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (admin == null) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new RuntimeException("未找到团队信息"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel0(startDate,endDate,admin.getId()+"",Integer.parseInt(SaveModel.teamLevel),"1","2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //计算签约总数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Long sc = saveModel.getResult2().longValue(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //查找续签表未转移的记录 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //3.平均满意度 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        SaveModel saveModel2 = elasticsearchUtil.findOneDateQuotaLevel0(startDate,endDate,admin.getId()+"",Integer.parseInt(SaveModel.teamLevel),"1","2"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String sql = "SELECT count(1) as num FROM wlyy_consult_team d WHERE d.czrq>= ? and d.czrq<=? and d.admin_team_code =? "; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String, Object> map = jdbcTemplate.queryForMap(sql, startDate, endDate,admin.getId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Double avgCout = saveModel2.getResult1()/(Integer)map.get("num"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |