From 65d05c6542ad066eafcbaaa6b078b0e917bf13a9 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 08 十一月 2024 14:37:34 +0800
Subject: [PATCH] 上传RTU升级文件接收端改为json试
---
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java | 190 +++++++++++++++++++++++++++++++----------------
1 files changed, 125 insertions(+), 65 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
index 47ecf84..f8ce89c 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/intake/IntakeSv.java
@@ -6,10 +6,14 @@
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.daoPr.PrIntakeMapper;
+import com.dy.pipIrrGlobal.daoRm.RmOpenCloseValveHistoryMapper;
import com.dy.pipIrrGlobal.voPr.VoOnLineIntake;
+import com.dy.pipIrrGlobal.voRm.VoOpenClostWechat;
import com.dy.pipIrrWechat.intake.qo.OnLineIntakesQO;
+import com.dy.pipIrrWechat.intake.qo.QoOpenClose;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -22,8 +26,6 @@
import org.springframework.web.client.RestTemplate;
import org.springframework.web.util.UriComponentsBuilder;
-import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -42,6 +44,9 @@
@Autowired
private RestTemplate restTemplate;
+
+ @Autowired
+ private RmOpenCloseValveHistoryMapper rmOpenCloseValveHistoryMapper;
//protected static String mwUrlSendCom = "http://127.0.0.1:8070/rtuMw/com/send" ;
protected String comSendUrl;
@@ -70,30 +75,31 @@
comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw);
JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
+
+ JSONArray jsonArray = new JSONArray();
if(response != null && response.getString("code").equals("0001")) {
- JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
- HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
-
- JSONArray jsonArray = new JSONArray();
- 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);
+ JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
+ if(attachment != null) {
+ attachment.forEach((key, value) -> {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("rtuAddr", key);
+ jsonObject.put("isOnLine", value);
+ jsonArray.add(jsonObject);
+ });
}
-
- qo.setOnLineMap(jsonArray.toJSONString());
- // 濡傛灉 intakeNum 涓嶄负绌猴紝鍒欒浆涓哄皬鍐欏啀鍐欏叆qo瀵硅薄
- String intakeNum = qo.getIntakeNum();
- if(intakeNum != null) {
- qo.setIntakeNum(intakeNum.toLowerCase());
- }
-
- Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
- return prIntakeMapper.getIntakeByName(params);
- } else {
- return new VoOnLineIntake();
+ //} else {
+ // return new VoOnLineIntake();
}
+
+ qo.setOnLineMap(jsonArray.toJSONString());
+ // 濡傛灉 intakeNum 涓嶄负绌猴紝鍒欒浆涓哄皬鍐欏啀鍐欏叆qo瀵硅薄
+ String intakeNum = qo.getIntakeNum();
+ if(intakeNum != null) {
+ qo.setIntakeNum(intakeNum.toLowerCase());
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+ return prIntakeMapper.getIntakeByName(params);
}
/**
@@ -108,68 +114,79 @@
comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw);
JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
+
+ JSONArray jsonArray = new JSONArray();
if(response != null && response.getString("code").equals("0001")) {
- JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
- HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
-
- JSONArray jsonArray = new JSONArray();
- 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);
+ JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
+ if(attachment != null) {
+ attachment.forEach((key, value) -> {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("rtuAddr", key);
+ jsonObject.put("isOnLine", value);
+ jsonArray.add(jsonObject);
+ });
}
-
- qo.setOnLineMap(jsonArray.toJSONString());
- // 濡傛灉 intakeNum 涓嶄负绌猴紝鍒欒浆涓哄皬鍐欏啀鍐欏叆qo瀵硅薄
- String intakeNum = qo.getIntakeNum();
- if(intakeNum != null) {
- qo.setIntakeNum(intakeNum.toLowerCase());
- }
-
- Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
- Long itemTotal = prIntakeMapper.getOnLineIntakesCount(params);
-
- QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>() ;
- rsVo.pageSize = qo.pageSize ;
- rsVo.pageCurr = qo.pageCurr ;
- rsVo.calculateAndSet(itemTotal, params);
- rsVo.obj = prIntakeMapper.getOnLineIntakes(params);
- return rsVo;
- } else {
- QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>();
- return rsVo;
+ //} else {
+ // QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>();
+ // return rsVo;
}
+
+ qo.setOnLineMap(jsonArray.toJSONString());
+ // 濡傛灉 intakeNum 涓嶄负绌猴紝鍒欒浆涓哄皬鍐欏啀鍐欏叆qo瀵硅薄
+ String intakeNum = qo.getIntakeNum();
+ if(intakeNum != null) {
+ qo.setIntakeNum(intakeNum.toLowerCase());
+ }
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ;
+ Long itemTotal = prIntakeMapper.getOnLineIntakesCount(params);
+
+ QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>() ;
+ rsVo.pageSize = qo.pageSize ;
+ rsVo.pageCurr = qo.pageCurr ;
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = prIntakeMapper.getOnLineIntakes(params);
+ return rsVo;
+
}
/**
* 鏍规嵁鎿嶄綔鍛樿幏鍙栧父鐢ㄥ彇姘村彛
- * @param operator
+ * @param operatorId
* @return
*/
- public List<VoOnLineIntake> getUsedIntakes(Long operator) {
+ public List<VoOnLineIntake> getUsedIntakes(Long operatorId) {
Command com = new Command() ;
com.id = Command.defaultId;
com.code = "LCD0001";
com.type = "innerCommand";
comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw);
+
JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
+ //String response_Str = "{\"code\": \"0001\",\"content\": {\"attachment\": {\"530115059980\": true,\"620201000030\": true},\"code\": \"LCD0001\",\"id\": \"999999999\",\"param\": {\"message\": \"鏌ヨ鎵�鏈塕TU鍦ㄧ嚎鎯呭喌缁撴灉\",\"success\": true},\"protocol\": \"\",\"rtuAddr\": \"\",\"rtuResultSendWebUrl\": \"\",\"type\": \"resultCommand\"},\"msg\": \"璇锋眰鎴愬姛\",\"success\": true}";
+ //JSONObject response = JSON.parseObject(response_Str);
+ //String test = response.toJSONString();
+ JSONArray jsonArray = new JSONArray();
if(response != null && response.getString("code").equals("0001")) {
- JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap");
- HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class);
+ JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
+ if(attachment != null) {
+ attachment.forEach((key, value) -> {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("rtuAddr", key);
+ jsonObject.put("isOnLine", value);
+ jsonArray.add(jsonObject);
- JSONArray jsonArray = new JSONArray();
- 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);
+ });
}
- return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator);
- } else {
- return new ArrayList<>();
+
+ System.out.println(jsonArray.toJSONString());
+ //return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operatorId);
+ //} else {
+ // return new ArrayList<>();
}
+
+ return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operatorId);
}
/**
@@ -189,6 +206,49 @@
} catch (Exception e) {
e.printStackTrace();
}
+
+ if(response == null) {
+ return BaseResponseUtils.buildErrorMsg("涓棿浠惰皟鐢ㄥけ璐�");
+ }
+
return response.getBody();
}
+
+ /**
+ * 鑾峰彇鐗╃悊鍗″紑鍏抽榾璁板綍锛屽井淇″皬绋嬪簭浣跨敤
+ * @param queryVo
+ * @return
+ */
+ public QueryResultVo<List<VoOpenClostWechat>> getCardOpenClose(QoOpenClose queryVo) {
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+
+ Long itemTotal = rmOpenCloseValveHistoryMapper.getCardOpenCloseCount(params);
+
+ QueryResultVo<List<VoOpenClostWechat>> rsVo = new QueryResultVo<>();
+ rsVo.pageSize = queryVo.pageSize;
+ rsVo.pageCurr = queryVo.pageCurr;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getCardOpenClose(params);
+ return rsVo;
+ }
+
+ /**
+ * 鑾峰彇铏氭嫙鍗″紑鍏抽榾璁板綍锛屽井淇″皬绋嬪簭浣跨敤
+ * @param queryVo
+ * @return
+ */
+ public QueryResultVo<List<VoOpenClostWechat>> getVcCardOpenClose(QoOpenClose queryVo) {
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+
+ Long itemTotal = rmOpenCloseValveHistoryMapper.getVcCardOpenCloseCount(params);
+
+ QueryResultVo<List<VoOpenClostWechat>> rsVo = new QueryResultVo<>();
+ rsVo.pageSize = queryVo.pageSize;
+ rsVo.pageCurr = queryVo.pageCurr;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = rmOpenCloseValveHistoryMapper.getVcCardOpenClose(params);
+ return rsVo;
+ }
}
--
Gitblit v1.8.0