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<QueryResultVo<List<VoOnLineIntake>>> allIntakes(QueryVo qo) {
|
try {
|
QueryResultVo<List<VoOnLineIntake>> 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> 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.buildException(e.getMessage());
|
}
|
}
|
|
}
|