From 75f043dfa6660716364e66ee0b3cf99f44255686 Mon Sep 17 00:00:00 2001 From: DYL0109 <dn18191638832@163.com> Date: 星期三, 16 四月 2025 19:20:36 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/develop1.0' into dyl_dev --- zhitan-system/src/main/java/com/zhitan/energydata/service/impl/EnergyDataStatisticServiceImpl.java | 77 ++++++++++++++++---------------------- 1 files changed, 32 insertions(+), 45 deletions(-) diff --git a/zhitan-system/src/main/java/com/zhitan/energydata/service/impl/EnergyDataStatisticServiceImpl.java b/zhitan-system/src/main/java/com/zhitan/energydata/service/impl/EnergyDataStatisticServiceImpl.java index 8d4e7f1..5e4a716 100644 --- a/zhitan-system/src/main/java/com/zhitan/energydata/service/impl/EnergyDataStatisticServiceImpl.java +++ b/zhitan-system/src/main/java/com/zhitan/energydata/service/impl/EnergyDataStatisticServiceImpl.java @@ -27,7 +27,7 @@ import com.zhitan.home.domain.vo.HomeEnergyStatisticsVO; import com.zhitan.model.domain.EnergyIndex; import com.zhitan.model.domain.ModelNode; -import com.zhitan.model.domain.vo.ModelNodeIndexInfor; +import com.zhitan.model.domain.vo.ModelNodeIndexInfo; import com.zhitan.model.mapper.EnergyIndexMapper; import com.zhitan.model.mapper.ModelNodeMapper; import com.zhitan.model.service.IEnergyIndexService; @@ -37,10 +37,10 @@ import com.zhitan.peakvalley.domain.vo.peakvalley.*; import com.zhitan.peakvalley.mapper.PeakValleyMapper; import com.zhitan.realtimedata.domain.DataItem; +import lombok.AllArgsConstructor; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; @@ -52,37 +52,24 @@ import java.util.stream.Collectors; /** - * 鎭掗偊缁煎悎娌荤悊澶у睆鎺ュ彛瀹炵幇绫� + * 缁煎悎娌荤悊澶у睆鎺ュ彛瀹炵幇绫� */ @Service +@AllArgsConstructor public class EnergyDataStatisticServiceImpl implements IEnergyDataStatisticService { - @Autowired private ModelNodeMapper modelNodeMapper; - @Autowired private PeakValleyMapper electricityDataItemMapper; - @Autowired CostPriceRelevancyMapper costPriceRelevancyMapper; - - @Autowired CostElectricityInputMapper electricityInputMapper; - @Autowired private IDataItemService dataItemService; - - @Autowired private SysEnergyMapper sysEnergyMapper; - @Autowired private IModelNodeService modelNodeService; - @Autowired private IEnergyIndexService energyIndexService; - @Autowired private EnergyDataStatisticMapper statisticMapper; - @Autowired private EnergyIndexMapper energyIndexMapper; - - @Autowired private MeterImplementMapper meterImplementMapper; @Override @@ -157,9 +144,9 @@ Map<String, List<ElectricityDataItem>> electricityDataMap = new HashMap<>(); // 鏌ヨ鐐逛綅淇℃伅 - List<ModelNodeIndexInfor> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(dto.getModelCode(), dto.getNodeId()); + List<ModelNodeIndexInfo> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(dto.getModelCode(), dto.getNodeId()); if (CollectionUtils.isNotEmpty(nodeIndexInfoList)) { - Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfor::getIndexId).collect(Collectors.toSet()); + Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toSet()); List<ElectricityDataItem> dataItemList = electricityDataItemMapper.getDataStatistics(indexSet, startTime, endTime, timeType); electricityDataMap = dataItemList.stream() @@ -335,9 +322,9 @@ Map<String, List<ElectricityDataItem>> electricityDataMap = new HashMap<>(); // 鏌ヨ鐐逛綅淇℃伅 - List<ModelNodeIndexInfor> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(dto.getModelCode(), dto.getNodeId()); + List<ModelNodeIndexInfo> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(dto.getModelCode(), dto.getNodeId()); if (CollectionUtils.isNotEmpty(nodeIndexInfoList)) { - Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfor::getIndexId).collect(Collectors.toSet()); + Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toSet()); List<ElectricityDataItem> dataItemList = electricityDataItemMapper.getDataStatistics(indexSet, startTime, endTime, timeType); electricityDataMap = dataItemList.stream() @@ -537,9 +524,9 @@ Map<String, List<ElectricityDataItem>> electricityDataMap = new HashMap<>(); // 鏌ヨ鐐逛綅淇℃伅 - List<ModelNodeIndexInfor> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(dto.getModelCode(), dto.getNodeId()); + List<ModelNodeIndexInfo> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(dto.getModelCode(), dto.getNodeId()); if (CollectionUtils.isNotEmpty(nodeIndexInfoList)) { - Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfor::getIndexId).collect(Collectors.toSet()); + Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toSet()); List<ElectricityDataItem> dataItemList = electricityDataItemMapper.getDataStatistics(indexSet, startTime, endTime, timeType); electricityDataMap = dataItemList.stream() @@ -677,7 +664,7 @@ return energyDataList; } final List<String> nodeIds = modelNodeList.stream().map(ModelNode::getNodeId).collect(Collectors.toList()); - List<ModelNodeIndexInfor> nodeIndexInforList = modelNodeMapper.selectIndexByNodeIds(modelCode ,nodeIds); + List<ModelNodeIndexInfo> nodeIndexInforList = modelNodeMapper.selectIndexByNodeIds(modelCode ,nodeIds); final Map<String, String> nodeNameMap = new HashMap<>(); nodeIndexInforList.forEach(n->{ @@ -689,9 +676,9 @@ }); // 鎸夌収鐐逛綅杩涜鍒嗙粍 - Map<String, List<ModelNodeIndexInfor>> nodeIndexMap = nodeIndexInforList.stream().collect( - Collectors.groupingBy(ModelNodeIndexInfor::getNodeId)); - final List<String> eneryIdList = nodeIndexInforList.stream().map(ModelNodeIndexInfor::getEnergyId).distinct().collect(Collectors.toList()); + Map<String, List<ModelNodeIndexInfo>> nodeIndexMap = nodeIndexInforList.stream().collect( + Collectors.groupingBy(ModelNodeIndexInfo::getNodeId)); + final List<String> eneryIdList = nodeIndexInforList.stream().map(ModelNodeIndexInfo::getEnergyId).distinct().collect(Collectors.toList()); final LambdaQueryWrapper<SysEnergy> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(CollectionUtils.isNotEmpty(eneryIdList),SysEnergy::getEnersno,eneryIdList); final List<SysEnergy> sysEnergies = sysEnergyMapper.selectList(queryWrapper); @@ -706,7 +693,7 @@ indexIdEnergyIdMap.put(indexId,energyId); } }); - List<String> indexIds = nodeIndexInforList.stream().filter(l -> StringUtils.isNotEmpty(l.getIndexId())).map(ModelNodeIndexInfor::getIndexId).collect(Collectors.toList()); + List<String> indexIds = nodeIndexInforList.stream().filter(l -> StringUtils.isNotEmpty(l.getIndexId())).map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toList()); Date queryTime = new Date(); Date beginTime; Date endTime; @@ -736,7 +723,7 @@ Map<String,BigDecimal> resultMap = new HashMap<>(); nodeIndexMap.forEach((key, value) -> { // 鎵惧嚭indexIds - List<String> indexIdList = value.stream().map(ModelNodeIndexInfor::getIndexId).filter(Objects::nonNull).collect(Collectors.toList()); + List<String> indexIdList = value.stream().map(ModelNodeIndexInfo::getIndexId).filter(Objects::nonNull).collect(Collectors.toList()); if (null!=indexIdList &&!indexIdList.isEmpty()){ indexIdList.forEach(indexId -> { final List<DataItem> dataItems = dataItemMap.get(indexId); @@ -903,9 +890,9 @@ Map<String, List<ElectricityDataItem>> electricityDataMap = new HashMap<>(); // 鏌ヨ鐐逛綅淇℃伅 - List<ModelNodeIndexInfor> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(modelCode, nodeId); + List<ModelNodeIndexInfo> nodeIndexInfoList = modelNodeMapper.selectIndexByModelCodeAndNodeId(modelCode, nodeId); if (CollectionUtils.isNotEmpty(nodeIndexInfoList)) { - Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfor::getIndexId).collect(Collectors.toSet()); + Set<String> indexSet = nodeIndexInfoList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toSet()); List<ElectricityDataItem> dataItemList = electricityDataItemMapper.getDataStatistics(indexSet, startTime,endTime , timeType); electricityDataMap = dataItemList.stream() @@ -988,7 +975,7 @@ fixedNodeIds.add("dca20897-5977-40ae-a28a-88a6acdee335");//鍐朵笁 fixedNodeIds.add("4912c751-0611-4f4b-afce-0f58629512b7");//绮剧偧 fixedNodeIds.add("8eef471f-880c-4636-a428-620a4d2ccd5d");//鐭夸笟 - fixedNodeIds.add("6d6a0412-7c6d-4654-9cb3-0079655e23e5");//鎭掗偊鏂版潗鏂� + fixedNodeIds.add("6d6a0412-7c6d-4654-9cb3-0079655e23e5");//鏂版潗鏂� LambdaQueryWrapper<ModelNode> nodeLambdaQueryWrapper = new LambdaQueryWrapper<>(); nodeLambdaQueryWrapper.eq(ModelNode::getModelCode,modelCode); @@ -1002,14 +989,14 @@ Map<String,ModelNode> nodeMap=nodeList.stream().collect(Collectors.toMap(ModelNode::getNodeId,x->x)); - List<ModelNodeIndexInfor> indexList=statisticMapper.getModelNodeIndexIdByFixedNodeIds(modelCode,fixedNodeIds); + List<ModelNodeIndexInfo> indexList=statisticMapper.getModelNodeIndexIdByFixedNodeIds(modelCode,fixedNodeIds); // 鏍规嵁鍘傚尯鍒嗙粍 - Map<String, List<ModelNodeIndexInfor>> nodeIndexMap = indexList.stream().collect( - Collectors.groupingBy(ModelNodeIndexInfor::getNodeId)); + Map<String, List<ModelNodeIndexInfo>> nodeIndexMap = indexList.stream().collect( + Collectors.groupingBy(ModelNodeIndexInfo::getNodeId)); //鏌ヨ鎵�鏈夎兘婧愮被鍨� - final List<String> eneryIdList = indexList.stream().map(ModelNodeIndexInfor::getEnergyId).distinct().collect(Collectors.toList()); + final List<String> eneryIdList = indexList.stream().map(ModelNodeIndexInfo::getEnergyId).distinct().collect(Collectors.toList()); final LambdaQueryWrapper<SysEnergy> queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(CollectionUtils.isNotEmpty(eneryIdList),SysEnergy::getEnersno,eneryIdList); @@ -1022,7 +1009,7 @@ indexIdEnergyIdMap.put(indexId,energyId); } }); - List<String> indexIds = indexList.stream().filter(l -> StringUtils.isNotEmpty(l.getIndexId())).map(ModelNodeIndexInfor::getIndexId).collect(Collectors.toList()); + List<String> indexIds = indexList.stream().filter(l -> StringUtils.isNotEmpty(l.getIndexId())).map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toList()); // Date queryTime = new Date(); Date queryTime = new Date(); Date beginTime; @@ -1072,18 +1059,18 @@ } //node鍜宨ndex鍏宠仈闆嗗悎 - List<ModelNodeIndexInfor> value=nodeIndexMap.get(key); + List<ModelNodeIndexInfo> value=nodeIndexMap.get(key); List<HomeEnergyStatisticsVO> itemVo=new ArrayList<>(); //鏍规嵁鑳芥簮绫诲瀷鍒嗙粍 - Map<String, List<ModelNodeIndexInfor>> sysEnergyIds = value.stream().collect( - Collectors.groupingBy(ModelNodeIndexInfor::getEnergyId)); + Map<String, List<ModelNodeIndexInfo>> sysEnergyIds = value.stream().collect( + Collectors.groupingBy(ModelNodeIndexInfo::getEnergyId)); if (!sysEnergyIds.isEmpty()) { //閬嶅巻 - for (Map.Entry<String, List<ModelNodeIndexInfor>> entry : sysEnergyIds.entrySet()) { + for (Map.Entry<String, List<ModelNodeIndexInfo>> entry : sysEnergyIds.entrySet()) { String energyIndex = entry.getKey(); - List<ModelNodeIndexInfor> energyValue = entry.getValue(); + List<ModelNodeIndexInfo> energyValue = entry.getValue(); if (energyCoefficientMap.containsKey(energyIndex)) { SysEnergy sysEnergy = energyCoefficientMap.get(energyIndex); HomeEnergyStatisticsVO item = new HomeEnergyStatisticsVO(); @@ -1095,7 +1082,7 @@ BigDecimal totalConsumption = BigDecimal.ZERO; BigDecimal totalCount = BigDecimal.ZERO; //鍚堣鍊� - for (ModelNodeIndexInfor valueItem:entry.getValue()){ + for (ModelNodeIndexInfo valueItem:entry.getValue()){ List<DataItem> dataItems = dataItemMap.get(valueItem.getIndexId()); if (CollectionUtils.isNotEmpty(dataItems)) { BigDecimal sum = BigDecimal.valueOf(dataItems.stream() @@ -1171,8 +1158,8 @@ if (ObjectUtils.isEmpty(modelNode)) { return voList; } - List<ModelNodeIndexInfor> inforList = modelNodeService.getModelNodeIndexIdRelationInforByNodeId(modelNode.getNodeId()); - List<String> indexIds = inforList.stream().map(ModelNodeIndexInfor::getIndexId).collect(Collectors.toList()); + List<ModelNodeIndexInfo> inforList = modelNodeService.getModelNodeIndexIdRelationInforByNodeId(modelNode.getNodeId()); + List<String> indexIds = inforList.stream().map(ModelNodeIndexInfo::getIndexId).collect(Collectors.toList()); // 閫氳繃indexIds鎵綿ata_Item鏁版嵁 List<DataItem> itemList = dataItemService.getDataItemTimeRangeInforByIndexIds(beginTime, endTime, shixuTimeType, indexIds); // 鏌ヨ鐐逛綅璇︾粏淇℃伅 -- Gitblit v1.9.3