From 4c6fcde6404479dc00e14733c37efe4fd3799cf5 Mon Sep 17 00:00:00 2001 From: wuzeyu <1223318623@qq.com> Date: 星期一, 16 十二月 2024 10:24:53 +0800 Subject: [PATCH] 优化接口 获得全部取水口 重构返回结构,增加片区名称字段、增加县镇村名称字段 --- pipIrr-platform/pipIrr-web/pipIrr-web-project/src/main/java/com/dy/pipIrrProject/intake/IntakeSv.java | 81 ++++++++++++++++++++++------------------ 1 files changed, 45 insertions(+), 36 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 f35f3f1..7bbc8ea 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,14 +6,15 @@ 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; import com.dy.pipIrrGlobal.daoPr.PrIntakeMapper; import com.dy.pipIrrGlobal.pojoPr.PrIntake; +import com.dy.pipIrrGlobal.voPr.VoAllIntake; 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; @@ -27,7 +28,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 @@ -58,6 +61,7 @@ private Environment env = null; private String pro_mw = "mw"; private String key_mw = "comSendUrl"; + @Autowired public IntakeSv(Environment env) { this.env = env; @@ -85,7 +89,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); @@ -133,12 +137,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); @@ -167,8 +165,8 @@ * * @return 鎵�鏈夊彇姘村彛闆嗗悎 */ - public QueryResultVo<List<PrIntake>> selectAll() { - QueryResultVo<List<PrIntake>> rsVo = new QueryResultVo<>(); + public QueryResultVo<List<VoAllIntake>> selectAll() { + QueryResultVo<List<VoAllIntake>> rsVo = new QueryResultVo<>(); rsVo.obj = this.prIntakeMapper.selectAll(); return rsVo; } @@ -225,18 +223,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); @@ -249,12 +249,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; @@ -262,42 +262,44 @@ 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); - - 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); + JSONArray jsonArray = new JSONArray(); + if (response != null && response.getString("code").equals("0001")) { + 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); + }); } - return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator); - } else { - return new ArrayList<>(); + //} else { + // return new ArrayList<>(); } + return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator); } /** * 鍙戦�佸懡浠� + * * @return */ - protected BaseResponse sendCom2Mw(Command com){ + protected BaseResponse sendCom2Mw(Command com) { String url = UriComponentsBuilder.fromUriString(comSendUrl) .build() .toUriString(); @@ -310,12 +312,18 @@ } catch (Exception e) { e.printStackTrace(); } + + if(response == null) { + return BaseResponseUtils.buildErrorMsg("涓棿浠惰皟鐢ㄥけ璐�"); + } + return response.getBody(); } /** * 鍙栨按鍙e悕绉版崲鍙栨按鍙D锛岄獙璇佹槸鍚﹂噸澶嶅悕绉颁娇鐢� + * * @param intakeName * @return */ @@ -325,6 +333,7 @@ /** * 鍙栨按鍙e悕绉版崲鍙栨按鍙D锛岄獙璇佹槸鍚﹂噸澶嶅悕绉颁娇鐢� + * * @param intakeName * @return */ -- Gitblit v1.8.0