高级算法模块代码调整

This commit is contained in:
2023-08-17 08:43:48 +08:00
parent f77e7f48ab
commit 2f40ff1879
5 changed files with 184 additions and 22 deletions

View File

@@ -1,5 +1,6 @@
package com.njcn.advance.controller;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.netflix.ribbon.proxy.annotation.Http;
import com.njcn.advance.pojo.dto.BalanceInfo;
@@ -7,8 +8,10 @@ import com.njcn.advance.pojo.param.AdvanceBaseParam;
import com.njcn.advance.pojo.po.PqsRelevanceLog;
import com.njcn.advance.service.EventRelevantAnalysisService;
import com.njcn.common.pojo.annotation.OperateInfo;
import com.njcn.common.pojo.constant.OperateType;
import com.njcn.common.pojo.enums.common.LogEnum;
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.common.utils.HttpResultUtil;
import com.njcn.common.utils.PubUtils;
@@ -30,6 +33,7 @@ import java.io.DataInputStream;
import java.net.URLDecoder;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
/**
* pqs
@@ -102,6 +106,70 @@ public class EventRelevantAnalysisController extends BaseController {
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe);
}
/**
* 新增关联事件主列表
* @author cdf
* @date 2023/8/11
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/queryEventByTimeRange")
@ApiOperation("新增关联事件主列表")
public HttpResult<Page<AdvanceEventDetailVO>> queryEventByTimeRange(@RequestBody BaseParam baseParam){
String methodDescribe = getMethodDescribe("queryEventDetailByAssId");
Page<AdvanceEventDetailVO> page = eventRelevantAnalysisService.queryEventByTimeRange(baseParam);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, page, methodDescribe);
}
/**
* 把暂降事件添加到指定事件中去
* @author cdf
* @date 2023/8/16
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPLOAD)
@PostMapping("/updateEventToAss")
@ApiOperation("把暂降事件添加到指定事件中去")
public HttpResult<Page<AdvanceEventDetailVO>> updateEventToAss(@RequestBody Map<String,Object> map){
if(!map.containsKey("eventId") || !map.containsKey("assId")){
throw new BusinessException("参数异常");
}
String methodDescribe = getMethodDescribe("updateEventToAss");
List<String> eventIds = (List<String>) map.get("eventId");
if(CollectionUtil.isEmpty(eventIds)){
throw new BusinessException("暂降事件不可为空");
}
eventRelevantAnalysisService.updateEventToAss(eventIds, (String) map.get("assId"));
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
/**
* 删除指定关联事件中的暂降事件
* @author cdf
* @date 2023/8/16
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON, operateType = OperateType.UPLOAD)
@PostMapping("/delEventToAss")
@ApiOperation("删除指定关联事件中的暂降事件")
public HttpResult<Page<AdvanceEventDetailVO>> delEventToAss(@RequestBody List<String> eventId){
String methodDescribe = getMethodDescribe("delEventToAss");
eventRelevantAnalysisService.delEventToAss(eventId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, null, methodDescribe);
}
/**
* 获取指定事件中的暂降事件
* @author cdf
* @date 2023/8/16
*/
@OperateInfo(info = LogEnum.BUSINESS_COMMON)
@PostMapping("/queryEventList")
@ApiOperation("查询关联事件中的暂降事件")
public HttpResult<List<AdvanceEventDetailVO>> queryEventList(@RequestBody List<String> eventId){
String methodDescribe = getMethodDescribe("queryEventList");
List<AdvanceEventDetailVO> list = eventRelevantAnalysisService.queryEventList(eventId);
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, list, methodDescribe);
}
/**
* 操作记录查看
* @author cdf

View File

@@ -45,6 +45,15 @@ public interface EventRelevantAnalysisService extends IService<RmpEventDetailPO>
*/
Page<AdvanceEventDetailVO> queryEventDetailByAssId(String assId,Integer pageNum,Integer pageSize);
Page<AdvanceEventDetailVO> queryEventByTimeRange(BaseParam baseParam);
List<AdvanceEventDetailVO> queryEventList(List<String> eventId);
boolean updateEventToAss(List<String> eventId,String assId);
boolean delEventToAss(List<String> eventId);
/**
*
* @author cdf

View File

@@ -3,9 +3,11 @@ package com.njcn.advance.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.date.TimeInterval;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -281,28 +283,26 @@ public class EventRelevantAnalysisServiceImpl extends ServiceImpl<RmpEventAdvanc
}
@Override
public Page<AdvanceEventDetailVO> queryEventDetailByAssId(String assId,Integer pageNum,Integer pageSize) {
Page<AdvanceEventDetailVO> pageResult = new Page<>(pageNum,pageSize);
public Page<AdvanceEventDetailVO> queryEventDetailByAssId(String assId, Integer pageNum, Integer pageSize) {
Page<AdvanceEventDetailVO> pageResult = new Page<>(pageNum, pageSize);
LambdaQueryWrapper<RmpEventDetailPO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(RmpEventDetailPO::getEventassIndex,assId)
lambdaQueryWrapper.eq(RmpEventDetailPO::getEventassIndex, assId)
.orderByAsc(RmpEventDetailPO::getStartTime);
Page<RmpEventDetailPO> page = eventAdvanceMapper.selectPage(new Page<>(pageNum,pageSize),lambdaQueryWrapper);
Page<RmpEventDetailPO> page = eventAdvanceMapper.selectPage(new Page<>(pageNum, pageSize), lambdaQueryWrapper);
List<RmpEventDetailPO> pos = page.getRecords();
if(CollectionUtil.isEmpty(pos)){
if (CollectionUtil.isEmpty(pos)) {
return pageResult;
}
List<String> lineIds = pos.stream().map(RmpEventDetailPO::getMeasurementPointId).distinct().collect(Collectors.toList());
List<AreaLineInfoVO> lineAres = lineFeignClient.getBaseLineAreaInfo(lineIds).getData();
Map<String, AreaLineInfoVO> map = lineAres.stream().collect(Collectors.toMap(AreaLineInfoVO::getLineId,Function.identity()));
Map<String, AreaLineInfoVO> map = lineAres.stream().collect(Collectors.toMap(AreaLineInfoVO::getLineId, Function.identity()));
List<AdvanceEventDetailVO> advanceEventDetailVOList = BeanUtil.copyToList(pos,AdvanceEventDetailVO.class);
advanceEventDetailVOList = advanceEventDetailVOList.stream().peek(item->{
if(map.containsKey(item.getMeasurementPointId())){
List<AdvanceEventDetailVO> advanceEventDetailVOList = BeanUtil.copyToList(pos, AdvanceEventDetailVO.class);
advanceEventDetailVOList = advanceEventDetailVOList.stream().peek(item -> {
if (map.containsKey(item.getMeasurementPointId())) {
AreaLineInfoVO areaLineInfoVO = map.get(item.getMeasurementPointId());
item.setGdName(areaLineInfoVO.getGdName());
item.setSubName(areaLineInfoVO.getSubName());
@@ -315,6 +315,91 @@ public class EventRelevantAnalysisServiceImpl extends ServiceImpl<RmpEventAdvanc
return pageResult;
}
@Override
public Page<AdvanceEventDetailVO> queryEventByTimeRange(BaseParam baseParam) {
Page<AdvanceEventDetailVO> page = new Page<>(PageFactory.getPageNum(baseParam), PageFactory.getPageSize(baseParam));
PubUtils.checkDateTime(baseParam.getSearchBeginTime());
PubUtils.checkDateTime(baseParam.getSearchEndTime());
LambdaQueryWrapper<RmpEventDetailPO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.and(item -> item.eq(RmpEventDetailPO::getEventassIndex, "")
.or().isNull(RmpEventDetailPO::getEventassIndex)).between(RmpEventDetailPO::getStartTime, baseParam.getSearchBeginTime(), baseParam.getSearchEndTime());
Page<RmpEventDetailPO> poPage = eventAdvanceMapper.selectPage(new Page<>(PageFactory.getPageNum(baseParam), PageFactory.getPageSize(baseParam)), lambdaQueryWrapper);
List<RmpEventDetailPO> detailPOList = poPage.getRecords();
if (CollectionUtil.isEmpty(detailPOList)) {
return page;
}
List<String> lineIds = detailPOList.stream().map(RmpEventDetailPO::getMeasurementPointId).distinct().collect(Collectors.toList());
List<AreaLineInfoVO> lineAres = lineFeignClient.getBaseLineAreaInfo(lineIds).getData();
Map<String, AreaLineInfoVO> map = lineAres.stream().collect(Collectors.toMap(AreaLineInfoVO::getLineId, Function.identity()));
List<AdvanceEventDetailVO> aList = BeanUtil.copyToList(detailPOList, AdvanceEventDetailVO.class);
aList = aList.stream().peek(item -> {
if (map.containsKey(item.getMeasurementPointId())) {
AreaLineInfoVO areaLineInfoVO = map.get(item.getMeasurementPointId());
item.setGdName(areaLineInfoVO.getGdName());
item.setSubName(areaLineInfoVO.getSubName());
item.setLineName(areaLineInfoVO.getLineName());
item.setVoltageId(areaLineInfoVO.getVoltageScale());
}
}).collect(Collectors.toList());
page.setRecords(aList);
page.setTotal(poPage.getTotal());
return page;
}
@Override
public List<AdvanceEventDetailVO> queryEventList(List<String> eventId) {
LambdaQueryWrapper<RmpEventDetailPO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.in(RmpEventDetailPO::getEventId,eventId);
List<RmpEventDetailPO> rmpEventDetailPOList = eventAdvanceMapper.selectList(lambdaQueryWrapper);
if (CollectionUtil.isEmpty(rmpEventDetailPOList)) {
throw new BusinessException(AdvanceResponseEnum.EVENT_EMPTY);
}
List<String> tempLineIds = rmpEventDetailPOList.stream().map(RmpEventDetailPO::getLineId).distinct().collect(Collectors.toList());
List<AreaLineInfoVO> temLine = lineFeignClient.getBaseLineAreaInfo(tempLineIds).getData();
Map<String, AreaLineInfoVO> map = temLine.stream().collect(Collectors.toMap(AreaLineInfoVO::getLineId, Function.identity()));
List<AdvanceEventDetailVO> advanceEventDetailVOList = BeanUtil.copyToList(rmpEventDetailPOList, AdvanceEventDetailVO.class);
advanceEventDetailVOList = advanceEventDetailVOList.stream().peek(item -> {
if (map.containsKey(item.getLineId())) {
AreaLineInfoVO areaLineInfoVO = map.get(item.getLineId());
item.setGdName(areaLineInfoVO.getGdName());
item.setSubName(areaLineInfoVO.getSubName());
item.setNum(areaLineInfoVO.getNum());
item.setLineName(areaLineInfoVO.getLineName());
item.setVoltageId(areaLineInfoVO.getVoltageScale());
}
}).collect(Collectors.toList());
return advanceEventDetailVOList;
}
@Override
public boolean updateEventToAss(List<String> eventId, String assId) {
LambdaUpdateWrapper<RmpEventDetailPO> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.and(item -> item.eq(RmpEventDetailPO::getEventassIndex, "").or().isNotNull(RmpEventDetailPO::getEventassIndex))
.in(RmpEventDetailPO::getEventId, eventId);
RmpEventDetailPO rmpEventDetailPO = new RmpEventDetailPO();
rmpEventDetailPO.setEventassIndex(assId);
eventAdvanceMapper.update(rmpEventDetailPO, lambdaUpdateWrapper);
return true;
}
@Override
public boolean delEventToAss(List<String> eventId) {
LambdaUpdateWrapper<RmpEventDetailPO> lambdaUpdateWrapper = new LambdaUpdateWrapper<>();
lambdaUpdateWrapper.in(RmpEventDetailPO::getEventId, eventId);
RmpEventDetailPO rmpEventDetailPO = new RmpEventDetailPO();
rmpEventDetailPO.setEventassIndex("");
eventAdvanceMapper.update(rmpEventDetailPO, lambdaUpdateWrapper);
return true;
}
@Override
public Page<PqsRelevanceLog> queryRelevantLogPage(BaseParam baseParam) {
LambdaQueryWrapper<PqsRelevanceLog> logLambdaQueryWrapper = new LambdaQueryWrapper<>();

View File

@@ -29,7 +29,7 @@ import java.util.List;
@RequestMapping("/commTerminal")
@RequiredArgsConstructor
@Slf4j
@Api(tags = "通用台账-所有子孙部门以及监测点")
@Api(tags = "通用台账查询")
public class CommTerminalController extends BaseController {
private final IMonitorService monitorService;

View File

@@ -30,7 +30,7 @@ import java.util.List;
@RequestMapping("commTerminal")
@RequiredArgsConstructor
@Slf4j
@Api(tags = "通用台账-所有子孙部门以及监测点")
@Api(tags = "通用台账查询")
public class CommTerminalController extends BaseController {
private final CommTerminalService commTerminalService;
@@ -64,7 +64,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("getDeptChildrenByParent");
List<DeptGetBase> result = commTerminalService.getDeptChildrenByParent(deptGetLineParam);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@@ -80,7 +80,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("deptGetLine");
List<DeptGetChildrenMoreDTO> result = commTerminalService.deptGetLine(deptGetLineParam);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@@ -99,7 +99,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("deptSubStation");
List<DeptGetSubStationDTO> result = commTerminalService.deptSubStation(deptGetLineParam);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@@ -115,7 +115,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("deptBusBar");
List<DeptGetBusBarDTO> result = commTerminalService.deptBusBar(deptGetLineParam);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@@ -133,7 +133,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("deptGetDevice");
List<DeptGetDeviceDTO> result = commTerminalService.deptGetDevice(deptGetLineParam,0);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@@ -149,7 +149,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("deptGetDeviceAndMonitor");
List<DeptGetDeviceDTO> result = commTerminalService.deptGetDevice(deptGetLineParam,1);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@@ -165,7 +165,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("substationGetLine");
LineDevGetBandDTO result = commTerminalService.substationGetLine(substationId);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}
@@ -182,7 +182,7 @@ public class CommTerminalController extends BaseController {
TimeInterval timer = new TimeInterval();
String methodDescribe = getMethodDescribe("busBarGetLine");
LineDevGetBandDTO result = commTerminalService.substationGetLine(busBarId);
log.info("运行时长" + timer.intervalRestart());
log.info("运行时长" + timer.intervalSecond());
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
}