终端台账数据同步
This commit is contained in:
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
|
||||
import com.njcn.device.biz.commApi.CommLineClient;
|
||||
import com.njcn.device.biz.pojo.dto.LineALLInfoDTO;
|
||||
import com.njcn.device.pq.api.DeptLineFeignClient;
|
||||
import com.njcn.harmonic.mapper.majornetwork.RMpPartHarmonicDetailDMapper;
|
||||
import com.njcn.harmonic.pojo.dto.RMpPartHarmonicDetailDTO;
|
||||
import com.njcn.harmonic.pojo.param.RMpPartHarmonicDetailQueryParam;
|
||||
@@ -21,6 +22,7 @@ import com.njcn.system.pojo.po.DictData;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
@@ -45,6 +47,7 @@ public class RMpPartHarmonicDetailDServiceImpl extends ServiceImpl<RMpPartHarmon
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
private final IRStatLimitRateDService irStatLimitRateDService;
|
||||
private final CommLineClient commLineClient;
|
||||
private final DeptLineFeignClient deptLineFeignClient;
|
||||
|
||||
@Override
|
||||
public List<RMpPartHarmonicDetailIconVO> getRMpPartHarmonicDetailIcon(StatisticsBizBaseParam param) {
|
||||
@@ -53,16 +56,22 @@ public class RMpPartHarmonicDetailDServiceImpl extends ServiceImpl<RMpPartHarmon
|
||||
|
||||
@Override
|
||||
public Page<RMpPartHarmonicDetailDTO> getRMpPartHarmonicDetail(RMpPartHarmonicDetailQueryParam param) {
|
||||
System.out.println(LocalDateTime.now());
|
||||
List<RStatLimitRateDPO> rStatLimitRateDPOs = irStatLimitRateDService.lambdaQuery().eq(RStatLimitRateDPO::getPhasicType,"T").between(RStatLimitRateDPO::getTime, param.getStartTime()+" 00:00:00", param.getEndTime()+" 23:59:59").list();
|
||||
|
||||
List<String> lineIdLists = deptLineFeignClient.getLineNodeByDeptId(param.getOrgNo()).getData();
|
||||
if (CollectionUtils.isEmpty(lineIdLists)){
|
||||
return new Page<RMpPartHarmonicDetailDTO>(param.getPageNum(),param.getPageSize());
|
||||
}
|
||||
|
||||
List<RStatLimitRateDPO> rStatLimitRateDPOs = irStatLimitRateDService.lambdaQuery()
|
||||
.in(RStatLimitRateDPO::getLineId,lineIdLists)
|
||||
.eq(RStatLimitRateDPO::getPhasicType,"T")
|
||||
.between(RStatLimitRateDPO::getTime, param.getStartTime()+" 00:00:00", param.getEndTime()+" 23:59:59").list();
|
||||
List<RMpPartHarmonicDetailDTO> rMpPartHarmonicDetailDTOS = new ArrayList<>();
|
||||
LocalDate date = LocalDate.parse(param.getStartTime());
|
||||
YearMonth yearMonth = YearMonth.from(date);
|
||||
int daysInMonth = yearMonth.lengthOfMonth();
|
||||
System.out.println(LocalDateTime.now());
|
||||
/*获取稳态统计指标*/
|
||||
List<DictData> steadyStatis = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.INDICATOR_TYPE.getCode()).getData();
|
||||
System.out.println(LocalDateTime.now());
|
||||
rStatLimitRateDPOs.stream().collect(Collectors.groupingBy(RStatLimitRateDPO::getLineId)).forEach((k, v) -> {
|
||||
// LineALLInfoDTO lineALLInfoDTO = tempMap.get(k);
|
||||
steadyStatis.forEach(dictData -> {
|
||||
@@ -89,16 +98,13 @@ public class RMpPartHarmonicDetailDServiceImpl extends ServiceImpl<RMpPartHarmon
|
||||
|
||||
});
|
||||
});
|
||||
System.out.println(LocalDateTime.now());
|
||||
List<RMpPartHarmonicDetailDTO> result = rMpPartHarmonicDetailDTOS.stream().
|
||||
filter(temp -> CollectionUtil.isEmpty(param.getHarmonicTypes()) ||param.getHarmonicTypes().contains(temp.getHarmonicType())).
|
||||
collect(Collectors.toList());
|
||||
System.out.println(LocalDateTime.now());
|
||||
|
||||
|
||||
//合并指标天数计算连续超标天数,及总超标天数
|
||||
Map<String, List<RMpPartHarmonicDetailDTO>> map = result.stream().collect(Collectors.groupingBy(RMpPartHarmonicDetailDTO::getMeasurementPointId));
|
||||
System.out.println(LocalDateTime.now());
|
||||
|
||||
List<RMpPartHarmonicDetailDTO> rMpPartHarmonicDetailDTOList = new ArrayList<>();
|
||||
//获取所有指标类型,如何前端为空则将所有子表类型塞入HarmonicTypes
|
||||
@@ -129,14 +135,12 @@ public class RMpPartHarmonicDetailDServiceImpl extends ServiceImpl<RMpPartHarmon
|
||||
}
|
||||
rMpPartHarmonicDetailDTOList.add(rMpPartHarmonicDetailDTO);
|
||||
});
|
||||
System.out.println(LocalDateTime.now());
|
||||
Page<RMpPartHarmonicDetailDTO> temp = new Page<>(param.getPageNum(),param.getPageSize());
|
||||
temp.setTotal(rMpPartHarmonicDetailDTOList.size());
|
||||
List<RMpPartHarmonicDetailDTO> collect1 = rMpPartHarmonicDetailDTOList.stream()
|
||||
.skip((param.getPageNum() - 1) * param.getPageSize()) // 跳过前面的数据项
|
||||
.limit(param.getPageSize()) // 取出指定数量的数据
|
||||
.collect(Collectors.toList());
|
||||
System.out.println(LocalDateTime.now());
|
||||
|
||||
//获取监测点详情
|
||||
List<String> lineIds = collect1.stream().map(RMpPartHarmonicDetailDTO::getMeasurementPointId).distinct().collect(Collectors.toList());
|
||||
|
||||
Reference in New Issue
Block a user