package com.dy.pipIrrRemote.monitor; import com.dy.common.aop.SsoAop; import com.dy.common.mw.protocol.rtuState.RtuStatus; import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.voPr.VoOnLineIntake; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; /** * @Author: liurunyu * @Date: 2024/10/23 11:32 * @Description */ @Slf4j @Tag(name = "监测控制", description = "监测控制") @RestController @RequestMapping(path = "monitor") @RequiredArgsConstructor public class MonitorCtrl { private final MonitorSv monitorSv; /** * 获取取水口列表(在线和不在线) * * @param qo * @return */ @GetMapping(path = "all_intakes") @SsoAop() public BaseResponse>> allIntakes(QueryVo qo) { try { QueryResultVo> res = monitorSv.selectOnLineIntakes(qo); return BaseResponseUtils.buildSuccess(res); } catch (Exception e) { log.error("命令执行异常", e); return BaseResponseUtils.buildException(e.getMessage()); } } /** * RTU在通信中间件中的运行状态 * @param rtuAddr * @return */ @GetMapping(path = "rtuStatus") @SsoAop() public BaseResponse rtuStatus(String rtuAddr){ try { RtuStatus res = monitorSv.rtuStatus(rtuAddr); if(res != null){ return BaseResponseUtils.buildSuccess(res); }else{ return BaseResponseUtils.buildErrorMsg("后台系统出错,从通信中间件未得到查询结果"); } } catch (Exception e) { log.error("命令执行异常", e); return BaseResponseUtils.buildErrorMsg(e.getMessage()); } } }