微调
This commit is contained in:
@@ -323,6 +323,24 @@ public class PubUtils {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//监测点运行状态(0:投运;1:检修;2:停运;3:调试;4:退运)
|
||||||
|
public static String lineRunFlag(Integer runFlag) {
|
||||||
|
switch (runFlag) {
|
||||||
|
case 0:
|
||||||
|
return "投运";
|
||||||
|
case 1:
|
||||||
|
return "检修";
|
||||||
|
case 2:
|
||||||
|
return "停运";
|
||||||
|
case 3:
|
||||||
|
return "调试";
|
||||||
|
case 4:
|
||||||
|
return "退运";
|
||||||
|
default:
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static Integer getRunFlag(String runFlag) {
|
public static Integer getRunFlag(String runFlag) {
|
||||||
switch (runFlag) {
|
switch (runFlag) {
|
||||||
case "投运":
|
case "投运":
|
||||||
|
|||||||
@@ -138,7 +138,7 @@ public class LineServiceImpl extends ServiceImpl<LineMapper, Line> implements Li
|
|||||||
Device device = deviceMapper.selectById(devId);
|
Device device = deviceMapper.selectById(devId);
|
||||||
lineDetailDataVO.setManufacturer(dicDataFeignClient.getDicDataById(device.getManufacturer()).getData().getName());
|
lineDetailDataVO.setManufacturer(dicDataFeignClient.getDicDataById(device.getManufacturer()).getData().getName());
|
||||||
lineDetailDataVO.setComFlag(PubUtils.comFlag(device.getComFlag()));
|
lineDetailDataVO.setComFlag(PubUtils.comFlag(device.getComFlag()));
|
||||||
lineDetailDataVO.setRunFlag(PubUtils.runFlag(device.getRunFlag()));
|
lineDetailDataVO.setRunFlag(PubUtils.lineRunFlag(lineDetail.getRunFlag()));
|
||||||
lineDetailDataVO.setIp(device.getIp());
|
lineDetailDataVO.setIp(device.getIp());
|
||||||
lineDetailDataVO.setLoginTime(device.getLoginTime());
|
lineDetailDataVO.setLoginTime(device.getLoginTime());
|
||||||
lineDetailDataVO.setDevId(device.getId());
|
lineDetailDataVO.setDevId(device.getId());
|
||||||
|
|||||||
@@ -0,0 +1,20 @@
|
|||||||
|
package com.njcn.supervision.api;
|
||||||
|
|
||||||
|
import com.njcn.common.pojo.constant.ServerInfo;
|
||||||
|
import com.njcn.common.pojo.response.HttpResult;
|
||||||
|
import com.njcn.supervision.api.fallback.LineWarningFeignClientFallbackFactory;
|
||||||
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 流程实例 Api 接口
|
||||||
|
* @author xy
|
||||||
|
*/
|
||||||
|
@FeignClient(value = ServerInfo.SUPERVISION, path = "/onlineMonitor", fallbackFactory = LineWarningFeignClientFallbackFactory.class)
|
||||||
|
public interface LineWarningFeignClient {
|
||||||
|
|
||||||
|
@PostMapping("/add")
|
||||||
|
HttpResult<String> add();
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
package com.njcn.supervision.api.fallback;
|
||||||
|
|
||||||
|
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
|
||||||
|
import com.njcn.common.pojo.exception.BusinessException;
|
||||||
|
import com.njcn.common.pojo.response.HttpResult;
|
||||||
|
import com.njcn.supervision.api.LineWarningFeignClient;
|
||||||
|
import com.njcn.supervision.utils.SupervisionEnumUtil;
|
||||||
|
import feign.hystrix.FallbackFactory;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author denghuajun
|
||||||
|
* @version 1.0.0
|
||||||
|
* @date 2022/3/16
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@Component
|
||||||
|
public class LineWarningFeignClientFallbackFactory implements FallbackFactory<LineWarningFeignClient> {
|
||||||
|
@Override
|
||||||
|
public LineWarningFeignClient create(Throwable throwable) {
|
||||||
|
//判断抛出异常是否为解码器抛出的业务异常
|
||||||
|
Enum<?> exceptionEnum = CommonResponseEnum.SERVICE_FALLBACK;
|
||||||
|
if (throwable.getCause() instanceof BusinessException) {
|
||||||
|
BusinessException businessException = (BusinessException) throwable.getCause();
|
||||||
|
exceptionEnum = SupervisionEnumUtil.getExceptionEnum(businessException.getResult());
|
||||||
|
}
|
||||||
|
Enum<?> finalExceptionEnum = exceptionEnum;
|
||||||
|
return new LineWarningFeignClient() {
|
||||||
|
@Override
|
||||||
|
public HttpResult<String> add() {
|
||||||
|
log.error("{}异常,降级处理,异常为:{}", "新增终端检测数据", throwable.toString());
|
||||||
|
throw new BusinessException(finalExceptionEnum);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.PostMapping;
|
|||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
import springfox.documentation.annotations.ApiIgnore;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
@@ -44,6 +45,7 @@ public class LineWarningController extends BaseController {
|
|||||||
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
|
||||||
@PostMapping("/add")
|
@PostMapping("/add")
|
||||||
@ApiOperation("新增在线监测数据")
|
@ApiOperation("新增在线监测数据")
|
||||||
|
@ApiIgnore
|
||||||
public HttpResult<String> add() {
|
public HttpResult<String> add() {
|
||||||
String methodDescribe = getMethodDescribe("add");
|
String methodDescribe = getMethodDescribe("add");
|
||||||
lineWarningService.addLineWarning();
|
lineWarningService.addLineWarning();
|
||||||
|
|||||||
@@ -7,7 +7,10 @@ import cn.hutool.core.util.IdUtil;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||||
|
import com.njcn.common.pojo.enums.common.ServerEnum;
|
||||||
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
import com.njcn.device.biz.commApi.CommTerminalGeneralClient;
|
||||||
|
import com.njcn.device.biz.pojo.dto.DeptGetChildrenMoreDTO;
|
||||||
|
import com.njcn.device.biz.pojo.dto.LineDevGetDTO;
|
||||||
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
import com.njcn.device.biz.pojo.param.DeptGetLineParam;
|
||||||
import com.njcn.device.pq.api.DeptLineFeignClient;
|
import com.njcn.device.pq.api.DeptLineFeignClient;
|
||||||
import com.njcn.device.pq.pojo.po.DeptLine;
|
import com.njcn.device.pq.pojo.po.DeptLine;
|
||||||
@@ -70,8 +73,7 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
|||||||
List<String> lineList = commTerminalGeneralClient.getRunMonitorIds().getData();
|
List<String> lineList = commTerminalGeneralClient.getRunMonitorIds().getData();
|
||||||
RStatLimitQueryParam param = new RStatLimitQueryParam();
|
RStatLimitQueryParam param = new RStatLimitQueryParam();
|
||||||
String date = DateUtil.format(LocalDateTime.now().minusDays(1), DatePattern.NORM_DATE_PATTERN);
|
String date = DateUtil.format(LocalDateTime.now().minusDays(1), DatePattern.NORM_DATE_PATTERN);
|
||||||
// param.setDate(date);
|
param.setDate(date);
|
||||||
param.setDate("2024-01-23");
|
|
||||||
param.setIds(lineList);
|
param.setIds(lineList);
|
||||||
//获取监测点越限信息
|
//获取监测点越限信息
|
||||||
List<RStatLimitTargetDPO> limitTarget = limitRateDClient.monitorIdsGetLimitTargetInfo(param).getData();
|
List<RStatLimitTargetDPO> limitTarget = limitRateDClient.monitorIdsGetLimitTargetInfo(param).getData();
|
||||||
@@ -119,15 +121,15 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
|||||||
public Page<OnlineVo> getLineWarningList(OnlineParam param) {
|
public Page<OnlineVo> getLineWarningList(OnlineParam param) {
|
||||||
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
|
DeptGetLineParam deptGetLineParam = new DeptGetLineParam();
|
||||||
deptGetLineParam.setDeptId(param.getDeptId());
|
deptGetLineParam.setDeptId(param.getDeptId());
|
||||||
List<String> lineList = commTerminalGeneralClient.deptGetLineList(deptGetLineParam)
|
deptGetLineParam.setServerName(ServerEnum.HARMONIC.getName());
|
||||||
.getData()
|
List<DeptGetChildrenMoreDTO> list = commTerminalGeneralClient.deptGetLine(deptGetLineParam).getData();
|
||||||
.stream()
|
List<String> lineList = list.stream()
|
||||||
.flatMap(item -> item.getLineIds().stream())
|
.flatMap(dto -> dto.getLineBaseList().stream().map(LineDevGetDTO::getPointId))
|
||||||
.distinct()
|
.distinct()
|
||||||
.collect(Collectors.toList());;
|
.collect(Collectors.toList());
|
||||||
QueryWrapper<LineWarning> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<LineWarning> queryWrapper = new QueryWrapper<>();
|
||||||
queryWrapper.between("A.alarm_time", param.getSearchBeginTime(),param.getSearchEndTime());
|
queryWrapper.between("A.alarm_time", param.getSearchBeginTime(),param.getSearchEndTime());
|
||||||
queryWrapper.le("A.alert_threshold", param.getAlertThreshold());
|
queryWrapper.ge("A.over_limit_day", param.getAlertThreshold());
|
||||||
if (CollUtil.isNotEmpty(lineList)) {
|
if (CollUtil.isNotEmpty(lineList)) {
|
||||||
queryWrapper.in("A.line_id",lineList);
|
queryWrapper.in("A.line_id",lineList);
|
||||||
}
|
}
|
||||||
@@ -140,8 +142,9 @@ public class LineWarningServiceImpl extends MppServiceImpl<LineWarningMapper, Li
|
|||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void startReport(OnlineParam.ReportParam param) {
|
public void startReport(OnlineParam.ReportParam param) {
|
||||||
//下发预告警单 todo后期和前端调添加字段
|
String dept = this.baseMapper.selectById(param.getId()).getDeptId();
|
||||||
warningLeafletService.createLeaflet(ProblemTypeEnum.ONLINE.getName(), "",IdUtil.fastSimpleUUID(), param.getId(), ProblemTypeEnum.ONLINE.getCode(),param.getType(),param.getIssueDetail(),"");
|
//下发预告警单
|
||||||
|
warningLeafletService.createLeaflet(ProblemTypeEnum.ONLINE.getName(), dept,IdUtil.fastSimpleUUID(), param.getId(), ProblemTypeEnum.ONLINE.getCode(),param.getType(),param.getIssueDetail(),"");
|
||||||
//更新supervision_line_warning表字段信
|
//更新supervision_line_warning表字段信
|
||||||
LineWarning lineWarning = this.baseMapper.selectById(param.getId());
|
LineWarning lineWarning = this.baseMapper.selectById(param.getId());
|
||||||
if (lineWarning.getThresholdResource() == 0) {
|
if (lineWarning.getThresholdResource() == 0) {
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
package com.njcn.system.timer.tasks;
|
||||||
|
|
||||||
|
import com.njcn.supervision.api.LineWarningFeignClient;
|
||||||
|
import com.njcn.system.timer.TimerTaskRunner;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author xy
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class LineWarningTaskRunner implements TimerTaskRunner {
|
||||||
|
|
||||||
|
private final LineWarningFeignClient lineWarningFeignClient;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void action(String date) {
|
||||||
|
lineWarningFeignClient.add();
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user