Browse Source

配置修改

chenweida 7 years ago
parent
commit
df7fa8dcd9

+ 17 - 14
patient-co/patient-co-statistics-es/src/main/java/com/yihu/wlyy/statistics/etl/convert/wlyy/PrescriptionDiseaseConvert.java

@ -25,15 +25,18 @@ public class PrescriptionDiseaseConvert implements Convert {
        //初始化标签Map
        //把标签Map设置到对应的维度里面
        List<String> keyList = null;
        Map<String,List<String>>  returnMap=initHealthLabesMap(jdbcTemplate, temp);
        Map<String, List<String>> returnMap = initHealthLabesMap(jdbcTemplate, temp);
        for (DataModel one : oneList) {
            try {
                keyList = returnMap.get(one.getPrescriptionCode());
                for (String key : keyList) {
                    DataModel dataModelTemp = new DataModel();
                    BeanUtils.copyProperties(one, dataModelTemp);
                    DataModel.class.getMethod("setSlaveKey" + slaveLevel, String.class).invoke(dataModelTemp, key);
                    returnList.add(dataModelTemp);
                if (keyList != null) {
                    for (int i = 0; i < keyList.size(); i++) {
                        String key = keyList.get(i);
                        DataModel dataModelTemp = new DataModel();
                        BeanUtils.copyProperties(one, dataModelTemp);
                        DataModel.class.getMethod("setSlaveKey" + slaveLevel, String.class).invoke(dataModelTemp, key);
                        returnList.add(dataModelTemp);
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
@ -42,23 +45,23 @@ public class PrescriptionDiseaseConvert implements Convert {
        return returnList;
    }
    private  Map<String,List<String>> initHealthLabesMap(JdbcTemplate jdbcTemplate, WlyyDimensionQuota temp) {
    private Map<String, List<String>> initHealthLabesMap(JdbcTemplate jdbcTemplate, WlyyDimensionQuota temp) {
//        //得到长处方的疾病标签(只要高血压 糖尿病)
       Map<String,List<String>>  returnMap = new HashMap<>();
        Map<String, List<String>> returnMap = new HashMap<>();
        String sql = "SELECT " +
                "  health_problem AS healthProblem ," +
                "  prescription_code AS prescriptionCode " +
                "  FROM " +
                "  wlyy_prescription_diagnosis " ;
                "  wlyy_prescription_diagnosis ";
        List<Map<String, Object>> diagnosisList = jdbcTemplate.queryForList(sql);
        for (Map<String, Object> map : diagnosisList) {
            String key= (String) map.get("prescriptionCode");
            List<String> healthProblemList=returnMap.get(key);
            if(healthProblemList==null){
                healthProblemList=new ArrayList<>();
            String key = (String) map.get("prescriptionCode");
            List<String> healthProblemList = returnMap.get(key);
            if (healthProblemList == null) {
                healthProblemList = new ArrayList<>();
            }
            healthProblemList.add((String) map.get("healthProblem"));
            returnMap.put(key,healthProblemList);
            returnMap.put(key, healthProblemList);
        }
        return returnMap;
    }

+ 8 - 5
patient-co/patient-co-statistics-es/src/main/java/com/yihu/wlyy/statistics/etl/convert/wlyy/PrescriptionPatientDiseaseConvert.java

@ -26,11 +26,14 @@ public class PrescriptionPatientDiseaseConvert implements Convert {
        for (DataModel one : oneList) {
            try {
                keyList = returnMap.get(one.getPatient());
                for (String key : keyList) {
                    DataModel dataModelTemp = new DataModel();
                    BeanUtils.copyProperties(one, dataModelTemp);
                    DataModel.class.getMethod("setSlaveKey" + slaveLevel, String.class).invoke(dataModelTemp, key);
                    returnList.add(dataModelTemp);
                if (keyList != null) {
                    for (int i=0;i<keyList.size();i++) {
                        String key =keyList.get(i);
                        DataModel dataModelTemp = new DataModel();
                        BeanUtils.copyProperties(one, dataModelTemp);
                        DataModel.class.getMethod("setSlaveKey" + slaveLevel, String.class).invoke(dataModelTemp, key);
                        returnList.add(dataModelTemp);
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();

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

@ -3085,37 +3085,37 @@ public class StatisticsESService {
        String quotaDate = elasticsearchUtil.getQuotaTime();
        //总数
        if (StringUtils.isNotBlank(disease)) {
            total = elasticsearchUtil.findOneDateQuotaLevel2NoSlaveKey1(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease);
            total = elasticsearchUtil.findOneDateQuotaLevel2NoSlaveKey2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease);
        } else {
            total = elasticsearchUtil.findOneDateQuotaLevel1NoSlaveKey1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL);
        }
        //进行中
        if (StringUtils.isNotBlank(disease)) {
            processing = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "1");
            processing = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "1").get(0);
        } else {
            processing = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, "1");
        }
        //已完成
        if (StringUtils.isNotBlank(disease)) {
            finished = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "2");
            finished = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "2").get(0);
        } else {
            finished = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, "2");
        }
        //已经取消
        if (StringUtils.isNotBlank(disease)) {
            canceled = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "3");
            canceled = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "3").get(0);
        } else {
            canceled = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, "3");
        }
        //审核不通过
        if (StringUtils.isNotBlank(disease)) {
            unPass = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "4");
            unPass = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "4").get(0);
        } else {
            unPass = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, "4");
        }
        //其他原因取消
        if (StringUtils.isNotBlank(disease)) {
            other = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "5");
            other = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, disease, "5").get(0);
        } else {
            other = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, "5");
        }
@ -3247,9 +3247,6 @@ public class StatisticsESService {
        if (list.size() > 0) {
            for (SaveModel one : list) {
                map = new HashMap<>();
                if (Integer.parseInt(lowlevel) >= Integer.parseInt(level)) {
                    lowlevel = String.valueOf(Integer.parseInt(level) + 1);
                }
                if (SaveModel.townLevel.equals(lowlevel)) {
                    map.put("code", one.getTown());
                    map.put("name", one.getTownName());
@ -3261,6 +3258,7 @@ public class StatisticsESService {
                    map.put("name", one.getTeamName());
                }
                map.put("val", one.getResult2().longValue());
                rs.add(map);
            }
        } else {
            //统计数据为空时,自建结果集
@ -3283,22 +3281,24 @@ public class StatisticsESService {
                    map.put("code", one.getCode());
                    map.put("name", one.getName());
                    map.put("val", 0);
                    rs.add(map);
                }
            } else if (SaveModel.OrgLevel.equals(lowlevel)) {
                for (Hospital one : hospitalList) {
                    map.put("code", one.getCode());
                    map.put("name", one.getName());
                    map.put("val", 0);
                    rs.add(map);
                }
            } else if (SaveModel.teamLevel.equals(lowlevel)) {
                for (AdminTeam one : adminTeams) {
                    map.put("code", one.getLeaderCode());
                    map.put("name", one.getName());
                    map.put("val", 0);
                    rs.add(map);
                }
            }
        }
        rs.add(map);
        Collections.sort(rs, new Comparator<Map<String, Object>>() {
            public int compare(Map<String, Object> o1, Map<String, Object> o2) {
                Integer map1value = Integer.valueOf(String.valueOf(o1.get("val")));
@ -3340,37 +3340,77 @@ public class StatisticsESService {
    }
    public Map<String, Object> getPrescriptionAgeHistogram(String level, String area, String disease) throws Exception {
        String index63 = "63";  //统计长处方总数疾病和状态维度(去重相同患者)
        String index68 = "68";  //统计长处方年龄人数(按照患者去重)
        String index60 = "60";  //统计长处方总数年龄和疾病维度
        String index65 = "65";  //统计长处方总数年龄维度
        List<SaveModel> chufanglist =null;
        List<SaveModel> numList =null;
        Map<String,SaveModel> numListMap =new HashMap<>();
        String quotaDate = elasticsearchUtil.getQuotaTime();
        //统计年龄分布
        List<SaveModel> list = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, Integer.parseInt(level), "60", "2", disease);
        //获取总人数
        String sql = " SELECT COUNT(1) AS num FROM ( SELECT DISTINCT p.patient FROM wlyy_prescription p ) a ";
        Map<String, Object> count = jdbcTemplate.queryForMap(sql);
        Long num = (Long) count.get("num");
        //统计处方年龄分布
        if(org.springframework.util.StringUtils.isEmpty(disease)){
            numList = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), index68, SaveModel.timeLevel_DDL);
        }else{
            numList = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, Integer.parseInt(level), index63,  SaveModel.timeLevel_DDL,null,disease);
        }
        //统计处方患者年龄分布
        if(org.springframework.util.StringUtils.isEmpty(disease)){
            chufanglist = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, Integer.parseInt(level), index65, SaveModel.timeLevel_DDL);
        }else{
            chufanglist = elasticsearchUtil.findOneDateQuotaLevel2(quotaDate, area, Integer.parseInt(level), index60,  SaveModel.timeLevel_DDL,null,disease);
        }
        for(int i=0;i<numList.size();i++){
            SaveModel saveModel=numList.get(i);
            numListMap.put(saveModel.getSlaveKey1(),saveModel);
        }
        Map<String, Object> map = new HashMap<>();
        DecimalFormat decimalFormat = new DecimalFormat("0.00");//构造方法的字符格式这里如果小数不足2位,会以0补足.
        if (num == 0) {
            map.put("0ageRate", 0.0);
        if (numList.size() == 0) {
            map.put("7ageRate", 0.0);
            map.put("19ageRate", 0.0);
            map.put("31ageRate", 0.0);
            map.put("51ageRate", 0.0);
            map.put("65ageRate", 0.0);
        } else {
            Double ageRate = list.get(0).getResult2() / num;
            map.put("0ageRate", decimalFormat.format(ageRate));
            ageRate = list.get(1).getResult2() / num;
            map.put("7ageRate", decimalFormat.format(ageRate));
            ageRate = list.get(2).getResult2() / num;
            map.put("19ageRate", decimalFormat.format(ageRate));
            ageRate = list.get(3).getResult2() / num;
            map.put("31ageRate", decimalFormat.format(ageRate));
            ageRate = list.get(4).getResult2() / num;
            map.put("51ageRate", decimalFormat.format(ageRate));
            ageRate = list.get(5).getResult2() / num;
            map.put("65ageRate", decimalFormat.format(ageRate));
            DecimalFormat decimalFormat = new DecimalFormat("0.00");//构造方法的字符格式这里如果小数不足2位,会以0补足.
            if(numListMap.get(chufanglist.get(0).getSlaveKey1()).getResult2()!=0.0D){
                Double ageRate = chufanglist.get(0).getResult2() /numListMap.get(chufanglist.get(0).getSlaveKey1()).getResult2() ;
                map.put("0ageRate", decimalFormat.format(ageRate));
            }else{
                map.put("0ageRate",chufanglist.get(0).getResult2() );
            }
            if(numListMap.get(chufanglist.get(1).getSlaveKey1()).getResult2()!=0.0D){
                Double ageRate = chufanglist.get(1).getResult2() /numListMap.get(chufanglist.get(1).getSlaveKey1()).getResult2() ;
                map.put("7ageRate", decimalFormat.format(ageRate));
            }else{
                map.put("7ageRate", chufanglist.get(1).getResult2() );
            }
            if(numListMap.get(chufanglist.get(2).getSlaveKey1()).getResult2()!=0.0D){
                Double ageRate = chufanglist.get(2).getResult2() /numListMap.get(chufanglist.get(2).getSlaveKey1()).getResult2() ;
                map.put("19ageRate", decimalFormat.format(ageRate));
            }else{
                map.put("19ageRate", chufanglist.get(2).getResult2() );
            }
            if(numListMap.get(chufanglist.get(3).getSlaveKey1()).getResult2()!=0.0D){
                Double ageRate = chufanglist.get(3).getResult2() /numListMap.get(chufanglist.get(3).getSlaveKey1()).getResult2() ;
                map.put("31ageRate", decimalFormat.format(ageRate));
            }else{
                map.put("31ageRate",chufanglist.get(3).getResult2() );
            }
            if(numListMap.get(chufanglist.get(4).getSlaveKey1()).getResult2()!=0.0D){
                Double ageRate = chufanglist.get(4).getResult2() /numListMap.get(chufanglist.get(4).getSlaveKey1()).getResult2() ;
                map.put("51ageRate", decimalFormat.format(ageRate));
            }else{
                map.put("51ageRate",chufanglist.get(4).getResult2() );
            }
            if(numListMap.get(chufanglist.get(5).getSlaveKey1()).getResult2()!=0.0D){
                Double ageRate = chufanglist.get(5).getResult2() /numListMap.get(chufanglist.get(5).getSlaveKey1()).getResult2() ;
                map.put("65ageRate", decimalFormat.format(ageRate));
            }else{
                map.put("65ageRate", chufanglist.get(5).getResult2() );
            }
        }
        return map;
    }
@ -3466,13 +3506,13 @@ public class StatisticsESService {
            }
        } else {
            if ("1".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel2NoSlaveKey2(quotaDate, area, level, index58, "2", lowlevel, disease);
                saveModels = elasticsearchUtil.findListDateQuotaLevel2NoSlaveKey2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, lowlevel, disease);
            } else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, "2", lowlevel, disease, type);
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, lowlevel, disease, type);
            } else if ("5".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, "2", lowlevel, disease, "1");
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, lowlevel, disease, "1");
            } else if ("6".equals(type)) {
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, "2", lowlevel, disease, "5");
                saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, lowlevel, disease, "5");
            }
        }
        if ("5".equals(lowlevel)) {
@ -3632,11 +3672,11 @@ public class StatisticsESService {
        //type二级指标,disease一级指标
        if (StringUtils.isNotBlank(disease)) {
            //自取
            selt = elasticsearchUtil.findOneDateQuotaLevel2(quotaTime, area, level, index62, SaveModel.timeLevel_DDL, disease, "1");
            selt = elasticsearchUtil.findOneDateQuotaLevel2(quotaTime, area, level, index62, SaveModel.timeLevel_DDL, "1", disease).get(0);
            //物流配送
            delivery = elasticsearchUtil.findOneDateQuotaLevel2(quotaTime, area, level, index62, SaveModel.timeLevel_DDL, disease, "2");
            delivery = elasticsearchUtil.findOneDateQuotaLevel2(quotaTime, area, level, index62, SaveModel.timeLevel_DDL, "2", disease).get(0);
            //健管师配送
            healthDoctor = elasticsearchUtil.findOneDateQuotaLevel2(quotaTime, area, level, index62, SaveModel.timeLevel_DDL, disease, "3");
            healthDoctor = elasticsearchUtil.findOneDateQuotaLevel2(quotaTime, area, level, index62, SaveModel.timeLevel_DDL, "3", disease).get(0);
        } else {
            //自取
            selt = elasticsearchUtil.findOneDateQuotaLevel1(quotaTime, area, level, index67, SaveModel.timeLevel_DDL, "1");
@ -3702,7 +3742,7 @@ public class StatisticsESService {
        List<SaveModel> resultList = new ArrayList<>();
        if (StringUtils.isNotBlank(disease)) {
            resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, index62, SaveModel.timeLevel_ZL, SaveModel.interval_month, disease, type);
            resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, index62, SaveModel.timeLevel_ZL, SaveModel.interval_month, type,disease);
        } else {
            resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index67, SaveModel.timeLevel_ZL, SaveModel.interval_month, type);
        }
@ -3755,7 +3795,7 @@ public class StatisticsESService {
        List<Map<String, Object>> rs = new ArrayList<>();
        if (StringUtils.isNotBlank(disease)) {
            //类型 1.自取,2.快递配送,3.健管师配送
            saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index62, SaveModel.timeLevel_DDL, lowlevel, disease, type);
            saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index62, SaveModel.timeLevel_DDL, lowlevel, type,disease);
        } else {
            saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index67, SaveModel.timeLevel_DDL, lowlevel, type);
        }
@ -3766,9 +3806,6 @@ public class StatisticsESService {
        if (saveModels.size() > 0) {
            for (SaveModel one : saveModels) {
                map = new HashMap<>();
                if (Integer.parseInt(lowlevel) >= level) {
                    lowlevel = String.valueOf(level + 1);
                }
                if (SaveModel.townLevel.equals(lowlevel)) {
                    map.put("code", one.getTown());
                    map.put("name", one.getTownName());

+ 18 - 7
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/util/ElasticsearchUtil.java

@ -473,7 +473,7 @@ public class ElasticsearchUtil {
            low_level = lowLevel;
        }
        if (SaveModel.teamLevel.equals(low_level)) {
            sql.append("select team,teamName,slaveKey1,slaveKey1Name,slaveKey2,slaveKey2Name,result1,result2 from " + esIndex + " where ");
            sql.append("select team,teamName,slaveKey1,slaveKey1Name,slaveKey2,slaveKey2Name,sum(result1) result1,sum(result2) result2 from " + esIndex + " where ");
            groupBy.append("  group by team,teamName");
            if (!org.springframework.util.StringUtils.isEmpty(slaveKey1)||commonParams.equals(slaveKey1)) {
                groupBy.append(",slaveKey1,slaveKey1Name");
@ -549,8 +549,7 @@ public class ElasticsearchUtil {
                groupBy.append(" ,date_histogram(field='quotaDate','interval'='1d','time_zone'='+08:00') ");
            }
        }
        String orderBy=" order by result1 desc " ;
        sql.append(groupBy).append(orderBy);
        sql.append(groupBy);
        return excute(sql.toString(), SaveModel.class, "", "");
    }
@ -726,7 +725,7 @@ public class ElasticsearchUtil {
     * @param slaveKey2 二级维度的key
     * @return
     */
    public SaveModel findOneDateQuotaLevel2(String quotaDate, String area, int level, String index, String timelevel, String slaveKey1, String slaveKey2) throws Exception {
    public  List<SaveModel> findOneDateQuotaLevel2(String quotaDate, String area, int level, String index, String timelevel, String slaveKey1, String slaveKey2) throws Exception {
        if(org.springframework.util.StringUtils.isEmpty(slaveKey1)){
            slaveKey1=commonParams;
        }
@ -734,7 +733,7 @@ public class ElasticsearchUtil {
            slaveKey2=commonParams;
        }
        List list = findDateQuotaLevel2(quotaDate, quotaDate, area, level, index, timelevel, slaveKey1, slaveKey2, null, null);
        return (SaveModel) list.get(0);
        return list;
    }
    /**
@ -750,6 +749,9 @@ public class ElasticsearchUtil {
     * @return
     */
    public SaveModel findOneDateQuotaLevel2NoSlaveKey1(String quotaDate, String area, int level, String index, String timelevel, String slaveKey2) throws Exception {
        if(org.springframework.util.StringUtils.isEmpty(slaveKey2)){
            slaveKey2=commonParams;
        }
        List list = findDateQuotaLevel2(quotaDate, quotaDate, area, level, index, timelevel, null, slaveKey2, null, null);
        return (SaveModel) list.get(0);
    }
@ -767,6 +769,9 @@ public class ElasticsearchUtil {
     * @return
     */
    public SaveModel findOneDateQuotaLevel2NoSlaveKey2(String quotaDate, String area, int level, String index, String timelevel, String slaveKey1) throws Exception {
        if(org.springframework.util.StringUtils.isEmpty(slaveKey1)){
            slaveKey1=commonParams;
        }
        List list = findDateQuotaLevel2(quotaDate, quotaDate, area, level, index, timelevel, slaveKey1, null, null, null);
        return (SaveModel) list.get(0);
    }
@ -1090,12 +1095,18 @@ public class ElasticsearchUtil {
    }
    public List<SaveModel> findListDateQuotaLevel2NoSlaveKey1(String quotaDate, String area, int level, String index, String timelevel, String lowLevel, String slaveKey2) throws Exception {
        List list = findDateQuotaLevel2(quotaDate, quotaDate, area, level, index, timelevel, null, slaveKey2, commonParams, lowLevel);
        if(org.springframework.util.StringUtils.isEmpty(slaveKey2)){
            slaveKey2=commonParams;
        }
        List list = findDateQuotaLevel2(quotaDate, quotaDate, area, level, index, timelevel, null, slaveKey2, null, lowLevel);
        return list;
    }
    public List<SaveModel> findListDateQuotaLevel2NoSlaveKey2(String quotaDate, String area, int level, String index, String timelevel, String lowLevel, String slaveKey1) throws Exception {
        List list = findDateQuotaLevel2(quotaDate, quotaDate, area, level, index, timelevel, slaveKey1, commonParams, null, lowLevel);
        if(org.springframework.util.StringUtils.isEmpty(slaveKey1)){
            slaveKey1=commonParams;
        }
        List list = findDateQuotaLevel2(quotaDate, quotaDate, area, level, index, timelevel, slaveKey1, null, null, lowLevel);
        return list;
    }