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/intake/IntakeSv.java | 101 ++++++++++++++++++++++++++++++++++---------------- 1 files changed, 68 insertions(+), 33 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 e3080e5..d36d3ce 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 @@ -3,18 +3,20 @@ 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; +import com.dy.pipIrrGlobal.config.DingTalk; import com.dy.pipIrrGlobal.daoPr.PrDivideMapper; import com.dy.pipIrrGlobal.daoPr.PrIntakeMapper; import com.dy.pipIrrGlobal.pojoPr.PrIntake; import com.dy.pipIrrGlobal.voPr.VoIntake; import com.dy.pipIrrGlobal.voPr.VoOnLineIntake; -import com.dy.pipIrrProject.intake.qo.OnLineIntakesQO; 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; @@ -45,8 +47,33 @@ @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 IntakeSv(Environment env) { + this.env = env; + } + + @Autowired + private DingTalk dingTalk; + + public String sendMessage(String message) { + try { + dingTalk.sendMessage(DataSourceContext.get(), this.env, message); + } catch (Exception e) { + return "鍙戦�佸け璐�"; + } + return "鍙戦�佹垚鍔�"; + } /** * 娣诲姞鍙栨按鍙� @@ -58,7 +85,7 @@ Integer addIntake(PrIntake po) { Long villageId = Optional.ofNullable(po.getVillageId()).orElse(0L); - if (villageId != 0){ + if (villageId != 0) { if (po.getTownId() == null || po.getTownId() == 0) { Long townId = getSupperByVillageId(po.getVillageId()); po.setTownId(townId); @@ -78,7 +105,6 @@ public Long getSupperByVillageId(long vaId) { return prIntakeMapper.getSupperByVillageId(vaId); } - /** * 淇濆瓨淇敼瀹炰綋 @@ -107,12 +133,6 @@ * @return 鍙栨按鍙h褰曞垪琛� */ public QueryResultVo<List<VoIntake>> getIntakes(QueryVo queryVo) { -// String isBinded = queryVo.getIsBinded(); -// -// if(isBinded == null || isBinded.length() <= 0) { -// -// } - Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); Long itemTotal = prIntakeMapper.getRecordCount(params); @@ -199,18 +219,20 @@ } /** + * 姝ゅ姛鑳藉凡缍撶Щ妞嶅埌remote妯″鐨凪onitroSv涓� + * * 鑾峰彇鍙栨按鍙e垪琛� + * * @return - */ - public QueryResultVo<List<VoOnLineIntake>> selectOnLineIntakes(OnLineIntakesQO qo) { - Command com = new Command() ; + public QueryResultVo<List<VoOnLineIntake>> selectOnLineIntakes(OnLineIntakesQO qo) { + 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)); - - if(response != null && response.getString("code").equals("0001")) { + 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); @@ -223,12 +245,12 @@ } qo.setOnLineMap(jsonArray.toJSONString()); - Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(qo) ; + 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 ; + 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; @@ -236,30 +258,40 @@ QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>(); return rsVo; } - } - + } + */ /** * 鏍规嵁鎿嶄綔鍛樿幏鍙栧父鐢ㄥ彇姘村彛 + * * @param operator * @return */ public List<VoOnLineIntake> getUsedIntakes(Long operator) { - Command com = new Command() ; + Command com = new Command(); com.id = Command.defaultId; 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"); - HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class); + 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(); - 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); + + }); } return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator); } else { @@ -269,10 +301,11 @@ /** * 鍙戦�佸懡浠� + * * @return */ - protected BaseResponse sendCom2Mw(Command com){ - String url = UriComponentsBuilder.fromUriString(mwUrlSendCom) + protected BaseResponse sendCom2Mw(Command com) { + String url = UriComponentsBuilder.fromUriString(comSendUrl) .build() .toUriString(); HttpHeaders headers = new HttpHeaders(); @@ -290,6 +323,7 @@ /** * 鍙栨按鍙e悕绉版崲鍙栨按鍙D锛岄獙璇佹槸鍚﹂噸澶嶅悕绉颁娇鐢� + * * @param intakeName * @return */ @@ -299,6 +333,7 @@ /** * 鍙栨按鍙e悕绉版崲鍙栨按鍙D锛岄獙璇佹槸鍚﹂噸澶嶅悕绉颁娇鐢� + * * @param intakeName * @return */ -- Gitblit v1.8.0