代码冲突补充

This commit is contained in:
hzj
2025-03-03 08:53:31 +08:00
parent 15716878cc
commit 09f16f8dcb
4 changed files with 65 additions and 2 deletions

View File

@@ -1,5 +1,6 @@
package com.njcn.dataProcess.service; package com.njcn.dataProcess.service;
import com.njcn.dataProcess.dto.DataHarmrateVDTO;
import com.njcn.dataProcess.param.LineCountEvaluateParam; import com.njcn.dataProcess.param.LineCountEvaluateParam;
import com.njcn.dataProcess.pojo.dto.DataHarmDto; import com.njcn.dataProcess.pojo.dto.DataHarmDto;
@@ -8,7 +9,8 @@ import java.util.List;
/** /**
* @author xy * @author xy
*/ */
public interface IDataHarmRateV { public interface
IDataHarmRateV {
/** /**
* 获取原始数据 * 获取原始数据
@@ -16,4 +18,6 @@ public interface IDataHarmRateV {
* @return * @return
*/ */
List<DataHarmDto> getRawData(LineCountEvaluateParam lineParam); List<DataHarmDto> getRawData(LineCountEvaluateParam lineParam);
void batchInsertion(List<DataHarmrateVDTO> dataHarmrateVDTOList);
} }

View File

@@ -24,7 +24,7 @@ public class LnDataDealServiceImpl implements LnDataDealService {
private IDataHarmphasicV dataHarmphasicVInsert; private IDataHarmphasicV dataHarmphasicVInsert;
@InsertBean @InsertBean
private IDataHarmrateV dataHarmrateVInsert; private IDataHarmRateV dataHarmrateVInsert;
@InsertBean @InsertBean
private IDataHarmpowerP dataHarmpowerPService; private IDataHarmpowerP dataHarmpowerPService;
@InsertBean @InsertBean

View File

@@ -3,13 +3,16 @@ package com.njcn.dataProcess.service.impl.influxdb;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import com.njcn.common.utils.HarmonicTimesUtil; import com.njcn.common.utils.HarmonicTimesUtil;
import com.njcn.dataProcess.dao.imapper.DataHarmRateVMapper; import com.njcn.dataProcess.dao.imapper.DataHarmRateVMapper;
import com.njcn.dataProcess.dto.DataHarmrateVDTO;
import com.njcn.dataProcess.param.LineCountEvaluateParam; import com.njcn.dataProcess.param.LineCountEvaluateParam;
import com.njcn.dataProcess.po.influx.DataHarmrateV; import com.njcn.dataProcess.po.influx.DataHarmrateV;
import com.njcn.dataProcess.pojo.dto.DataHarmDto; import com.njcn.dataProcess.pojo.dto.DataHarmDto;
import com.njcn.dataProcess.service.IDataHarmRateV; import com.njcn.dataProcess.service.IDataHarmRateV;
import com.njcn.dataProcess.util.BeanFeildUtils;
import com.njcn.influx.constant.InfluxDbSqlConstant; import com.njcn.influx.constant.InfluxDbSqlConstant;
import com.njcn.influx.query.InfluxQueryWrapper; import com.njcn.influx.query.InfluxQueryWrapper;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -95,4 +98,25 @@ public class InfluxdbDataHarmRateVImpl implements IDataHarmRateV {
return result; return result;
} }
@Override
public void batchInsertion(List<DataHarmrateVDTO> dataHarmrateVDTOList) {
int totalCount = dataHarmrateVDTOList.size();
if(totalCount<=0){
return;
}
List<DataHarmrateV> collect = dataHarmrateVDTOList.stream().flatMap(temp -> DataHarmrateV.relationToInfluxDB(temp).stream()).collect(Collectors.toList());
int minSize = Math.min(1200000, collect.size());
List<List<DataHarmrateV>> partition = ListUtils.partition(collect, minSize);
for (List<DataHarmrateV> dataHarmrateVList : partition) {
List<DataHarmrateV> sublistAsOriginalListType = new ArrayList<>(dataHarmrateVList);
dataHarmRateVMapper.insertBatch(sublistAsOriginalListType);
}
}
} }

View File

@@ -1,15 +1,23 @@
package com.njcn.dataProcess.service.impl.relation; package com.njcn.dataProcess.service.impl.relation;
import com.njcn.dataProcess.dao.relation.mapper.DataHarmrateVRelationMapper;
import com.njcn.dataProcess.dao.relation.mapper.DataIRelationMapper; import com.njcn.dataProcess.dao.relation.mapper.DataIRelationMapper;
import com.njcn.dataProcess.dto.DataHarmrateVDTO;
import com.njcn.dataProcess.param.LineCountEvaluateParam; import com.njcn.dataProcess.param.LineCountEvaluateParam;
import com.njcn.dataProcess.po.relation.DataHarmrateV;
import com.njcn.dataProcess.pojo.dto.DataHarmDto; import com.njcn.dataProcess.pojo.dto.DataHarmDto;
import com.njcn.dataProcess.service.IDataHarmRateV; import com.njcn.dataProcess.service.IDataHarmRateV;
import com.njcn.dataProcess.util.BeanFeildUtils;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.ListUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import java.util.stream.Collectors;
/** /**
* @author xy * @author xy
@@ -20,9 +28,36 @@ public class RelationDataHarmRateVImpl implements IDataHarmRateV {
@Resource @Resource
private DataIRelationMapper dataIRelationMapper; private DataIRelationMapper dataIRelationMapper;
private final DataHarmrateVRelationMapper dataHarmrateVRelationMapper;
@Override @Override
public List<DataHarmDto> getRawData(LineCountEvaluateParam lineParam) { public List<DataHarmDto> getRawData(LineCountEvaluateParam lineParam) {
return Collections.emptyList(); return Collections.emptyList();
} }
@Override
public void batchInsertion(List<DataHarmrateVDTO> dataHarmrateVDTOList) {
int totalCount = dataHarmrateVDTOList.size();
int minSize = Math.min(120, totalCount);
if(totalCount<=0){
return;
}
List<DataHarmrateV> collect = dataHarmrateVDTOList.stream().map(temp -> {
DataHarmrateV dataHarmrateV = new DataHarmrateV();
BeanUtils.copyProperties(temp, dataHarmrateV, BeanFeildUtils.getNullPropertyNames(temp));
return dataHarmrateV;
}).collect(Collectors.toList());
collect = collect.stream().collect(Collectors.toMap(
temp -> temp.getTimeid() + temp.getLineid() + temp.getPhasicType(),
temp -> temp,
(exist, replace) -> exist
)).values().stream().collect(Collectors.toList());
List<List<DataHarmrateV>> partition = ListUtils.partition(collect, minSize);
for (List<DataHarmrateV> dataHarmphasicVList : partition) {
dataHarmrateVRelationMapper.insertBatchSomeColumn(dataHarmphasicVList);
}
}
} }