From fe1e65520172d8c365d2fe75a843a44243f4faf6 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期一, 28 十月 2024 20:31:48 +0800 Subject: [PATCH] 2024-10-28 代码优化 --- pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/controller/ControllerSv.java | 58 ++++++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 38 insertions(+), 20 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 edce345..d741f10 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,7 @@ 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.QueryResultVo; @@ -12,10 +13,10 @@ import com.dy.pipIrrGlobal.pojoPr.PrController; import com.dy.pipIrrGlobal.pojoPr.PrIntakeController; import com.dy.pipIrrGlobal.voPr.VoController; -import com.dy.pipIrrGlobal.voPr.VoOnLineIntake; 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; @@ -48,8 +49,21 @@ @Autowired private RestTemplate restTemplate; - protected static String mwUrlSendCom = "http://127.0.0.1:8070/rtuMw/com/send"; +// 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; + } /** * 鏍规嵁鎸囧畾鑾峰彇鎺у埗鍣ㄨ褰� @@ -59,31 +73,35 @@ */ public QueryResultVo<List<VoController>> getControllers(QueryVo queryVo) { - Command com = new Command(); + 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 = null; - try { - response = (JSONObject) JSON.toJSON(sendCom2Mw(com)); - }catch (Exception e) { - QueryResultVo<List<VoController>> rsVo = new QueryResultVo<>(); - return rsVo; - } - - + JSONObject response = (JSONObject) JSON.toJSON(sendCom2Mw(com)); 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").getJSONObject("onLineMap"); + JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment"); 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); + 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); + + }); } + queryVo.setOnLineMap(jsonArray.toJSONString()); Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); @@ -234,7 +252,7 @@ * @return */ protected BaseResponse sendCom2Mw(Command com) { - String url = UriComponentsBuilder.fromUriString(mwUrlSendCom) + String url = UriComponentsBuilder.fromUriString(comSendUrl) .build() .toUriString(); HttpHeaders headers = new HttpHeaders(); -- Gitblit v1.8.0