|
@ -3106,28 +3106,29 @@ public class StatisticsESService {
|
|
|
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, "4").get(0);
|
|
|
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, "4");
|
|
|
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, "1").get(0);
|
|
|
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, "1");
|
|
|
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, "2").get(0);
|
|
|
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, "2");
|
|
|
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, "3").get(0);
|
|
|
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, "3");
|
|
|
unPass = elasticsearchUtil.findOneDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, "4");
|
|
|
}
|
|
|
//其他原因取消
|
|
|
if (StringUtils.isNotBlank(disease)) {
|
|
@ -3448,8 +3449,6 @@ public class StatisticsESService {
|
|
|
* @return
|
|
|
*/
|
|
|
public List<Map<String, Object>> getPrescriptionTotalHistogram(int level, String area, String disease, String type) throws Exception {
|
|
|
//转换type 前端type和ES生成的数据字典对不上
|
|
|
type = changeType(type);
|
|
|
//因为一个处方可能有多个疾病状态 所以分开2个指标
|
|
|
String index58 = "58";//统计长处方总数疾病和状态维度
|
|
|
String index64 = "64";//统计长处方总数状态维度
|
|
@ -3476,15 +3475,23 @@ public class StatisticsESService {
|
|
|
if ("1".equals(type)) {
|
|
|
//总数
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel2NoSlaveKey2(startTime, endTime, area, level, index58, SaveModel.timeLevel_ZL, SaveModel.interval_month, disease);
|
|
|
} else {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, index58, SaveModel.timeLevel_ZL, SaveModel.interval_month, disease, String.valueOf(Integer.valueOf(type) - 1));
|
|
|
} else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, index58, SaveModel.timeLevel_ZL, SaveModel.interval_month, disease,type);
|
|
|
}else if ("5".equals(type)) {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, index58, SaveModel.timeLevel_ZL, SaveModel.interval_month, disease,"1");
|
|
|
}else if ("6".equals(type)) {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel2(startTime, endTime, area, level, index58, SaveModel.timeLevel_ZL, SaveModel.interval_month, disease,"5");
|
|
|
}
|
|
|
} else {
|
|
|
if ("1".equals(type)) {
|
|
|
//总数
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel1NoSlaveKey1(startTime, endTime, area, level, index64, SaveModel.timeLevel_ZL, SaveModel.interval_month);
|
|
|
} else {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index64, SaveModel.timeLevel_ZL, SaveModel.interval_month,String.valueOf(Integer.valueOf(type) - 1));
|
|
|
} else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index64, SaveModel.timeLevel_ZL, SaveModel.interval_month,type);
|
|
|
}else if ("5".equals(type)) {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index64, SaveModel.timeLevel_ZL, SaveModel.interval_month,"1");
|
|
|
} else if ("6".equals(type)) {
|
|
|
resultList = elasticsearchUtil.findLineChartDateQuotaLevel1(startTime, endTime, area, level, index64, SaveModel.timeLevel_ZL, SaveModel.interval_month,"5");
|
|
|
}
|
|
|
}
|
|
|
//把数据设置到初始化的Map里面去
|
|
@ -3504,28 +3511,6 @@ public class StatisticsESService {
|
|
|
return new ArrayList<>(rs.values());
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @param type 1.总量,2.进行中,3.已完成,4.居民取消,5.审核不通过,6.其他原因取消
|
|
|
* @return 1.总量,2.已完成,3.居民取消,4.审核不通过,5.进行中,6.其他原因取消
|
|
|
*/
|
|
|
private String changeType(String type) {
|
|
|
if ("2".equals(type)) {
|
|
|
return "5";
|
|
|
}
|
|
|
if ("3".equals(type)) {
|
|
|
return "2";
|
|
|
}
|
|
|
if ("4".equals(type)) {
|
|
|
return "3";
|
|
|
}
|
|
|
if ("5".equals(type)) {
|
|
|
return "4";
|
|
|
}
|
|
|
if ("6".equals(type)) {
|
|
|
return "6";
|
|
|
}
|
|
|
return type;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
* @param level 等级 1 省 2 市 3 区县 4 机构 5团队
|
|
@ -3538,7 +3523,6 @@ public class StatisticsESService {
|
|
|
*/
|
|
|
public List<Map<String, Object>> getPrescriptionTotalLowLevel(int level, String lowlevel, String area, String disease, String type) throws Exception {
|
|
|
//转换type 前端type和ES生成的数据字典对不上
|
|
|
type = changeType(type);
|
|
|
String quotaDate = elasticsearchUtil.getQuotaTime();
|
|
|
//因为一个处方可能有多个疾病状态 所以分开2个指标
|
|
|
String index58 = "58";//统计长处方总数疾病和状态维度
|
|
@ -3551,15 +3535,22 @@ public class StatisticsESService {
|
|
|
if ("1".equals(type)) {
|
|
|
//总数
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel1NoSlaveKey1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, lowlevel);
|
|
|
} else {
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, lowlevel, String.valueOf(Integer.valueOf(type) - 1));
|
|
|
} else if ("2".equals(type) || "3".equals(type) || "4".equals(type)) {
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, lowlevel, type);
|
|
|
} else if ("5".equals(type)) {
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, lowlevel, "1");
|
|
|
} else if ("6".equals(type)) {
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel1(quotaDate, area, level, index64, SaveModel.timeLevel_DDL, lowlevel, "5");
|
|
|
}
|
|
|
} else {
|
|
|
if ("1".equals(type)) {
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel2NoSlaveKey2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, lowlevel, disease);
|
|
|
}
|
|
|
{
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, lowlevel, disease, String.valueOf(Integer.valueOf(type) - 1));
|
|
|
} else if ("2".equals(type) || "3".equals(type) || "4".equals(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, SaveModel.timeLevel_DDL, lowlevel, disease, "1");
|
|
|
} else if ("6".equals(type)) {
|
|
|
saveModels = elasticsearchUtil.findListDateQuotaLevel2(quotaDate, area, level, index58, SaveModel.timeLevel_DDL, lowlevel, disease, "5");
|
|
|
}
|
|
|
}
|
|
|
if ("5".equals(lowlevel)) {
|
|
@ -3573,12 +3564,15 @@ public class StatisticsESService {
|
|
|
// lowlevel = String.valueOf(level + 1);
|
|
|
// }
|
|
|
if (SaveModel.townLevel.equals(lowlevel)) {
|
|
|
map=new HashMap<>();
|
|
|
map.put("code", one.getTown());
|
|
|
map.put("name", one.getTownName());
|
|
|
} else if (SaveModel.OrgLevel.equals(lowlevel)) {
|
|
|
map=new HashMap<>();
|
|
|
map.put("code", one.getHospital());
|
|
|
map.put("name", one.getHospitalName());
|
|
|
} else if (SaveModel.teamLevel.equals(lowlevel)) {
|
|
|
map=new HashMap<>();
|
|
|
map.put("code", one.getTeam());
|
|
|
map.put("name", one.getTeamName());
|
|
|
}
|
|
@ -3586,7 +3580,6 @@ public class StatisticsESService {
|
|
|
rs.add(map);
|
|
|
}
|
|
|
} else {
|
|
|
|
|
|
//统计数据为空时,自建结果集
|
|
|
List<Town> townList = null;
|
|
|
List<Hospital> hospitalList = null;
|
|
@ -3603,25 +3596,30 @@ public class StatisticsESService {
|
|
|
}
|
|
|
if (SaveModel.townLevel.equals(lowlevel)) {
|
|
|
for (Town one : townList) {
|
|
|
map=new HashMap<>();
|
|
|
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=new HashMap<>();
|
|
|
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=new HashMap<>();
|
|
|
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) {
|