From f844554d994465a14e93b0334c2677a37876d7eb Mon Sep 17 00:00:00 2001 From: Administrator <zhubaomin> Date: 星期三, 24 七月 2024 14:08:18 +0800 Subject: [PATCH] Merge branch 'master' of http://8.140.179.55:20000/r/pipIrr-SV --- pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java | 178 +++++++++++++++++++++++++++++++++++------------------------ 1 files changed, 106 insertions(+), 72 deletions(-) diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java index ee47423..f9a8a68 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/common/CommandSv.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.QueryResultVo; import com.dy.pipIrrGlobal.command.ComSupport; @@ -10,17 +11,24 @@ import com.dy.pipIrrGlobal.daoPr.PrIntakeVcMapper; import com.dy.pipIrrGlobal.daoPr.PrWaterPriceMapper; import com.dy.pipIrrGlobal.daoRm.RmCommandHistoryMapper; +import com.dy.pipIrrGlobal.daoSe.SeClientCardMapper; import com.dy.pipIrrGlobal.daoSe.SeVirtualCardMapper; import com.dy.pipIrrGlobal.pojoRm.RmCommandHistory; +import com.dy.pipIrrGlobal.pojoSe.SeClientCard; import com.dy.pipIrrGlobal.voPr.VoOnLineIntake; +import com.dy.pipIrrGlobal.voRm.VoCommand; +import com.dy.pipIrrGlobal.voRm.VoUnclosedParam; import com.dy.pipIrrGlobal.voRm.VoUnclosedValve; import com.dy.pipIrrGlobal.voSe.VoVirtualCard; -import com.dy.pipIrrRemote.common.qo.OnLineIntakesQO; +import com.dy.pipIrrRemote.common.qo.QoCommand; import lombok.RequiredArgsConstructor; 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.stereotype.Service; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -42,6 +50,26 @@ private final PrIntakeMapper prIntakeMapper; private final PrWaterPriceMapper prWaterPriceMapper; private final PrIntakeVcMapper prIntakeVcMapper; + private final SeClientCardMapper seClientCardMapper; + + /** + * pro_mw锛氬睘鎬� + * tag浠庢帶鍒跺櫒涓幏鍙� + * key_mw锛歶rl鐨刱ey + */ + private Environment env = null; + private String pro_mw = "mw"; + private String key_mw = "comSendUrl"; + @Autowired + public CommandSv(RmCommandHistoryMapper rmCommandHistoryMapper, SeVirtualCardMapper seVirtualCardMapper, PrIntakeMapper prIntakeMapper, PrWaterPriceMapper prWaterPriceMapper, PrIntakeVcMapper prIntakeVcMapper, SeClientCardMapper seClientCardMapper, Environment env) { + this.rmCommandHistoryMapper = rmCommandHistoryMapper; + this.seVirtualCardMapper = seVirtualCardMapper; + this.prIntakeMapper = prIntakeMapper; + this.prWaterPriceMapper = prWaterPriceMapper; + this.prIntakeVcMapper = prIntakeVcMapper; + this.seClientCardMapper = seClientCardMapper; + this.env = env; + } /** * 铏氭嫙鍗D鎹㈣櫄鎷熷崱瀵硅薄 @@ -67,7 +95,7 @@ */ public Long insert(RmCommandHistory po) { rmCommandHistoryMapper.insert(po); - return po.getId(); + return po.getComId(); } /** @@ -80,75 +108,6 @@ } /** - * 鑾峰彇鍙栨按鍙e垪琛� - * @return - */ - public QueryResultVo<List<VoOnLineIntake>> selectOnLineIntakes(OnLineIntakesQO qo) { - 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); - } - - qo.setOnLineMap(jsonArray.toJSONString()); - 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; - } - } - - /** - * 鏍规嵁鎿嶄綔鍛樿幏鍙栧父鐢ㄥ彇姘村彛 - * @param operator - * @return - */ - public List<VoOnLineIntake> getUsedIntakes(Long operator) { - 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); - } - return prIntakeMapper.getUsedIntakes(jsonArray.toJSONString(), operator); - } else { - return new ArrayList<>(); - } - } - - /** * 鏍规嵁鎿嶄綔鍛業D鑾峰彇鏈叧闃�璁板綍锛堝寘鍚湪绾挎儏鍐碉級 * @param operator * @return @@ -158,9 +117,9 @@ 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")) { JSONObject attachment = response.getJSONObject("content").getJSONObject("attachment").getJSONObject("onLineMap"); HashMap<String, Boolean> onLineMap = JSON.parseObject(attachment.toJSONString(), HashMap.class); @@ -203,4 +162,79 @@ public Long getVcIdByIntakeId(Long intakeId) { return prIntakeVcMapper.getVcIdByIntakeId(intakeId); } + + /** + * 鏍规嵁鍙栨按鍙D鑾峰彇璇ュ彇姘村彛鏈叧闃�鍙傛暟锛屽钩鍙伴�夋嫨鍙栨按鍙e叧闃�浣跨敤 + * @param intakeId + * @return + */ + public VoUnclosedParam getUncloseParam(Long intakeId) { + 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")) { + 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); + } + System.out.println(jsonArray); + return rmCommandHistoryMapper.getUncloseParam(jsonArray.toJSONString(), intakeId); + } else { + QueryResultVo<List<VoOnLineIntake>> rsVo = new QueryResultVo<>(); + VoUnclosedParam voUnclosedParam = new VoUnclosedParam(); + return voUnclosedParam; + } + + } + + /** + * 鏍规嵁姘村崱缂栧彿鑾峰彇姘村崱瀵硅薄锛岃繙绋嬪厖鍊间娇鐢� + * @param cardId + * @return + */ + public SeClientCard geClientCardByCardId(Long cardId) { + return seClientCardMapper.selectByPrimaryKey(cardId); + } + + /** + * 鏍规嵁鎸囧畾鏉′欢鑾峰彇鍛戒护鏃ュ織鍘嗗彶璁板綍 + * @param query + * @return + */ + public QueryResultVo<List<VoCommand>> getCommandHistories(QoCommand query) { + DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + // 瀹屽杽鏌ヨ璧锋鏃堕棿 + String timeStart = query.getTimeStart(); + String timeStop = query.getTimeStop(); + if(timeStart != null) { + timeStart = timeStart + " 00:00:00"; + query.setTimeStart(timeStart); + } + if(timeStop != null) { + timeStop = timeStop + " 23:59:59"; + query.setTimeStop(timeStop); + } + + Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(query); + + Long itemTotal = rmCommandHistoryMapper.getCommandHistoriesCount(params); + + QueryResultVo<List<VoCommand>> rsVo = new QueryResultVo<>() ; + rsVo.pageSize = query.pageSize ; + rsVo.pageCurr = query.pageCurr ; + + rsVo.calculateAndSet(itemTotal, params); + rsVo.obj = rmCommandHistoryMapper.getCommandHistories(params); + return rsVo ; + } } -- Gitblit v1.8.0