liurunyu
2025-02-14 7bd3b76929e9a126b237ab9e1c8c82e7d20a4a6a
pipIrr-platform/pipIrr-web/pipIrr-web-remote/src/main/java/com/dy/pipIrrRemote/allRound/Ar4RemoteSv.java
@@ -4,13 +4,11 @@
import com.dy.common.mw.protocol.Command;
import com.dy.common.mw.protocol.CommandBackParam;
import com.dy.common.webUtil.BaseResponse;
import com.dy.common.webUtil.QueryResultVo;
import com.dy.pipIrrGlobal.VoAllRound.VoArIntakeRemote;
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;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
@@ -45,13 +43,15 @@
     * 取水口基本信息
     * @return 取水口基本信息
     */
    public QueryResultVo<VoArIntakeRemote> intakeInfo(Long intakeId){
    public VoArIntakeRemote intakeInfo(Long intakeId){
        VoArIntakeRemote rVo = new VoArIntakeRemote() ;
        rVo.intakeId = intakeId ;
        String rtuAddr = this.getRtuAddr(intakeId);
        this.getRtuOnLine(intakeId, rtuAddr, rVo);
        this.getAlarmInfo(intakeId, rtuAddr, rVo);
        this.getOpenCloseValveInfo(intakeId, rtuAddr, rVo);
        return null ;
        this.getRtuOnLine(rtuAddr, rVo);
        this.getAlarmLastInfo(intakeId, rVo);
        this.getOpenCloseValveLastInfo(intakeId, rVo);
        this.getLossAmountLastInfo(intakeId, rVo);
        return rVo ;
    }
    /**
@@ -69,11 +69,10 @@
    /**
     * 得到取水RTU在线情况
     * @param intakeId
     * @param rtuAddr
     * @param rVo
     */
    private void getRtuOnLine(Long intakeId, String rtuAddr, VoArIntakeRemote rVo){
    private void getRtuOnLine(String rtuAddr, VoArIntakeRemote rVo){
        if(rtuAddr != null){
            //向通信中间件发关命令,查询部分RTU在线情况
            Command com = this.createInnerCommand(CodeLocal.onLinePart);
@@ -106,25 +105,43 @@
    /**
     * 得到取水口最新报警信息
     * @param intakeId
     * @param rVo
     */
    private void getAlarmInfo(Long intakeId, String rtuAddr, VoArIntakeRemote rVo){
        List<VoArIntakeRemote> list = remoteDao.alarmInfo(intakeId);
    private void getAlarmLastInfo(Long intakeId, VoArIntakeRemote rVo){
        List<VoArIntakeRemote> list = remoteDao.alarmLastInfo(intakeId);
        if(list != null && list.size() > 0){
            VoArIntakeRemote vo = list.get(0) ;
            rVo.alarm = vo.alarm ;
            if(rVo.alarm == null || rVo.alarm.trim().equals("")){
                rVo.alarm = "无报警" ;
            }
            rVo.alarmDt = vo.alarmDt ;
        }
    }
   /**
     * 得到取水口最新开关阀信息
     * @param intakeId
     * @param rVo
     */
    private void getOpenCloseValveInfo(Long intakeId, String rtuAddr, VoArIntakeRemote rVo){
        List<VoArIntakeRemote> list = remoteDao.openCloseValveInfo(intakeId);
    private void getOpenCloseValveLastInfo(Long intakeId, VoArIntakeRemote rVo){
        List<VoArIntakeRemote> list = remoteDao.openCloseValveLastInfo(intakeId);
        if(list != null && list.size() > 0){
            VoArIntakeRemote vo = list.get(0) ;
            rVo.lastOpenDt = vo.lastOpenDt ;
            rVo.lastCloseDt = vo.lastCloseDt ;
        }
    }
   /**
     * 得到取水口最新漏损信息
     * @param intakeId
     * @param rVo
    */
    private void getLossAmountLastInfo(Long intakeId, VoArIntakeRemote rVo){
        List<VoArIntakeRemote> list = remoteDao.lossLastInfo(intakeId);
        if(list != null && list.size() > 0){
            VoArIntakeRemote vo = list.get(0) ;
            rVo.lossDt = vo.lossDt ;
            rVo.lossAmount = vo.lossAmount ;
        }
    }
}