From dbdd68be8f36e10aa0dadf90d72e0512be7882e8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=9B=A8=E6=9C=A8c?= <857448963@qq.com> Date: Tue, 7 Mar 2023 10:51:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=B0=E8=B4=A6bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pq/mapper/TerminalMaintainMapper.java | 14 --- .../impl/TerminalMaintainServiceImpl.java | 89 +++++-------------- 2 files changed, 22 insertions(+), 81 deletions(-) diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/TerminalMaintainMapper.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/TerminalMaintainMapper.java index a18a19e48..e392433c0 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/TerminalMaintainMapper.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/mapper/TerminalMaintainMapper.java @@ -1,6 +1,5 @@ package com.njcn.device.pq.mapper; -import com.njcn.device.pq.pojo.param.TerminalMainQueryParam; import com.njcn.device.pq.pojo.vo.TerminalMaintainVO; import org.apache.ibatis.annotations.Param; @@ -51,17 +50,6 @@ public interface TerminalMaintainMapper { List getPqLineGdAndSubList(@Param("ids") List ids); - /** - * - * @author cdf - * @date 2022/9/27 - */ - /** - * 或取装置及关联信息 - * @author cdf - * @date 2022/5/11 - */ - List getTerminalDevInfoClone(@Param("terminalMainQueryParam") TerminalMainQueryParam terminalMainQueryParam, @Param("devIds") List devIds); /** @@ -86,6 +74,4 @@ public interface TerminalMaintainMapper { List getFlowStrategyList(@Param("ids") List ids); - - } diff --git a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalMaintainServiceImpl.java b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalMaintainServiceImpl.java index 3b706897b..bc7f62385 100644 --- a/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalMaintainServiceImpl.java +++ b/pqs-device/pq-device/pq-device-boot/src/main/java/com/njcn/device/pq/service/impl/TerminalMaintainServiceImpl.java @@ -1,15 +1,10 @@ package com.njcn.device.pq.service.impl; -import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollectionUtil; -import com.njcn.common.pojo.dto.SimpleDTO; import com.njcn.common.pojo.enums.response.CommonResponseEnum; import com.njcn.common.pojo.exception.BusinessException; import com.njcn.device.pq.enums.DeviceResponseEnum; import com.njcn.device.pq.mapper.TerminalMaintainMapper; -import com.njcn.device.pq.pojo.dto.GeneralDeviceDTO; -import com.njcn.device.pq.pojo.dto.InfluxBaseDTO; -import com.njcn.device.pq.pojo.param.DeviceInfoParam; import com.njcn.device.pq.pojo.param.TerminalMainQueryParam; import com.njcn.device.pq.pojo.param.TerminalParam; import com.njcn.device.pq.pojo.po.DevMeal; @@ -20,16 +15,12 @@ import com.njcn.device.pq.service.IDevMealService; import com.njcn.device.pq.service.IDevStrategyService; import com.njcn.device.pq.service.IDeviceService; import com.njcn.device.pq.service.TerminalMaintainService; -import com.njcn.system.pojo.enums.StatisticsEnum; -import com.njcn.user.api.DeptFeignClient; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; -import org.springframework.util.CollectionUtils; import java.util.ArrayList; import java.util.List; -import java.util.Objects; import java.util.stream.Collectors; /** @@ -51,72 +42,36 @@ public class TerminalMaintainServiceImpl implements TerminalMaintainService { private final IDevStrategyService iDevStrategyService; - private final GeneralDeviceService generalDeviceService; - - private final DeptFeignClient deptFeignClient; - @Override public List getTerminalMainList(TerminalMainQueryParam terminalMainQueryParam) { - SimpleDTO simpleDTO = new SimpleDTO(); - simpleDTO.setCode(StatisticsEnum.POWER_NETWORK.getCode()); - - DeviceInfoParam deviceInfoParam = new DeviceInfoParam(); - deviceInfoParam.setStatisticalType(simpleDTO); - deviceInfoParam.setDeptIndex(deptFeignClient.getRootDept().getData().getId()); - deviceInfoParam.setPowerFlag(2); - deviceInfoParam.setMonitorFlag(2); - - List resList = new ArrayList<>(); - - List generalDeviceDTOList = generalDeviceService.getDeviceInfo(deviceInfoParam, Objects.isNull(terminalMainQueryParam.getRunFlag())?null: CollUtil.newArrayList(terminalMainQueryParam.getRunFlag()), CollUtil.newArrayList(1)); - if(CollectionUtil.isNotEmpty(generalDeviceDTOList)){ - - for(GeneralDeviceDTO generalDeviceDTO:generalDeviceDTOList){ - List devIds = generalDeviceDTO.getDeviceIndexes(); - if (CollectionUtils.isEmpty(devIds)) { - continue; - } - - TerminalMaintainVO terminalMaintainVO = new TerminalMaintainVO(); - terminalMaintainVO.setName(generalDeviceDTO.getName()); - terminalMaintainVO.setId(generalDeviceDTO.getIndex()); - terminalMaintainVO.setLevel(1); - //根据监测点查询数据完整性 - List integrityData = getCondition(devIds, "",""); - - List devList = terminalMaintainMapper.getTerminalDevInfoClone(terminalMainQueryParam,devIds); - List subList = terminalMaintainMapper.getPqLineGdAndSubList(generalDeviceDTO.getSubIndexes()); - List gdList = terminalMaintainMapper.getPqLineGdAndSubList(generalDeviceDTO.getGdIndexes()); - - dealTerminalData(subList,devList); - dealTerminalData(gdList,subList); - terminalMaintainVO.setChildren(gdList); - resList.add(terminalMaintainVO); - } + List devList = terminalMaintainMapper.getTerminalDevInfo(); + if(CollectionUtil.isEmpty(devList)){ + throw new BusinessException(DeviceResponseEnum.DEVICE_EMPTY); } - return resList; + List subIndexes = devList.stream().map(TerminalMaintainVO::getPid).collect(Collectors.toList()); + List subList = terminalMaintainMapper.getPqLineGdAndSubList(subIndexes); + if(CollectionUtil.isEmpty(subList)){ + throw new BusinessException(DeviceResponseEnum.SUB_NO); + } + List gdIds = subList.stream().map(TerminalMaintainVO::getPid).collect(Collectors.toList()); + List gdList = terminalMaintainMapper.getPqLineGdAndSubList(gdIds); + if(CollectionUtil.isEmpty(gdList)){ + throw new BusinessException(DeviceResponseEnum.GD_NO); + } + List proIds = gdList.stream().map(TerminalMaintainVO::getPid).collect(Collectors.toList()); + List proList = terminalMaintainMapper.getPqLineProvList(proIds); + if(CollectionUtil.isEmpty(proList)){ + throw new BusinessException(DeviceResponseEnum.PROVINCE_EMPTY); + } + + List subListTem = subList.stream().peek(item->item.setChildren(getChildren(item.getId(),devList))).collect(Collectors.toList()); + List gdListTem = gdList.stream().peek(item->item.setChildren(getChildren(item.getId(),subListTem))).collect(Collectors.toList()); + return proList.stream().peek(item->item.setChildren(getChildren(item.getId(),gdListTem))).collect(Collectors.toList()); } - - - /** - * influxdb语句 - */ - List getCondition(List devIds,String startTime,String endTime){ - - - return null; - } - - - List dealTerminalData(List parent,List children){ - return parent.stream().peek(item->item.setChildren(getChildren(item.getId(),children))).collect(Collectors.toList()); - } - - @Override public List getManageList(List ids, Integer type) { if(type == 0){