Skip to content

Commit 2b4ba75

Browse files
committed
fix: optimize data processing in ResponseParserForCoordinateMapChart
1 parent fb8a35e commit 2b4ba75

File tree

1 file changed

+5
-7
lines changed

1 file changed

+5
-7
lines changed

backend/src/main/java/com/park/utmstack/util/chart_builder/elasticsearch_dsl/responses/impl/coordinate_map/ResponseParserForCoordinateMapChart.java

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -120,13 +120,14 @@ public List<CoordinateMapChartResult> parse(UtmVisualization visualization, Sear
120120

121121
try {
122122
Assert.notNull(visualization, "Param visualization must not be null");
123+
List<?> data = result.getData();
123124

124-
for (Object rowObj : result.getData()) {
125+
for (int i = 0; i < data.size(); i++) {
126+
Object rowObj = data.get(i);
125127
if (!(rowObj instanceof Map)) continue;
126128
Map<String, Object> row = (Map<String, Object>) rowObj;
127129

128130
String ip = null;
129-
Double metricValue = null;
130131

131132
for (Map.Entry<String, Object> entry : row.entrySet()) {
132133
Object val = entry.getValue();
@@ -135,12 +136,9 @@ public List<CoordinateMapChartResult> parse(UtmVisualization visualization, Sear
135136
String strVal = val.toString();
136137
if (ip == null && isValidIP(strVal)) {
137138
ip = strVal;
138-
} else if (metricValue == null && val instanceof Number) {
139-
metricValue = ((Number) val).doubleValue();
140139
}
141140
}
142-
143-
if (ip == null || metricValue == null) continue;
141+
if (!StringUtils.hasText(ip)) continue;
144142

145143
GeoIp ipInfo;
146144
try {
@@ -156,7 +154,7 @@ public List<CoordinateMapChartResult> parse(UtmVisualization visualization, Sear
156154
chartResult.setValue(new Double[] {
157155
ipInfo.getLatitude(),
158156
ipInfo.getLongitude(),
159-
metricValue
157+
(double) i
160158
});
161159

162160
retValue.add(chartResult);

0 commit comments

Comments
 (0)