From 4917ae8ab0ef975560674adf20d7001bef0a47d9 Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期三, 22 一月 2025 11:27:22 +0800
Subject: [PATCH] 通信中间件代码优化;取水口统合数据增加远程的属性内容。

---
 pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/allRound/Ar4RemoteSv.java |   55 +++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 51 insertions(+), 4 deletions(-)

diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/allRound/Ar4RemoteSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/allRound/Ar4RemoteSv.java
index 990d0a9..52d1d71 100644
--- a/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/allRound/Ar4RemoteSv.java
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/allRound/Ar4RemoteSv.java
@@ -7,6 +7,7 @@
 import com.dy.common.webUtil.QueryResultVo;
 import com.dy.pipIrrGlobal.VoAllRound.VoArIntakeRemote;
 import com.dy.pipIrrGlobal.daoAllRound.Ar4BaseMapper;
+import com.dy.pipIrrGlobal.daoAllRound.Ar4RemoteMapper;
 import com.dy.pipIrrGlobal.rtuMw.CodeLocal;
 import com.dy.pipIrrGlobal.rtuMw.Web2RtuMw;
 import com.dy.pipIrrGlobal.voPr.VoOnLineIntake;
@@ -32,6 +33,9 @@
     private Ar4BaseMapper baseDao;
 
     @Autowired
+    private Ar4RemoteMapper remoteDao;
+
+    @Autowired
     private Environment env;
 
     @Autowired
@@ -43,12 +47,33 @@
      */
     public QueryResultVo<VoArIntakeRemote> intakeInfo(Long intakeId){
         VoArIntakeRemote rVo = new VoArIntakeRemote() ;
+        String rtuAddr = this.getRtuAddr(intakeId);
+        this.getRtuOnLine(intakeId, rtuAddr, rVo);
+        this.getAlarmInfo(intakeId, rtuAddr, rVo);
+        this.getOpenCloseValveInfo(intakeId, rtuAddr, rVo);
+        return null ;
+    }
 
-        String rtuAddr = null ;
+    /**
+     * 鑾峰彇鍙栨按鍙e搴旂殑RTU鍦板潃
+     * @param intakeId 鍙栨按鍙D
+     * @return RTU鍦板潃
+     */
+    private String getRtuAddr(Long intakeId){
         List<String> rtuAddrs = baseDao.intakeRtuAddr(intakeId) ;
         if(rtuAddrs != null && rtuAddrs.size() > 0){
-            rtuAddr = rtuAddrs.get(0) ;
+            return rtuAddrs.get(0) ;
         }
+        return null ;
+    }
+
+    /**
+     * 寰楀埌鍙栨按RTU鍦ㄧ嚎鎯呭喌
+     * @param intakeId
+     * @param rtuAddr
+     * @param rVo
+     */
+    private void getRtuOnLine(Long intakeId, String rtuAddr, VoArIntakeRemote rVo){
         if(rtuAddr != null){
             //鍚戦�氫俊涓棿浠跺彂鍏冲懡浠わ紝鏌ヨ閮ㄥ垎RTU鍦ㄧ嚎鎯呭喌
             Command com = this.createInnerCommand(CodeLocal.onLinePart);
@@ -77,7 +102,29 @@
                 log.error("閫氫俊涓棿浠惰繑鍥炲唴閮ㄥ懡浠ょ粨鏋滀负null");
             }
         }
-
-        return null ;
+    }
+    /**
+     * 寰楀埌鍙栨按鍙f渶鏂版姤璀︿俊鎭�
+     * @param intakeId
+     */
+    private void getAlarmInfo(Long intakeId, String rtuAddr, VoArIntakeRemote rVo){
+        List<VoArIntakeRemote> list = remoteDao.alarmInfo(intakeId);
+        if(list != null && list.size() > 0){
+            VoArIntakeRemote vo = list.get(0) ;
+            rVo.alarm = vo.alarm ;
+            rVo.alarmDt = vo.alarmDt ;
+        }
+    }
+   /**
+     * 寰楀埌鍙栨按鍙f渶鏂板紑鍏抽榾淇℃伅
+     * @param intakeId
+     */
+    private void getOpenCloseValveInfo(Long intakeId, String rtuAddr, VoArIntakeRemote rVo){
+        List<VoArIntakeRemote> list = remoteDao.openCloseValveInfo(intakeId);
+        if(list != null && list.size() > 0){
+            VoArIntakeRemote vo = list.get(0) ;
+            rVo.lastOpenDt = vo.lastOpenDt ;
+            rVo.lastCloseDt = vo.lastCloseDt ;
+        }
     }
 }

--
Gitblit v1.8.0