Commit 8979d651c9495ea57be1d66ac61b0bf5f677b83b
1 parent
edc5c1a8e4
Exists in
master
and in
1 other branch
add statistics(map) common index
Showing 1 changed file with 27 additions and 8 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/StatisticsController.java
View file @
8979d65
| ... | ... | @@ -71,6 +71,7 @@ |
| 71 | 71 | List<AreaData> provincePatientList = statisticsService.queryProvincePatients(); |
| 72 | 72 | Map<String, String> kvData = new HashMap<>(); |
| 73 | 73 | Map<String, Integer> mapsData = new HashMap<>(); |
| 74 | + Map<String, String> riskColorMap = new HashMap<>(); | |
| 74 | 75 | |
| 75 | 76 | Option areaBarOption = buildBarOption("建档&高危人数", null); |
| 76 | 77 | areaBarOption.getLegend().getData().add("近30天建档人数"); |
| 77 | 78 | |
| 78 | 79 | |
| 79 | 80 | |
| 80 | 81 | |
| 81 | 82 | |
| ... | ... | @@ -154,21 +155,39 @@ |
| 154 | 155 | mapsData.clear(); |
| 155 | 156 | for (AreaData areaData:currentRiskList) { |
| 156 | 157 | String groupName = areaData.getGroupName().replace("预警", ""); |
| 157 | - if (mapsData.get(groupName) == null) { | |
| 158 | - mapsData.put(groupName,areaData.getVal()); | |
| 158 | + if (mapsData.get(areaData.getRiskName()) == null) { | |
| 159 | + mapsData.put(areaData.getRiskName(),areaData.getVal()); | |
| 160 | + if (colormap.get(groupName) != null) { | |
| 161 | + riskColorMap.put(areaData.getRiskName(),colormap.get(groupName)); | |
| 162 | + } | |
| 159 | 163 | } else { |
| 160 | - mapsData.put(groupName, mapsData.get(groupName) + areaData.getVal()); | |
| 164 | + mapsData.put(areaData.getRiskName(), mapsData.get(areaData.getRiskName()) + areaData.getVal()); | |
| 161 | 165 | } |
| 162 | 166 | } |
| 167 | + | |
| 168 | + // 按MAP的value排序 | |
| 169 | + List<Map.Entry<String, Integer>> listData = new ArrayList<Map.Entry<String, Integer>>(mapsData.entrySet()); | |
| 170 | + Collections.sort(listData, new Comparator<Map.Entry<String, Integer>>() { | |
| 171 | + public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) { | |
| 172 | + if (o2.getValue() != null && o1.getValue() != null && o2.getValue().compareTo(o1.getValue()) > 0) { | |
| 173 | + return 1; | |
| 174 | + } else { | |
| 175 | + return -1; | |
| 176 | + } | |
| 177 | + | |
| 178 | + } | |
| 179 | + }); | |
| 180 | + | |
| 163 | 181 | List<Object> groupRiskDataList = new ArrayList<>(); |
| 164 | - for (Object key:groupRiskOption.getyAxis().getData()) { | |
| 165 | - if (mapsData.containsKey(key)) { | |
| 182 | + for (Map.Entry<String, Integer> entry:listData) { | |
| 183 | + groupRiskOption.getyAxis().getData().add(entry.getKey()); | |
| 184 | + if (riskColorMap.containsKey(entry.getKey())) { | |
| 166 | 185 | Data data = new Data(); |
| 167 | - data.setValue(mapsData.get(key)); | |
| 168 | - data.setItemStyle(new ItemStyle(new Normal(null,colormap.get(key)),null)); | |
| 186 | + data.setValue(entry.getValue()); | |
| 187 | + data.setItemStyle(new ItemStyle(new Normal(null,colormap.get(entry.getKey())),null)); | |
| 169 | 188 | groupRiskDataList.add(data); |
| 170 | 189 | } else { |
| 171 | - groupRiskDataList.add(0); | |
| 190 | + groupRiskDataList.add(entry.getValue()); | |
| 172 | 191 | } |
| 173 | 192 | } |
| 174 | 193 | groupRiskSeries.setData(groupRiskDataList); |