台账bug修改

This commit is contained in:
2023-03-07 10:51:59 +08:00
parent 840ee7b8ee
commit dbdd68be8f
2 changed files with 22 additions and 81 deletions

View File

@@ -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<TerminalMaintainVO> getPqLineGdAndSubList(@Param("ids") List<String> ids);
/**
*
* @author cdf
* @date 2022/9/27
*/
/**
* 或取装置及关联信息
* @author cdf
* @date 2022/5/11
*/
List<TerminalMaintainVO> getTerminalDevInfoClone(@Param("terminalMainQueryParam") TerminalMainQueryParam terminalMainQueryParam, @Param("devIds") List<String> devIds);
/**
@@ -86,6 +74,4 @@ public interface TerminalMaintainMapper {
List<TerminalMaintainVO> getFlowStrategyList(@Param("ids") List<String> ids);
}

View File

@@ -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,71 +42,35 @@ public class TerminalMaintainServiceImpl implements TerminalMaintainService {
private final IDevStrategyService iDevStrategyService;
private final GeneralDeviceService generalDeviceService;
private final DeptFeignClient deptFeignClient;
@Override
public List<TerminalMaintainVO> 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<TerminalMaintainVO> resList = new ArrayList<>();
List<GeneralDeviceDTO> 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<String> devIds = generalDeviceDTO.getDeviceIndexes();
if (CollectionUtils.isEmpty(devIds)) {
continue;
List<TerminalMaintainVO> devList = terminalMaintainMapper.getTerminalDevInfo();
if(CollectionUtil.isEmpty(devList)){
throw new BusinessException(DeviceResponseEnum.DEVICE_EMPTY);
}
List<String> subIndexes = devList.stream().map(TerminalMaintainVO::getPid).collect(Collectors.toList());
List<TerminalMaintainVO> subList = terminalMaintainMapper.getPqLineGdAndSubList(subIndexes);
if(CollectionUtil.isEmpty(subList)){
throw new BusinessException(DeviceResponseEnum.SUB_NO);
}
List<String> gdIds = subList.stream().map(TerminalMaintainVO::getPid).collect(Collectors.toList());
List<TerminalMaintainVO> gdList = terminalMaintainMapper.getPqLineGdAndSubList(gdIds);
if(CollectionUtil.isEmpty(gdList)){
throw new BusinessException(DeviceResponseEnum.GD_NO);
}
List<String> proIds = gdList.stream().map(TerminalMaintainVO::getPid).collect(Collectors.toList());
List<TerminalMaintainVO> proList = terminalMaintainMapper.getPqLineProvList(proIds);
if(CollectionUtil.isEmpty(proList)){
throw new BusinessException(DeviceResponseEnum.PROVINCE_EMPTY);
}
TerminalMaintainVO terminalMaintainVO = new TerminalMaintainVO();
terminalMaintainVO.setName(generalDeviceDTO.getName());
terminalMaintainVO.setId(generalDeviceDTO.getIndex());
terminalMaintainVO.setLevel(1);
//根据监测点查询数据完整性
List<InfluxBaseDTO> integrityData = getCondition(devIds, "","");
List<TerminalMaintainVO> devList = terminalMaintainMapper.getTerminalDevInfoClone(terminalMainQueryParam,devIds);
List<TerminalMaintainVO> subList = terminalMaintainMapper.getPqLineGdAndSubList(generalDeviceDTO.getSubIndexes());
List<TerminalMaintainVO> gdList = terminalMaintainMapper.getPqLineGdAndSubList(generalDeviceDTO.getGdIndexes());
dealTerminalData(subList,devList);
dealTerminalData(gdList,subList);
terminalMaintainVO.setChildren(gdList);
resList.add(terminalMaintainVO);
List<TerminalMaintainVO> subListTem = subList.stream().peek(item->item.setChildren(getChildren(item.getId(),devList))).collect(Collectors.toList());
List<TerminalMaintainVO> 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());
}
}
return resList;
}
/**
* influxdb语句
*/
List<InfluxBaseDTO> getCondition(List<String> devIds,String startTime,String endTime){
return null;
}
List<TerminalMaintainVO> dealTerminalData(List<TerminalMaintainVO> parent,List<TerminalMaintainVO> children){
return parent.stream().peek(item->item.setChildren(getChildren(item.getId(),children))).collect(Collectors.toList());
}
@Override
public List<TerminalMaintainVO> getManageList(List<String> ids, Integer type) {