From 11483d91f1735653ada1737a717e44ddad24469a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=85=B4=E7=90=B3?= <1911390090@qq.com> Date: Mon, 8 Jul 2024 10:24:58 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E4=BA=A4=E9=80=9A=E6=B5=81?= =?UTF-8?q?=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/DcTrafficStatisticsServiceImpl.java | 57 ++++++++++--------- 1 file changed, 31 insertions(+), 26 deletions(-) diff --git a/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java b/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java index 20713359..266475e9 100644 --- a/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java +++ b/zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java @@ -243,7 +243,10 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi JSONArray jsonArray = null; if (body != null) { - jsonArray = JSON.parseArray(body.string()); + String jsonString = body.string(); + if (JSON.isValidArray(jsonString)) { + jsonArray = JSON.parseArray(jsonString); + } } Map map = new HashMap<>(); @@ -704,37 +707,39 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi ResponseBody body = response.body(); if (body != null) { - JSONArray jsonArray = JSON.parseArray(body.string()); - Map sumByName = new LinkedHashMap<>(); - Integer totalFlow1 = 0; - List> list = new ArrayList(); - for (Object item : jsonArray) { // 这里做了微调,直接遍历jsonArray的Object - JSONObject jsonObject = (JSONObject) item; + String jsonString = body.string(); + if (JSON.isValidArray(jsonString)) { + JSONArray jsonArray = JSON.parseArray(jsonString); + Map sumByName = new LinkedHashMap<>(); + Integer totalFlow1 = 0; + List> list = new ArrayList(); + for (Object item : jsonArray) { // 这里做了微调,直接遍历jsonArray的Object + JSONObject jsonObject = (JSONObject) item; - totalFlow1 = totalFlow1 + jsonObject.getInteger("total_flow"); + totalFlow1 = totalFlow1 + jsonObject.getInteger("total_flow"); - // 获取当前时间 - LocalTime now = LocalTime.now(); - // 获取当前小时数(24小时制) - int currentHour = now.getHour(); - if (jsonObject.getInteger("data_hour") == currentHour) { - String name = jsonObject.getString("ts_name"); // 更安全的取值方式 - int totalFlow = jsonObject.getInteger("total_flow"); // 专门针对Integer类型 + // 获取当前时间 + LocalTime now = LocalTime.now(); + // 获取当前小时数(24小时制) + int currentHour = now.getHour(); + if (jsonObject.getInteger("data_hour") == currentHour) { + String name = jsonObject.getString("ts_name"); // 更安全的取值方式 + int totalFlow = jsonObject.getInteger("total_flow"); // 专门针对Integer类型 - sumByName.put(name, totalFlow); + sumByName.put(name, totalFlow); + } } + System.out.println("总数===:" + totalFlow1); + // 正确创建新的映射对象并添加到list中 + for (Map.Entry entry : sumByName.entrySet()) { + Map singleResult = new LinkedHashMap<>(); // 每次循环都创建一个新的映射 + singleResult.put("name", entry.getKey()); + singleResult.put("value", entry.getValue().toString()); + list.add(singleResult); + } + return list; } - System.out.println("总数===:" + totalFlow1); - // 正确创建新的映射对象并添加到list中 - for (Map.Entry entry : sumByName.entrySet()) { - Map singleResult = new LinkedHashMap<>(); // 每次循环都创建一个新的映射 - singleResult.put("name", entry.getKey()); - singleResult.put("value", entry.getValue().toString()); - list.add(singleResult); - } - return list; } - return new ArrayList(); }