Przeglądaj źródła

es代码提交

Conflicts:
	patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/statisticsES/StatisticsESService.java
ES代码提交
liuwenbin 7 lat temu
rodzic
commit
7bbed20ca3

+ 81 - 47
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/statisticsES/StatisticsESService.java

@ -169,7 +169,7 @@ public class StatisticsESService {
    public JSONArray getDateIncrementDetail(String startDate, String endDate, String interval, String area, int level, String index, String level2_type) throws Exception {
        List<SaveModel> list = null;
        if (StringUtils.isNotEmpty(level2_type)) {
            list = elasticsearchUtil.findLineChartDateQuotaLevel1(startDate, endDate, area, level, index, "1", interval,1, level2_type);
            list = elasticsearchUtil.findLineChartDateQuotaLevel1(startDate, endDate, area, level, index, "1", interval, level2_type);
        } else {
            list = elasticsearchUtil.findLineChartDateQuotaLevel0(startDate, endDate, area, level, index, "1", interval);
        }
@ -271,7 +271,7 @@ public class StatisticsESService {
        SaveModel saveModel = null;
        if (StringUtils.isNotEmpty(level2_type)) {
            saveModel = elasticsearchUtil.findOneDateQuotaLevel1(startDate, endDate, area, level, index, "1",1, level2_type);
            saveModel = elasticsearchUtil.findOneDateQuotaLevel1(startDate, endDate, area, level, index, "1", level2_type);
        } else {
            saveModel = elasticsearchUtil.findOneDateQuotaLevel0(startDate, endDate, area, level, index, "1");
        }
@ -301,7 +301,7 @@ public class StatisticsESService {
        List<SaveModel> list = null;
        if (StringUtils.isNotEmpty(level2_type)) {
            list = elasticsearchUtil.findListDateQuotaLevel1(startDate, endDate, area, level, index, "1", lowLevel,1, level2_type);
            list = elasticsearchUtil.findListDateQuotaLevel1(startDate, endDate, area, level, index, "1", lowLevel, level2_type);
        } else {
            list = elasticsearchUtil.findListDateQuotaLevel0(startDate, endDate, area, level, index, "1", lowLevel);
        }
@ -535,7 +535,7 @@ public class StatisticsESService {
     */
    public long getWeiJiaoFei(String endDate, String area, int level) throws Exception {
        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel1(endDate, area, level, "16", "2", 1,"0");
        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel1(endDate, area, level, "16", "2", "0");
        return saveModel.getResult2().longValue();
    }
@ -755,7 +755,7 @@ public class StatisticsESService {
        if (endDate.compareTo(dateFormat.format(new Date())) >= 0) {
            endDate = elasticsearchUtil.getQuotaTime();
        }
        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel1(endDate, area, level, "8", "2", 1,"6");
        SaveModel saveModel = elasticsearchUtil.findOneDateQuotaLevel1(endDate, area, level, "8", "2", "6");
        return saveModel.getResult2().longValue();
    }
@ -799,7 +799,7 @@ public class StatisticsESService {
        List<SaveModel> list = null;
        if (StringUtils.isNotEmpty(lowCode)) {
            //一级维度
            list = elasticsearchUtil.findLineChartDateQuotaLevel1(startDate, endDate, area, level, index, "2", interval + "",1, lowCode);
            list = elasticsearchUtil.findLineChartDateQuotaLevel1(startDate, endDate, area, level, index, "2", interval + "", lowCode);
        } else {
            list = elasticsearchUtil.findLineChartDateQuotaLevel0(startDate, endDate, area, level, index, "2", interval + "");
        }
@ -904,7 +904,7 @@ public class StatisticsESService {
        String low_level = String.valueOf(org.springframework.util.StringUtils.isEmpty(lowLevel) ? (level + 1) : lowLevel);
        List<Map<String, Object>> resultList = new ArrayList<>();
        List<SaveModel> esModelList = (List<SaveModel>) elasticsearchUtil.findListDateQuotaLevel1(date, area, level, index, SaveModel.timeLevel_DDL, low_level, 1,lowCode);
        List<SaveModel> esModelList = (List<SaveModel>) elasticsearchUtil.findListDateQuotaLevel1(date, area, level, index, SaveModel.timeLevel_DDL, low_level, lowCode);
        if (esModelList != null && esModelList.size() > 0) {
            for (SaveModel one : esModelList) {
@ -1102,7 +1102,7 @@ public class StatisticsESService {
        String low_level = String.valueOf(org.springframework.util.StringUtils.isEmpty(lowLevel) ? (level + 1) : lowLevel);
        List<Map<String, Object>> resultList = new ArrayList<>();
        List<SaveModel> esModelList = (List<SaveModel>) elasticsearchUtil.findListDateQuotaLevel1(date, area, level, index, SaveModel.timeLevel_DDL, lowLevel, 1,lowCode);
        List<SaveModel> esModelList = (List<SaveModel>) elasticsearchUtil.findListDateQuotaLevel1(date, area, level, index, SaveModel.timeLevel_DDL, lowLevel, lowCode);
        if (esModelList != null && esModelList.size() > 0) {
            for (SaveModel one : esModelList) {
@ -1996,9 +1996,9 @@ public class StatisticsESService {
            SaveModel signSaveModel = new SaveModel();
            if (StringUtils.isNotBlank(lowCode)) {
                //续签量
                renewSaveModel = elasticsearchUtil.findOneDateQuotaLevel1(timeKey, area, level, renewIndex, "2", 1,lowCode);
                renewSaveModel = elasticsearchUtil.findOneDateQuotaLevel1(timeKey, area, level, renewIndex, "2", lowCode);
                //转签量
                switchSaveModel = elasticsearchUtil.findOneDateQuotaLevel1(timeKey, area, level, switchIndex, "2", 1,lowCode);
                switchSaveModel = elasticsearchUtil.findOneDateQuotaLevel1(timeKey, area, level, switchIndex, "2", lowCode);
            } else {
                //续签量
                renewSaveModel = elasticsearchUtil.findOneDateQuotaLevel0(timeKey, area, level, renewIndex, "2");
@ -2021,7 +2021,7 @@ public class StatisticsESService {
                    lowCode = "2";
                }
                signIndex = "17";
                signSaveModel = elasticsearchUtil.findOneDateQuotaLevel1(date, area, level, signIndex, "2", 1,lowCode);
                signSaveModel = elasticsearchUtil.findOneDateQuotaLevel1(date, area, level, signIndex, "2", lowCode);
            } else {
                signSaveModel = elasticsearchUtil.findOneDateQuotaLevel0(date, area, level, signIndex, "2");
            }
@ -2279,13 +2279,13 @@ public class StatisticsESService {
            } else {
                if ("3".equals(lowCode)) {
                    //老年人
                    yearsList = elasticsearchUtil.findListDateQuotaLevel1(lastDate, "", Integer.valueOf(low_level), "17", "2", "", 1,"3");
                    yearsList = elasticsearchUtil.findListDateQuotaLevel1(lastDate, "", Integer.valueOf(low_level), "17", "2", "", "3");
                } else if ("4".equals(lowCode)) {
                    //高血压
                    yearsList = elasticsearchUtil.findListDateQuotaLevel1(lastDate, "", Integer.valueOf(low_level), "17", "2", "", 1,"1");
                    yearsList = elasticsearchUtil.findListDateQuotaLevel1(lastDate, "", Integer.valueOf(low_level), "17", "2", "", "1");
                } else if ("5".equals(lowCode)) {
                    //糖尿病
                    yearsList = elasticsearchUtil.findListDateQuotaLevel1(lastDate, "", Integer.valueOf(low_level), "17", "2", "", 1,"2");
                    yearsList = elasticsearchUtil.findListDateQuotaLevel1(lastDate, "", Integer.valueOf(low_level), "17", "2", "", "2");
                } else {
                }
            }
@ -2775,7 +2775,7 @@ public class StatisticsESService {
        String quotaDate = elasticsearchUtil.getQuotaTime();
        //总数
        if (StringUtils.isNotBlank(disease)) {
            total = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", 1,disease);
            total = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", disease);
        } else {
            total = elasticsearchUtil.findOneDateQuotaLevel0(quotaDate, area, level, index, "2");
        }
@ -2783,31 +2783,31 @@ public class StatisticsESService {
        if (StringUtils.isNotBlank(disease)) {
            processing = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index, "2",  disease, "1");
        } else {
            processing = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", 1,"1");
            processing = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", "1");
        }
        //已完成
        if (StringUtils.isNotBlank(disease)) {
            finished = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index, "2",  disease, "2");
        } else {
            finished = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", 1,"2");
            finished = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", "2");
        }
        //已经取消
        if (StringUtils.isNotBlank(disease)) {
            canceled = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index, "2",  disease, "3");
        } else {
            canceled = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", 1,"3");
            canceled = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", "3");
        }
        //审核不通过
        if (StringUtils.isNotBlank(disease)) {
            unPass = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index, "2",  disease, "4");
        } else {
            unPass = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", 1,"4");
            unPass = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", "4");
        }
        //其他原因取消
        if (StringUtils.isNotBlank(disease)) {
            other = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index, "2",  disease, "5");
        } else {
            other = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", 1,"5");
            other = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index, "2", "5");
        }
        //总数
@ -2923,7 +2923,7 @@ public class StatisticsESService {
    public List<Map<String, Object>> getPrescriptionAgeLowLevel(String level, String lowlevel, String area, String disease) throws Exception {
        String quotaDate = elasticsearchUtil.getQuotaTime();
        List<SaveModel> list = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), "58", "2", lowlevel, 1,disease);
        List<SaveModel> list = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), "58", "2", lowlevel, disease);
        Map<String, Object> map = null;
        List<Map<String, Object>> rs = new ArrayList<>();
        if (list.size() > 0) {
@ -3065,7 +3065,7 @@ public class StatisticsESService {
            //类型0.总量,1.进行中,2.已完成,3.居民取消,4.审核不通过,5.其他原因取消
            if ("0".equals(type)) {
                //总数
                resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index, "1", "3", 1,disease);
                resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index, "1", "3", disease);
            } else {
                resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, index, "1", "3", disease, type);
            }
@ -3074,7 +3074,7 @@ public class StatisticsESService {
                //总数
                resultList = elasticsearchUtil.findLineChartDateQuotaLevel0(startTime, endTime, area, level, index, "1", "3");
            } else {
                resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index, "1", "3", 1,type);
                resultList = elasticsearchUtil.findLineChartDateQuotaLevel1Key2(startTime, endTime, area, level, index, "1", "3", type);
            }
        }
@ -3115,24 +3115,44 @@ public class StatisticsESService {
        //一级维度
        if (StringUtils.isEmpty(disease)) {
            //类型 1.总量,2.已完成,3.居民取消,4.审核不通过,5.进行中,6.其他原因取消
//            if ("1".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel0(quotaDate, area, level, index, "2", lowlevel);
//            } else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, type);
//            } else if ("5".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, "1");
//            } else if ("6".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, "5");
//            }
            if ("1".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel0(quotaDate, area, level, index, "2", lowlevel);
            } else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, 1,type);
            } else if ("5".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, 1,"1");
                //总数
                saveModels = elasticsearchUtil.findListDateQuotaLevel0(quotaDate,area,level,index,"2",lowlevel);
            } else if("2".equals(type) || "3".equals(type) || "4".equals(type)){
                saveModels = elasticsearchUtil.findListDateQuotaLevel1Key2(quotaDate,area,level,index,"2",lowlevel,type);
            } else if("5".equals(type)){
                saveModels = elasticsearchUtil.findListDateQuotaLevel1Key2(quotaDate,area,level,index,"2",lowlevel,"1");
            } else if ("6".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, 1,"5");
                saveModels = elasticsearchUtil.findListDateQuotaLevel1Key2(quotaDate,area,level,index,"2",lowlevel,"5");
            }
        } else {
            //类型 1.总量,2.已完成,3.居民取消,4.审核不通过,5.进行中,6.其他原因取消
//            if ("1".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, disease);
//            } else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index, "2", lowlevel, disease, type);
//            } else if ("5".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index, "2", lowlevel, disease, "1");
//            } else if ("6".equals(type)) {
//                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index, "2", lowlevel, disease, "5");
//            }
            if ("1".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, 1,disease);
            } else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
                //总数String quotaDate,  String area, int level, String index, String timelevel,String lowLevel, String slaveKey2
                saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate,area,level,index,"2",lowlevel,disease);
            } else if("2".equals(type) || "3".equals(type) || "4".equals(type)){
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index, "2", lowlevel, disease, type);
            } else if ("5".equals(type)) {
            } else if("5".equals(type)){
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index, "2", lowlevel, disease, "1");
            } else if ("6".equals(type)) {
            } else if("6".equals(type)){
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index, "2", lowlevel, disease, "5");
            }
        }
@ -3274,11 +3294,11 @@ public class StatisticsESService {
            healthDoctorList = elasticsearchUtil.findListDateQuotaLevel2(quotaTime, area, level, "62", "2", "", "2", disease);
        } else {
            //自取
            seltList = elasticsearchUtil.findListDateQuotaLevel1(quotaTime, area, level, "62", "2", "", 1,"1");
            seltList = elasticsearchUtil.findListDateQuotaLevel1(quotaTime, area, level, "62", "2", "", "1");
            //物流配送
            deliveryList = elasticsearchUtil.findListDateQuotaLevel1(quotaTime, area, level, "62", "2", "", 1,"2");
            deliveryList = elasticsearchUtil.findListDateQuotaLevel1(quotaTime, area, level, "62", "2", "", "2");
            //健管师配送
            healthDoctorList = elasticsearchUtil.findListDateQuotaLevel1(quotaTime, area, level, "62", "2", "", 1,"2");
            healthDoctorList = elasticsearchUtil.findListDateQuotaLevel1(quotaTime, area, level, "62", "2", "", "2");
        }
        Map<String, Object> rs = new HashedMap();
@ -3336,7 +3356,7 @@ public class StatisticsESService {
        if (StringUtils.isNotBlank(disease)) {
            resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, "62", "2", "3", type, disease);
        } else {
            resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, "62", "2", "3", 1,type);
            resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, "62", "2", "3", type);
        }
        for (Map<String, Object> m : rs) {
@ -3373,7 +3393,7 @@ public class StatisticsESService {
            //类型 1.自取,2.快递配送,3.健管师配送
            saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index, "2", lowlevel, type, disease);
        } else {
            saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, 1,type);
            saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index, "2", lowlevel, type);
        }
        if ("5".equals(lowlevel)) {
            translateTeamLeaderName2(saveModels);
@ -3454,7 +3474,7 @@ public class StatisticsESService {
        String quotaDate = elasticsearchUtil.getQuotaTime();
        //1.总量
        List<SaveModel> list = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), "61", "2", lowlevel,1, disease);
        List<SaveModel> list = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), "61", "2", lowlevel, disease);
        Map<String, Object> map = null;
        List<Map<String, Object>> countList = new ArrayList<>();
        if ("1".equals(type)) {
@ -3493,7 +3513,11 @@ public class StatisticsESService {
                    map.put("name", one.getTeamName());
                }
                Long num = (Long) count.get("num");
                String avg = decimalFormat.format(one.getResult1() / num);
                String avg = "0.0";
                if(num!=0){
                    avg = decimalFormat.format(one.getResult1() / num);
                }
                map.put("val", avg);
                countList.add(map);
            }
@ -3515,13 +3539,13 @@ public class StatisticsESService {
        startDate = elasticsearchUtil.changeTime(startDate += " 00:00:00");
        endDate = elasticsearchUtil.changeTime(endDate += " 23:59:59");
        List<SaveModel> list = elasticsearchUtil.findLineChartDateQuotaLevel1(startDate, endDate, area, Integer.parseInt(level), "61", "2", type, 1,disease);
        List<SaveModel> list = elasticsearchUtil.findLineChartDateQuotaLevel1(startDate, endDate, area, Integer.parseInt(level), "61", "2", type, disease);
        String sql = "";
        Map<String, Object> map = null;
        List<Map<String, Object>> countList = new ArrayList<>();
        for (SaveModel one : list) {
            sql = "  select count(DISTINCT(s.patient)) as num from wlyy_prescription_pay p left join wlyy_prescription s on p.prescription_code = s. CODE  ";
            sql += " and  p.trace_time <= " + one.getQuotaDate();
            sql += " and  p.trace_time <= " + dateFormat3.format(one.getQuotaDate());
            if (SaveModel.townLevel.equals(level) || SaveModel.cityLevel.equals(level)) {
                sql += " and LEFT(s.hospital,6) ='" + area + "' ";
            } else if (SaveModel.OrgLevel.equals(level)) {
@ -3531,7 +3555,10 @@ public class StatisticsESService {
            }
            Map<String, Object> count = jdbcTemplate.queryForMap(sql);
            Long num = (Long) count.get("num");
            String avg = decimalFormat.format(one.getResult1() / num);
            String avg = "0.0";
            if(num!=0){
                avg = decimalFormat.format(one.getResult1() / num);
            }
            map = new HashMap<>();
            map.put("avg", avg);
            map.put("date", dateFormat.format(one.getQuotaDate()));
@ -3542,14 +3569,15 @@ public class StatisticsESService {
    public Map<String, Object> getPrescriptionCost(String level, String area, String disease) throws Exception {
        SaveModel saveModel = null;
        String index = "61";
        String quotaDate = elasticsearchUtil.getQuotaTime();
        if (StringUtils.isNotEmpty(disease)) {
            saveModel = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), "61", "2", 1,disease);
            saveModel = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), index, "2", disease);
        } else {
            saveModel = elasticsearchUtil.findOneDateQuotaLevel0(quotaDate, area, Integer.parseInt(level), "61", "2");
            saveModel = elasticsearchUtil.findOneDateQuotaLevel0(quotaDate, area, Integer.parseInt(level), index, "2");
        }
        String sql = "  select count(DISTINCT(s.patient)) as num from wlyy_prescription_pay p left join wlyy_prescription s on p.prescription_code = s. CODE  ";
        sql += " and  p.trace_time <= " + dateFormat3.parse(quotaDate);
        sql += " and  p.create_time <= " + quotaDate;
        if (SaveModel.townLevel.equals(level) || SaveModel.cityLevel.equals(level)) {
            sql += " and LEFT(s.hospital,6) ='" + area + "' ";
        } else if (SaveModel.OrgLevel.equals(level)) {
@ -3561,7 +3589,13 @@ public class StatisticsESService {
        Long num = (Long) count.get("num");
        Map<String, Object> rs = new HashedMap();
        BigDecimal s = BigDecimal.valueOf(num);
        BigDecimal a = BigDecimal.valueOf(saveModel.getResult2() / num);
        BigDecimal a = null;
        if(num==0){
            a = BigDecimal.valueOf(0.0);
        }else{
            a = BigDecimal.valueOf(saveModel.getResult2().longValue() / num);
        }
        rs.put("sum", s.divide(new BigDecimal(100)).setScale(2, BigDecimal.ROUND_HALF_UP));
        rs.put("avg", a.divide((new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_UP));
        return rs;

+ 45 - 17
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/util/ElasticsearchUtil.java

@ -597,11 +597,15 @@ public class ElasticsearchUtil {
     * @param level     等级 1 省 2 市 3 区县 4 机构 5团队
     * @param index     指标code
     * @param timelevel // 1日 2年
     * @param slaveKeyValue  一级维度的key 不传返回全部
     * @param slaveKey1  一级维度的key 不传返回全部
     * @return
     */
    public SaveModel findOneDateQuotaLevel1(String quotaDate, String area, int level, String index, String timelevel,int keyNum, String slaveKeyValue) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,keyNum,slaveKeyValue, null, null);
    public SaveModel findOneDateQuotaLevel1(String quotaDate, String area, int level, String index, String timelevel, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,1,slaveKey1, null, null);
        return (SaveModel) list.get(0);
    }
    public SaveModel findOneDateQuotaLevel1Key2(String quotaDate, String area, int level, String index, String timelevel, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,2,slaveKey1, null, null);
        return (SaveModel) list.get(0);
    }
    /**
@ -614,11 +618,15 @@ public class ElasticsearchUtil {
     * @param level     等级 1 省 2 市 3 区县 4 机构 5团队
     * @param index     指标code
     * @param timelevel // 1日 2年
     * @param slaveKeyValue  一级维度的key 不传返回全部
     * @param slaveKey1  一级维度的key 不传返回全部
     * @return
     */
    public SaveModel findOneDateQuotaLevel1(String startDate, String endDate, String area, int level, String index, String timelevel,int keyNum, String slaveKeyValue) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,keyNum,slaveKeyValue, null, null);
    public SaveModel findOneDateQuotaLevel1(String startDate, String endDate, String area, int level, String index, String timelevel, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,1,slaveKey1, null, null);
        return (SaveModel) list.get(0);
    }
    public SaveModel findOneDateQuotaLevel1Key2(String startDate, String endDate, String area, int level, String index, String timelevel, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,2,slaveKey1, null, null);
        return (SaveModel) list.get(0);
    }
@ -634,7 +642,11 @@ public class ElasticsearchUtil {
     * @return
     */
    public List<SaveModel> findOneDateQuotaLevel1(String quotaDate, String area, int level, String index, String timelevel) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,0,null, null, null);
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,1,null, null, null);
        return list;
    }
    public List<SaveModel> findOneDateQuotaLevel1key2(String quotaDate, String area, int level, String index, String timelevel) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,2,null, null, null);
        return list;
    }
    /**
@ -648,7 +660,11 @@ public class ElasticsearchUtil {
     * @return
     */
    public List<SaveModel> findOneDateQuotaLevel1(String startDate,String endDate, String area, int level, String index, String timelevel) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,0,null, null, null);
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,1,null, null, null);
        return list;
    }
    public List<SaveModel> findOneDateQuotaLevel1Key2(String startDate,String endDate, String area, int level, String index, String timelevel) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,2,null, null, null);
        return list;
    }
    /**
@ -734,11 +750,15 @@ public class ElasticsearchUtil {
     * @param index  指标code
     * @param timelevel   1增量   2到达量(按照年度)
     * @param interval  1日 2周 3月 (按照日周月聚合)
     * @param slaveKeyValue  一级维度的key
     * @param slaveKey1  一级维度的key
     * @return
     */
    public  List<SaveModel>  findLineChartDateQuotaLevel1(String startDate,String endDate,  String area, int level, String index, String timelevel,String interval,int keyNum, String slaveKeyValue) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,keyNum,slaveKeyValue, interval, null);
    public  List<SaveModel>  findLineChartDateQuotaLevel1(String startDate,String endDate,  String area, int level, String index, String timelevel,String interval, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,1,slaveKey1, interval, null);
        return list;
    }
    public  List<SaveModel>  findLineChartDateQuotaLevel1Key2(String startDate,String endDate,  String area, int level, String index, String timelevel,String interval, String slaveKey2) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,2,slaveKey2, interval, null);
        return list;
    }
    /**
@ -808,11 +828,15 @@ public class ElasticsearchUtil {
     * @param index  指标code
     * @param timelevel   1增量   2到达量(按照年度)
     * @param lowLevel  下一级区域等级   1 省 2 市 3 区县 4 机构 5团队
     * @param slaveKeyValue  一级维度的key
     * @param slaveKey1  一级维度的key
     * @return
     */
    public  List<SaveModel>  findListDateQuotaLevel1(String quotaDate,  String area, int level, String index, String timelevel,String lowLevel,int keyNum, String slaveKeyValue) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,keyNum,slaveKeyValue, null, lowLevel);
    public  List<SaveModel>  findListDateQuotaLevel1(String quotaDate,  String area, int level, String index, String timelevel,String lowLevel, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,1,slaveKey1, null, lowLevel);
        return list;
    }
    public  List<SaveModel>  findListDateQuotaLevel1Key2(String quotaDate,  String area, int level, String index, String timelevel,String lowLevel, String slaveKey2) throws Exception {
        List list = findDateQuotaLevel1(quotaDate, quotaDate, area, level, index, timelevel,2,slaveKey2, null, lowLevel);
        return list;
    }
    /**
@ -827,11 +851,15 @@ public class ElasticsearchUtil {
     * @param index  指标code
     * @param timelevel   1增量   2到达量(按照年度)
     * @param lowLevel  下一级区域等级   1 省 2 市 3 区县 4 机构 5团队
     * @param slaveKeyValue  一级维度的key
     * @param slaveKey1  一级维度的key
     * @return
     */
    public  List<SaveModel>  findListDateQuotaLevel1(String startDate,String endDate,  String area, int level, String index, String timelevel,String lowLevel,int keyNum, String slaveKeyValue) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,keyNum,slaveKeyValue, null, lowLevel);
    public  List<SaveModel>  findListDateQuotaLevel1(String startDate,String endDate,  String area, int level, String index, String timelevel,String lowLevel, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,1,slaveKey1, null, lowLevel);
        return list;
    }
    public  List<SaveModel>  findListDateQuotaLevel1Key2(String startDate,String endDate,  String area, int level, String index, String timelevel,String lowLevel, String slaveKey2) throws Exception {
        List list = findDateQuotaLevel1(startDate, endDate, area, level, index, timelevel,2,slaveKey2, null, lowLevel);
        return list;
    }
    /**

+ 1 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/statistic/EsStatisticsController.java

@ -1784,6 +1784,7 @@ public class EsStatisticsController extends BaseController {
                                      @ApiParam(name="area", value="界别编码") @RequestParam(required = true)String area,
                                      @ApiParam(name="disease", value="疾病") @RequestParam(required = false)String disease){
        try{
            level = elasticsearchUtil.changeLevel(Integer.parseInt(level))+"";
            return write(200, "查询成功", "data", statisticsESService.getPrescriptionCost(level,area,disease));
        } catch (Exception e) {
            error(e);