From b397edee2be2dfcc3f28eeac50298b4de26b1afa Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 13 十二月 2024 16:53:45 +0800
Subject: [PATCH] 取水口日取水量表中,出现一些大数,明显不正确,发析系统日志,发现一些阀控器会上报一些累计流量为0的数据,且无规律,推测是其不能从水表读取到累计流量时会上报0值。如果间歇上报0值,间歇上报一些非0值,非0值减去0值,就会出现大数,一天中出现几次那么会大数进行累加,数值将更大。为此变更算法,规避这种情况,但也会丢失一些流量值。
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java | 31 +++++++++++++++----------------
1 files changed, 15 insertions(+), 16 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
index d36d3ce..1c3e486 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java
@@ -6,6 +6,7 @@
import com.dy.common.multiDataSource.DataSourceContext;
import com.dy.common.mw.protocol.Command;
import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.config.DingTalk;
import com.dy.pipIrrGlobal.daoPr.PrDivideMapper;
@@ -26,7 +27,9 @@
import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponentsBuilder;
-import java.util.*;
+import java.util.List;
+import java.util.Map;
+import java.util.Optional;
/**
* @author wuzeyu
@@ -272,31 +275,22 @@
com.code = "LCD0001";
com.type = "innerCommand";
JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
- if (response != null && response.getString("code").equals("0001")) {
- //JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
- JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
- JSONArray jsonArray = new JSONArray();
+ JSONArray jsonArray = new JSONArray();
+ if (response != null && response.getString("code").equals("0001")) {
+ JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
if(attachment != null) {
- //HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
- //for (Map.Entry<String, Boolean> entry : onLineMap.entrySet()) {
- // JSONObject jsonObject = new JSONObject();
- // jsonObject.put("rtuAddr", entry.getKey());
- // jsonObject.put("isOnLine", entry.getValue());
- // jsonArray.add(jsonObject);
- //}
attachment.forEach((key, value) -> {
JSONObject jsonObject = new JSONObject();
jsonObject.put("rtuAddr", key);
jsonObject.put("isOnLine", value);
jsonArray.add(jsonObject);
-
});
}
- return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator);
- } else {
- return new ArrayList<>();
+ //} else {
+ // return new ArrayList<>();
}
+ return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator);
}
/**
@@ -317,6 +311,11 @@
} catch (Exception e) {
e.printStackTrace();
}
+
+ if(response == null) {
+ return BaseResponseUtils.buildErrorMsg("涓棿浠惰皟鐢ㄥけ璐�");
+ }
+
return response.getBody();
}
--
Gitblit v1.8.0