解决json解析异常

This commit is contained in:
2024-05-16 09:33:23 +08:00
parent bba53f7d57
commit f184e371f0
15 changed files with 87 additions and 30 deletions

View File

@@ -166,7 +166,7 @@ public class RespDataServiceImpl extends ServiceImpl<RespDataMapper, RespData> i
harmNum = pNum;
//至此基础数据组装完毕,开始组装功率数据和谐波数据
//先做谐波数据理论上到这步的时候谐波数据是满足完整性并已经补充完整性到100%,此处需要将谐波数据与功率数据长度匹配上
RespHarmData respHarmData = getRespHarmData(responsibilityCalculateParam,lineInterval);
RespHarmData respHarmData = getRespHarmData(responsibilityCalculateParam, lineInterval);
//harmData填充完毕后开始组装功率数据
//首先获取当前时间内的各个用户的数据
Map<String/*用户名*/, List<UserDataExcel>> originalPData = new HashMap<>();
@@ -200,7 +200,12 @@ public class RespDataServiceImpl extends ServiceImpl<RespDataMapper, RespData> i
}
}
//至此功率数据也组装完毕,调用友谊提供的接口
QvvrStruct qvvrStruct = new QvvrStruct();
QvvrStruct qvvrStruct = null;
try {
qvvrStruct = new QvvrStruct();
} catch (Exception exception) {
exception.printStackTrace();
}
qvvrStruct.cal_flag = 0;
qvvrStruct.p_node = pNode;
qvvrStruct.p_num = pNum;
@@ -212,7 +217,11 @@ public class RespDataServiceImpl extends ServiceImpl<RespDataMapper, RespData> i
ResponsibilityCallDllOrSo responsibilityCallDllOrSo = new ResponsibilityCallDllOrSo("harm_response");
responsibilityCallDllOrSo.setPath();
ResponsibilityCallDllOrSo.ResponsibilityLibrary responsibilityLibrary = ResponsibilityCallDllOrSo.ResponsibilityLibrary.INSTANTCE;
responsibilityLibrary.harm_response(qvvrStruct);
try {
responsibilityLibrary.harm_response(qvvrStruct);
} catch (Exception exception) {
exception.printStackTrace();
}
//至此接口调用结束,开始组装动态责任数据和用户责任量化结果
//首先判断cal_ok的标识位是否为1为0表示程序没有计算出结果
if (qvvrStruct.cal_ok == 0) {
@@ -863,14 +872,14 @@ public class RespDataServiceImpl extends ServiceImpl<RespDataMapper, RespData> i
pNum = dateStr.size() * 48;
finalData = dealFinalDataByLineInterval(finalData);
}
return new RespCommon(pNum, userIntervalTime,lineInterval);
return new RespCommon(pNum, userIntervalTime, lineInterval);
}
/***
* 获取责任需要的谐波数据
*/
private RespHarmData getRespHarmData(ResponsibilityCalculateParam responsibilityCalculateParam, int lineInterval){
private RespHarmData getRespHarmData(ResponsibilityCalculateParam responsibilityCalculateParam, int lineInterval) {
HarmHistoryDataDTO data = harmDataFeignClient.getHistoryHarmData(new HistoryHarmParam(responsibilityCalculateParam.getSearchBeginTime(), responsibilityCalculateParam.getSearchEndTime(), responsibilityCalculateParam.getLineId(), responsibilityCalculateParam.getType(), responsibilityCalculateParam.getTime())).getData();
List<HarmData> historyData = data.getHistoryData();
historyData = getDataWithLineInterval(historyData, lineInterval);
@@ -881,12 +890,12 @@ public class RespDataServiceImpl extends ServiceImpl<RespDataMapper, RespData> i
for (int i = 0; i < historyData.size(); i++) {
Float value = historyData.get(i).getValue();
if (value != null) {
value = value * 1000;
// value = value * 1000;
}
harmData[i] = value;
harmTime.add(PubUtils.instantToDate(historyData.get(i).getTime()).getTime());
}
return new RespHarmData(harmData,harmTime,data.getOverLimit());
return new RespHarmData(harmData, harmTime, data.getOverLimit());
}
}