diff --git a/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/ReportMapper.java b/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/ReportMapper.java index 05a55920b..a54f75031 100644 --- a/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/ReportMapper.java +++ b/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/ReportMapper.java @@ -16,5 +16,10 @@ import java.util.List; */ @Mapper public interface ReportMapper { + List getBreakTimes(Page page, @Param("lineIds") List lineIds, @Param("startTime") String startTime, @Param("endTime") String endTime); + + List getUpTimes(Page page, @Param("lineIds") List lineIds, @Param("startTime") String startTime, @Param("endTime") String endTime); + + List getSagTimes(Page page, @Param("lineIds") List lineIds, @Param("startTime") String startTime, @Param("endTime") String endTime); } diff --git a/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/mapping/ReportMapper.xml b/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/mapping/ReportMapper.xml index a3848b735..d7762b42f 100644 --- a/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/mapping/ReportMapper.xml +++ b/pqs-event/event-boot/src/main/java/com/njcn/event/mapper/majornetwork/mapping/ReportMapper.xml @@ -7,7 +7,7 @@ rmed.measurement_point_id lineId, count(*) times FROM r_mp_event_detail rmed - left join sys_dict_data sdd on sdd.id = rmed.event_type and sdd.`Code` = 'Short_Interruptions' + left join sys_dict_data sdd on sdd.id = rmed.event_type WHERE rmed.measurement_point_id IN @@ -19,6 +19,49 @@ and date_format(rmed.start_time,'%y%m%d') <= date_format(#{endTime},'%y%m%d') + and sdd.`Code` = 'Short_Interruptions' + GROUP BY rmed.measurement_point_id + + + + + diff --git a/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/ReportServiceImpl.java b/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/ReportServiceImpl.java index 5762c8a0f..b02ac37f3 100644 --- a/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/ReportServiceImpl.java +++ b/pqs-event/event-boot/src/main/java/com/njcn/event/service/majornetwork/Impl/ReportServiceImpl.java @@ -493,16 +493,19 @@ public class ReportServiceImpl implements ReportService { */ @Override public Page getSagTimes(WaveTypeParam waveTypeParam) { - List result = new ArrayList<>(); + //List result = new ArrayList<>(); //获取暂降字典信息 - DictData dictdata = dicDataFeignClient.getDicDataByCode(DicDataEnum.VOLTAGE_DIP.getCode()).getData(); + //DictData dictdata = dicDataFeignClient.getDicDataByCode(DicDataEnum.VOLTAGE_DIP.getCode()).getData(); List deviceDTOList = generalDeviceInfoClient.getPracticalAllDeviceInfo(waveTypeParam).getData(); List lineIds = deviceDTOList.stream().flatMap(list -> list.getLineIndexes().stream()).collect(Collectors.toList()); if (CollectionUtil.isEmpty(lineIds)) { throw new BusinessException(DeviceResponseEnum.DEPT_LINE_EMPTY); } - Page pageInfo = eventDetailService.page(new Page<>(waveTypeParam.getPageNum(), waveTypeParam.getPageSize()), new LambdaQueryWrapper() + + List detailVO = reportMapper.getSagTimes(new Page<>(waveTypeParam.getPageNum(), waveTypeParam.getPageSize()),lineIds,waveTypeParam.getSearchBeginTime(),waveTypeParam.getSearchEndTime()); + + /*Page pageInfo = eventDetailService.page(new Page<>(waveTypeParam.getPageNum(), waveTypeParam.getPageSize()), new LambdaQueryWrapper() .in(RmpEventDetailPO::getMeasurementPointId, lineIds) .ge(StringUtils.isNotBlank(waveTypeParam.getSearchBeginTime()), RmpEventDetailPO::getStartTime,DateUtil.beginOfDay(DateUtil.parse(waveTypeParam.getSearchBeginTime()))) .le(StringUtils.isNotBlank(waveTypeParam.getSearchEndTime()), RmpEventDetailPO::getStartTime, DateUtil.endOfDay(DateUtil.parse(waveTypeParam.getSearchEndTime()))) @@ -525,10 +528,14 @@ public class ReportServiceImpl implements ReportService { BeanUtils.copyProperties(eventDetail, vo); result.add(vo); idlist.add(eventDetail.getLineId()); + }*/ + ArrayList idlist = new ArrayList<>(); + for (DetailVO vo : detailVO) { + idlist.add(vo.getLineId()); } HttpResult> AreaInfo = lineFeignClient.getBaseLineAreaInfo(idlist); List data = AreaInfo.getData(); - for (DetailVO detailVO : result) { + /*for (DetailVO detailVO : result) { for (AreaLineInfoVO vo : data) { if (vo.getLineId().equals(detailVO.getLineId())) { BeanUtils.copyProperties(vo, detailVO); @@ -539,9 +546,16 @@ public class ReportServiceImpl implements ReportService { detailVO.setTimes(countMap.get(s)); } } + }*/ + for (DetailVO v : detailVO) { + for (AreaLineInfoVO vo : data) { + if (vo.getLineId().equals(v.getLineId())) { + BeanUtils.copyProperties(vo, v); + } + } } - Page page = BeanUtil.copyProperties(pageInfo,Page.class); - page.setRecords(result); + Page page = BeanUtil.copyProperties(detailVO,Page.class); + page.setRecords(detailVO); return page; @@ -555,16 +569,19 @@ public class ReportServiceImpl implements ReportService { */ @Override public Page getUpTimes(WaveTypeParam waveTypeParam) { - List result = new ArrayList<>(); + //List result = new ArrayList<>(); //获取暂升字典信息 - DictData dictdata = dicDataFeignClient.getDicDataByCode(DicDataEnum.VOLTAGE_RISE.getCode()).getData(); + //DictData dictdata = dicDataFeignClient.getDicDataByCode(DicDataEnum.VOLTAGE_RISE.getCode()).getData(); List deviceDTOList = generalDeviceInfoClient.getPracticalRunDeviceInfo(waveTypeParam).getData(); List lineIds = deviceDTOList.stream().flatMap(list -> list.getLineIndexes().stream()).collect(Collectors.toList()); if (CollectionUtil.isEmpty(lineIds)) { throw new BusinessException(DeviceResponseEnum.DEPT_LINE_EMPTY); } - Page pageInfo = eventDetailService.page( + + List detailVO = reportMapper.getUpTimes(new Page<>(waveTypeParam.getPageNum(), waveTypeParam.getPageSize()),lineIds,waveTypeParam.getSearchBeginTime(),waveTypeParam.getSearchEndTime()); + + /*Page pageInfo = eventDetailService.page( new Page<>(waveTypeParam.getPageNum(), waveTypeParam.getPageSize()), new LambdaQueryWrapper() .in(RmpEventDetailPO::getMeasurementPointId, lineIds) @@ -590,10 +607,16 @@ public class ReportServiceImpl implements ReportService { BeanUtils.copyProperties(eventDetail, vo); result.add(vo); idlist.add(eventDetail.getLineId()); + }*/ + + //id集合 + ArrayList idlist = new ArrayList<>(); + for (DetailVO vo : detailVO) { + idlist.add(vo.getLineId()); } HttpResult> AreaInfo = lineFeignClient.getBaseLineAreaInfo(idlist); List data = AreaInfo.getData(); - for (DetailVO detailVO : result) { + /*for (DetailVO detailVO : result) { for (AreaLineInfoVO vo : data) { if (vo.getLineId().equals(detailVO.getLineId())) { BeanUtils.copyProperties(vo, detailVO); @@ -604,9 +627,16 @@ public class ReportServiceImpl implements ReportService { detailVO.setTimes(countMap.get(s)); } } + }*/ + for (DetailVO v : detailVO) { + for (AreaLineInfoVO vo : data) { + if (vo.getLineId().equals(v.getLineId())) { + BeanUtils.copyProperties(vo, v); + } + } } - Page page = BeanUtil.copyProperties(pageInfo,Page.class); - page.setRecords(result); + Page page = BeanUtil.copyProperties(detailVO,Page.class); + page.setRecords(detailVO); return page; @@ -620,10 +650,10 @@ public class ReportServiceImpl implements ReportService { */ @Override public Page getBreakTimes(WaveTypeParam waveTypeParam) { - List result = new ArrayList<>(); + //List result = new ArrayList<>(); //获取中断字典信息 - DictData dictdata = dicDataFeignClient.getDicDataByCode(DicDataEnum.SHORT_INTERRUPTIONS.getCode()).getData(); + //DictData dictdata = dicDataFeignClient.getDicDataByCode(DicDataEnum.SHORT_INTERRUPTIONS.getCode()).getData(); List deviceDTOList = generalDeviceInfoClient.getPracticalAllDeviceInfo(waveTypeParam).getData(); List lineIds = deviceDTOList.stream().flatMap(list -> list.getLineIndexes().stream()).collect(Collectors.toList());