diff --git a/migration-influxdb/migration-influxdb-api/src/main/java/com/njcn/po/mysql/DevTimeDto.java b/migration-influxdb/migration-influxdb-api/src/main/java/com/njcn/po/mysql/DevTimeDto.java new file mode 100644 index 0000000..0e5d39b --- /dev/null +++ b/migration-influxdb/migration-influxdb-api/src/main/java/com/njcn/po/mysql/DevTimeDto.java @@ -0,0 +1,20 @@ +package com.njcn.po.mysql; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.Data; + +import java.io.Serializable; + +@Data +public class DevTimeDto implements Serializable { + + @ExcelProperty(value = "终端id",index = 0) + @ColumnWidth(30) + private String devId; + + @ExcelProperty(value = "时间",index = 1) + @ColumnWidth(30) + private String timeData; + +} diff --git a/migration-influxdb/migration-influxdb-api/src/main/java/com/njcn/po/mysql/LineTimeDto.java b/migration-influxdb/migration-influxdb-api/src/main/java/com/njcn/po/mysql/LineTimeDto.java new file mode 100644 index 0000000..a282f41 --- /dev/null +++ b/migration-influxdb/migration-influxdb-api/src/main/java/com/njcn/po/mysql/LineTimeDto.java @@ -0,0 +1,21 @@ +package com.njcn.po.mysql; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import lombok.Data; + +import java.io.Serializable; +import java.time.LocalDateTime; + +@Data +public class LineTimeDto implements Serializable { + + @ExcelProperty(value = "监测点id",index = 0) + @ColumnWidth(30) + private String lineId; + + @ExcelProperty(value = "时间",index = 1) + @ColumnWidth(30) + private String timeData; + +} diff --git a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/mapper/RmpEventDetailMapper.java b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/mapper/RmpEventDetailMapper.java index e362fee..b59fa1e 100644 --- a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/mapper/RmpEventDetailMapper.java +++ b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/mapper/RmpEventDetailMapper.java @@ -1,8 +1,12 @@ package com.njcn.migration.read.mapper; import com.njcn.db.mapper.BatchBaseMapper; +import com.njcn.po.mysql.DevTimeDto; +import com.njcn.po.mysql.LineTimeDto; import com.njcn.po.mysql.RmpEventDetail; +import java.util.List; + /** * pqs * @@ -12,6 +16,16 @@ import com.njcn.po.mysql.RmpEventDetail; public interface RmpEventDetailMapper extends BatchBaseMapper { + /** + * 查询最新监测点时间 + * @return + */ + List getLineTime(); + /** + * 查询最新装置时间 + * @return + */ + List getDevTime(); } diff --git a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/mapper/mapping/RmpEventDetailMapper.xml b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/mapper/mapping/RmpEventDetailMapper.xml new file mode 100644 index 0000000..690234d --- /dev/null +++ b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/mapper/mapping/RmpEventDetailMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + diff --git a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/util/TimeUtil.java b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/util/TimeUtil.java index 2fd6163..a0bdddf 100644 --- a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/util/TimeUtil.java +++ b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/util/TimeUtil.java @@ -8,11 +8,11 @@ import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.write.metadata.WriteSheet; import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; -import com.njcn.migration.read.service.IDataV; -import com.njcn.migration.read.service.IPqsCommunicate; -import com.njcn.param.LineCountEvaluateParam; +import com.njcn.migration.read.mapper.RmpEventDetailMapper; import com.njcn.po.influx.DataV; import com.njcn.po.influx.PqsCommunicate; +import com.njcn.po.mysql.DevTimeDto; +import com.njcn.po.mysql.LineTimeDto; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @@ -31,9 +31,7 @@ import java.util.stream.Collectors; @Component public class TimeUtil { @Autowired - private IDataV dataV; - @Autowired - private IPqsCommunicate communicate; + private RmpEventDetailMapper detailMapper; /** * key:监测点id value:当前上次结束时间 @@ -82,18 +80,18 @@ public class TimeUtil { @PostConstruct public void init() throws IOException { - File file = new File("/usr/local/jar/sj.xlsx"); - List excelDataV = EasyExcel.read(file) - .head(DataV.class) + File file = new File("D:\\AJava\\sj.xlsx"); + List excelDataV = EasyExcel.read(file) + .head(LineTimeDto.class) .sheet(0).doReadSync(); - List datav = dataV.listDataVDesc(new LineCountEvaluateParam()); + List datav = detailMapper.getLineTime(); if (CollUtil.isNotEmpty(excelDataV)) { //获取最新监测点最新数据集合 - List ids = excelDataV.stream().map(DataV::getLineId).collect(Collectors.toList()); - List notExcel = datav.stream().filter(x -> !ids.contains(x.getLineId())).collect(Collectors.toList()); + List ids = excelDataV.stream().map(LineTimeDto::getLineId).collect(Collectors.toList()); + List notExcel = datav.stream().filter(x -> !ids.contains(x.getLineId())).collect(Collectors.toList()); if (CollUtil.isNotEmpty(notExcel)) { - for (DataV v : notExcel) { - v.setTimeId(DateUtil.format(DateUtil.beginOfDay(DateUtil.parse(v.getTimeId(), DatePattern.NORM_DATETIME_FORMAT)), DatePattern.NORM_DATETIME_FORMAT)); + for (LineTimeDto v : notExcel) { + v.setTimeData(DateUtil.format(DateUtil.beginOfDay(DateUtil.parse(v.getTimeData(), DatePattern.NORM_DATETIME_FORMAT)), DatePattern.NORM_DATETIME_FORMAT)); } excelDataV.addAll(notExcel); } @@ -101,17 +99,17 @@ public class TimeUtil { excelDataV.addAll(datav); } - List excelCommunicates = EasyExcel.read(file) - .head(PqsCommunicate.class) + List excelCommunicates = EasyExcel.read(file) + .head(DevTimeDto.class) .sheet(1).doReadSync(); - List communicates = communicate.listPqsCommunicateDesc(new LineCountEvaluateParam()); + List communicates = detailMapper.getDevTime(); if (CollUtil.isNotEmpty(excelCommunicates)) { - //获取最新监测点最新数据集合 - List ids = excelCommunicates.stream().map(PqsCommunicate::getDevId).collect(Collectors.toList()); - List notExcel = communicates.stream().filter(x -> !ids.contains(x.getDevId())).collect(Collectors.toList()); + //获取最新终端最新数据集合 + List ids = excelCommunicates.stream().map(DevTimeDto::getDevId).collect(Collectors.toList()); + List notExcel = communicates.stream().filter(x -> !ids.contains(x.getDevId())).collect(Collectors.toList()); if (CollUtil.isNotEmpty(notExcel)) { - for (PqsCommunicate v : notExcel) { - v.setTimeId(DateUtil.format(DateUtil.beginOfDay(DateUtil.parse(v.getTimeId(), DatePattern.NORM_DATETIME_FORMAT)), DatePattern.NORM_DATETIME_FORMAT)); + for (DevTimeDto v : notExcel) { + v.setTimeData(DateUtil.format(DateUtil.beginOfDay(DateUtil.parse(v.getTimeData(), DatePattern.NORM_DATETIME_FORMAT)), DatePattern.NORM_DATETIME_FORMAT)); } excelCommunicates.addAll(notExcel); } @@ -122,19 +120,19 @@ public class TimeUtil { ExcelWriter excelWriter = EasyExcel.write(file).build(); //模板1 WriteSheet writeSheet = EasyExcel.writerSheet(0, "line").head(DataV.class) - .includeColumnFiledNames(Arrays.asList("lineId", "timeId")) + .includeColumnFiledNames(Arrays.asList("lineId", "timeData")) .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) .build(); excelWriter.write(excelDataV, writeSheet); //模板2 WriteSheet writeSheet2 = EasyExcel.writerSheet(1, "dev").head(PqsCommunicate.class) - .includeColumnFiledNames(Arrays.asList("devId", "timeId")) + .includeColumnFiledNames(Arrays.asList("devId", "timeData")) .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) .build(); excelWriter.write(excelCommunicates, writeSheet2); excelWriter.finish(); - TimeUtil.putAllLineTime(excelDataV.stream().collect(Collectors.toMap(DataV::getLineId, DataV::getTimeId))); - TimeUtil.putAllDevTime(excelCommunicates.stream().collect(Collectors.toMap(PqsCommunicate::getDevId, PqsCommunicate::getTimeId))); + TimeUtil.putAllLineTime(excelDataV.stream().collect(Collectors.toMap(LineTimeDto::getLineId, LineTimeDto::getTimeData))); + TimeUtil.putAllDevTime(excelCommunicates.stream().collect(Collectors.toMap(DevTimeDto::getDevId, DevTimeDto::getTimeData))); } }