From 29a186e6859d73e2a10dfaca9391de612fd6ce42 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期六, 04 一月 2025 09:29:27 +0800
Subject: [PATCH] 增加vo属性在json中排序
---
pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerSv.java | 141 +++++++++++++++++++++++++++++++++++++++--------
1 files changed, 117 insertions(+), 24 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerSv.java
index 362b1ca..edec64e 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerSv.java
@@ -3,6 +3,10 @@
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
+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.PrControllerMapper;
import com.dy.pipIrrGlobal.daoPr.PrIntakeControllerMapper;
@@ -13,11 +17,14 @@
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.utils.PojoUtils;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.env.Environment;
import org.springframework.http.HttpEntity;
+import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
+import org.springframework.web.util.UriComponentsBuilder;
import java.util.ArrayList;
import java.util.List;
@@ -46,6 +53,21 @@
@Autowired
private RestTemplate restTemplate;
+// protected static String mwUrlSendCom = "http://127.0.0.1:8070/rtuMw/com/send";
+ protected String comSendUrl;
+
+ /**
+ * pro_mw锛氬睘鎬�
+ * tag浠庢帶鍒跺櫒涓幏鍙�
+ * key_mw锛歶rl鐨刱ey
+ */
+ private Environment env = null;
+ private String pro_mw = "mw";
+ private String key_mw = "comSendUrl";
+ @Autowired
+ public ControllerSv(Environment env) {
+ this.env = env;
+ }
/**
* 鏍规嵁鎸囧畾鑾峰彇鎺у埗鍣ㄨ褰�
@@ -54,31 +76,47 @@
* @return
*/
public QueryResultVo<List<VoController>> getControllers(QueryVo queryVo) {
- Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
- Long itemTotal = prControllerMapper.getRecordCount(params);
+ Command com = new Command() ;
+ com.id = Command.defaultId;
+ com.code = "LCD0001";
+ com.type = "innerCommand";
+ comSendUrl = env.getProperty(pro_mw + "." + DataSourceContext.get() + "." + key_mw);
- QueryResultVo<List<VoController>> rsVo = new QueryResultVo<>();
- rsVo.pageSize = queryVo.pageSize;
- rsVo.pageCurr = queryVo.pageCurr;
-
- rsVo.calculateAndSet(itemTotal, params);
- rsVo.obj = prControllerMapper.getControllers(params);
+ JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com));
- ArrayList<Object> list = new ArrayList<>();
- List<VoController> controllers = prControllerMapper.getControllers(params);
- for (int i = 0; i < controllers.size(); i++) {
- VoController controller = controllers.get(i);
- String rtuAddr = controller.getRtuAddr();
- list.add(rtuAddr);
+ if (response != null && response.getString("code").equals("0001")) {
+ JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment");
+
+ JSONArray jsonArray = new JSONArray();
+ if(attachment != null) {
+ attachment.forEach((key, value) -> {
+ JSONObject jsonObject = new JSONObject();
+ jsonObject.put("rtuAddr", key);
+ jsonObject.put("isOnLine", value);
+ jsonArray.add(jsonObject);
+
+ });
+ }
+
+ queryVo.setOnLineMap(jsonArray.toJSONString());
+
+ Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo);
+
+ Long itemTotal = prControllerMapper.getRecordCount(params);
+
+ QueryResultVo<List<VoController>> rsVo = new QueryResultVo<>();
+ rsVo.pageSize = queryVo.pageSize;
+ rsVo.pageCurr = queryVo.pageCurr;
+
+ rsVo.calculateAndSet(itemTotal, params);
+ rsVo.obj = prControllerMapper.getControllers(params);
+ return rsVo;
+ } else {
+ QueryResultVo<List<VoController>> rsVo = new QueryResultVo<>();
+ return rsVo;
}
- String url = "http://localhost:8080/accMw/com/send";
- HttpEntity<?> httpEntity = new HttpEntity<>(list);
- ResponseEntity<String> entity = restTemplate.exchange(url, HttpMethod.GET, httpEntity, String.class);
- JSONObject data = JSONObject.parseObject(entity.getBody()).getJSONObject("data");
- data.getString("rtuAddr");
- return rsVo;
}
/**
@@ -88,7 +126,10 @@
* @return
*/
public Integer addController(PrController po) {
- prControllerMapper.insert(po);
+ int rows = prControllerMapper.insert(po);
+ if (rows == 0) {
+ return 0;
+ }
PrIntakeController addPrIntakeController = new PrIntakeController();
addPrIntakeController.setIntakeid(po.getIntakeId());
addPrIntakeController.setControllerid(po.getId());
@@ -96,7 +137,10 @@
addPrIntakeController.setOperator(po.getOperator());
addPrIntakeController.setOperatedt(po.getOperateDt());
addPrIntakeController.setRemarks("缁戝畾");
- prIntakeControllerMapper.insert(addPrIntakeController);
+ int rec = prIntakeControllerMapper.insert(addPrIntakeController);
+ if (rec == 0) {
+ return 0;
+ }
return 1;
}
@@ -111,13 +155,13 @@
}
/**
- * 鏍规嵁鎺у埗鍣ㄧ紪鍙烽�昏緫鍒犻櫎鎺у埗
+ * 鏍规嵁鎺у埗鍣ㄧ紪鍙风墿鐞嗗垹闄ゆ帶鍒�
*
* @param controllerId
* @return
*/
public Integer deleteControllerById(Long controllerId) {
- return prControllerMapper.deleteControllerById(controllerId);
+ return prControllerMapper.deleteByPrimaryKey(controllerId);
}
/**
@@ -176,4 +220,53 @@
}
return array;
}
+
+ /**
+ * 鏍规嵁鎺у埗鍣ㄧ紪鍙风墿鐞嗗垹闄ゆ帶鍒�
+ * 2024-6-7
+ *
+ * @param controllerId
+ * @return
+ */
+ public Integer deleteControllerByIdTwo(Long controllerId) {
+ return prControllerMapper.deleteByPrimaryKey(controllerId);
+ }
+
+ /**
+ * 鏍规嵁涓婚敭鏌ヨ鎺у埗鍣ㄥ垪琛�
+ * 2024-6-7
+ *
+ * @param controllerId
+ * @return
+ */
+ public PrController getByControllerId(Long controllerId) {
+ return prControllerMapper.selectByPrimaryKey(controllerId);
+ }
+
+
+ /**
+ * 鍙戦�佸懡浠�
+ *
+ * @return
+ */
+ protected BaseResponse sendCom2Mw(Command com) {
+ String url = UriComponentsBuilder.fromUriString(comSendUrl)
+ .build()
+ .toUriString();
+ HttpHeaders headers = new HttpHeaders();
+ HttpEntity<Command> httpEntity = new HttpEntity<>(com, headers);
+ ResponseEntity<BaseResponse> response = null;
+ try {
+ // 閫氳繃Post鏂瑰紡璋冪敤鎺ュ彛
+ response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, BaseResponse.class);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ if(response == null) {
+ return BaseResponseUtils.buildErrorMsg("涓棿浠惰皟鐢ㄥけ璐�");
+ }
+
+ return response.getBody();
+ }
}
--
Gitblit v1.8.0