Browse Source

首页交通流报错

develop
王兴琳 5 months ago
parent
commit
25fefe027b
  1. 89
      zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java

89
zc-business/src/main/java/com/zc/business/service/impl/DcTrafficStatisticsServiceImpl.java

@ -5,17 +5,16 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.type.TypeFactory;
import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.utils.spring.SpringUtils; import com.ruoyi.common.utils.spring.SpringUtils;
import com.sun.xml.bind.v2.TODO;
import com.zc.business.constant.RedisKeyConstants; import com.zc.business.constant.RedisKeyConstants;
import com.zc.business.domain.*; import com.zc.business.domain.DcCongestionSection;
import com.zc.business.domain.DcFacility;
import com.zc.business.domain.DcRoadSection;
import com.zc.business.domain.DcRoadSectionCongestion;
import com.zc.business.enums.StakeMarkRange; import com.zc.business.enums.StakeMarkRange;
import com.zc.business.enums.UniversalEnum; import com.zc.business.enums.UniversalEnum;
import com.zc.business.service.IDcFacilityService; import com.zc.business.service.IDcFacilityService;
import com.zc.business.service.IDcRoadConditionInformationService;
import com.zc.business.service.IDcRoadSectionService; import com.zc.business.service.IDcRoadSectionService;
import com.zc.business.service.IDcTrafficStatisticsService; import com.zc.business.service.IDcTrafficStatisticsService;
import com.zc.business.utils.StakeMarkUtils; import com.zc.business.utils.StakeMarkUtils;
@ -28,7 +27,6 @@ import okhttp3.Response;
import okhttp3.ResponseBody; import okhttp3.ResponseBody;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct; import javax.annotation.PostConstruct;
@ -119,7 +117,6 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
} }
*/ */
public static CompletableFuture<String> refreshAccessToken() { public static CompletableFuture<String> refreshAccessToken() {
CompletableFuture<String> future = new CompletableFuture<>(); CompletableFuture<String> future = new CompletableFuture<>();
OkHttp okHttp = new OkHttp(); OkHttp okHttp = new OkHttp();
@ -208,7 +205,12 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
return JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
return JSON.parseArray(jsonString);
} else {
return new JSONArray();
}
} }
return new JSONArray(); return new JSONArray();
@ -318,7 +320,12 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
return JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
return JSON.parseArray(jsonString);
} else {
return new JSONArray();
}
} }
return new JSONArray(); return new JSONArray();
} }
@ -563,7 +570,12 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
return JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
return JSON.parseArray(jsonString);
} else {
return new JSONArray();
}
} }
return new JSONArray(); return new JSONArray();
@ -604,7 +616,12 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
return JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
return JSON.parseArray(jsonString);
} else {
return new JSONArray();
}
} }
return new JSONArray(); return new JSONArray();
@ -642,7 +659,12 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
return JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
return JSON.parseArray(jsonString);
}else {
return new JSONArray();
}
} }
return new JSONArray(); return new JSONArray();
@ -746,7 +768,12 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
return JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
return JSON.parseArray(jsonString);
}else {
return new JSONArray();
}
} }
return new JSONArray(); return new JSONArray();
@ -866,8 +893,15 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
.data(requestParams) // 请求参数 .data(requestParams) // 请求参数
.post(); // 请求方法 .post(); // 请求方法
ResponseBody body = response.body(); ResponseBody body = response.body();
JSONArray jsonArray = JSON.parseArray(body.string()); if (body != null) {
return jsonArray; String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
return JSON.parseArray(jsonString);
}else {
return new JSONArray();
}
}
return new JSONArray();
} }
//格式化桩号 //格式化桩号
@ -933,8 +967,9 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
JSONArray jsonArray = JSON.parseArray(body.string()); String jsonString = body.string();
System.out.println(jsonArray); if (JSON.isValidArray(jsonString)) {
JSONArray jsonArray = JSON.parseArray(jsonString);
for (Object item : jsonArray) { for (Object item : jsonArray) {
JSONObject jsonObject = (JSONObject) item; JSONObject jsonObject = (JSONObject) item;
if (jsonObject.getString("gantry_id").equals(nearestFacility.getFacilityCode())) { if (jsonObject.getString("gantry_id").equals(nearestFacility.getFacilityCode())) {
@ -946,7 +981,7 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
mapList.add(map); mapList.add(map);
} }
} }
}
// 输出结果 // 输出结果
return mapList; return mapList;
@ -982,7 +1017,9 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
ResponseBody body = response.body(); ResponseBody body = response.body();
if (body != null) { if (body != null) {
JSONArray jsonArray = JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
JSONArray jsonArray = JSON.parseArray(jsonString);
for (Object object : jsonArray) { for (Object object : jsonArray) {
JSONObject jsonObject = (JSONObject) object; JSONObject jsonObject = (JSONObject) object;
Integer asOneRoad = jsonObject.getInteger("as_one_road"); Integer asOneRoad = jsonObject.getInteger("as_one_road");
@ -1036,14 +1073,16 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
} }
return jsonArray; return jsonArray;
}
} }
return new JSONArray(); return new JSONArray();
} }
/** /**
* 各收费站日累计车流辆 * 各收费站日累计车流辆
*
* @return * @return
*/ */
@Override @Override
@ -1059,19 +1098,25 @@ public class DcTrafficStatisticsServiceImpl implements IDcTrafficStatisticsServi
Integer totalFlow1 = UniversalEnum.ZERO.getNumber(); Integer totalFlow1 = UniversalEnum.ZERO.getNumber();
Integer totalFlow2 = UniversalEnum.ZERO.getNumber(); Integer totalFlow2 = UniversalEnum.ZERO.getNumber();
if (body != null) { if (body != null) {
JSONArray jsonArray = JSON.parseArray(body.string()); String jsonString = body.string();
if (JSON.isValidArray(jsonString)) {
JSONArray jsonArray = JSON.parseArray(jsonString);
for (Object item : jsonArray) { for (Object item : jsonArray) {
JSONObject jsonObject = (JSONObject) item; JSONObject jsonObject = (JSONObject) item;
totalFlow1 = totalFlow1 + jsonObject.getInteger("total_flow"); totalFlow1 = totalFlow1 + jsonObject.getInteger("total_flow");
} }
} }
}
if (bodyTwo != null) { if (bodyTwo != null) {
JSONArray jsonArray = JSON.parseArray(bodyTwo.string()); String jsonString = bodyTwo.string();
if (JSON.isValidArray(jsonString)) {
JSONArray jsonArray = JSON.parseArray(jsonString);
for (Object item : jsonArray) { for (Object item : jsonArray) {
JSONObject jsonObject = (JSONObject) item; JSONObject jsonObject = (JSONObject) item;
totalFlow2 = totalFlow2 + jsonObject.getInteger("total_flow"); totalFlow2 = totalFlow2 + jsonObject.getInteger("total_flow");
} }
} }
}
return totalFlow1 + totalFlow2; return totalFlow1 + totalFlow2;
} }

Loading…
Cancel
Save