From 08bc4ffcf07d20b5c455f130347dc5cb04351b54 Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Sun, 27 Apr 2025 11:46:23 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4pom?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../migration-influxdb-insert-boot/pom.xml | 64 +++++++++++++++++++ .../migration-influxdb-read-boot/pom.xml | 9 ++- .../MigrationInfluxDBController.java | 8 +-- .../service/impl/MigrationServiceImpl.java | 7 +- .../njcn/migration/read/util/TimeUtil.java | 39 +++++------ 5 files changed, 98 insertions(+), 29 deletions(-) diff --git a/migration-influxdb/migration-influxdb-insert-boot/pom.xml b/migration-influxdb/migration-influxdb-insert-boot/pom.xml index 4563279..302cb81 100644 --- a/migration-influxdb/migration-influxdb-insert-boot/pom.xml +++ b/migration-influxdb/migration-influxdb-insert-boot/pom.xml @@ -39,4 +39,68 @@ compile + + influxdbinsertboot + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.0 + + -Xlint:unchecked + + + + org.springframework.boot + spring-boot-maven-plugin + + + package + + repackage + + + + + + + com.spotify + docker-maven-plugin + 1.2.2 + + + + build-image + ${docker.operate} + + build + + + + + + http://${docker.repostory} + + ${docker.repostory}/${docker.registry.name}/${project.artifactId} + + + latest + + + ${docker.url} + ${basedir}/ + + + + /ROOT + + ${project.build.directory} + + ${project.build.finalName}.jar + + + + + + \ No newline at end of file diff --git a/migration-influxdb/migration-influxdb-read-boot/pom.xml b/migration-influxdb/migration-influxdb-read-boot/pom.xml index f97b288..a184b3b 100644 --- a/migration-influxdb/migration-influxdb-read-boot/pom.xml +++ b/migration-influxdb/migration-influxdb-read-boot/pom.xml @@ -53,6 +53,7 @@ + influxdbreadboot org.apache.maven.plugins @@ -88,8 +89,9 @@ com.spotify docker-maven-plugin - 1.0.0 + 1.2.2 + build-image ${docker.operate} @@ -103,15 +105,20 @@ http://${docker.repostory} ${docker.repostory}/${docker.registry.name}/${project.artifactId} + latest + ${docker.url} ${basedir}/ + /ROOT + ${project.build.directory} + ${project.build.finalName}.jar diff --git a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/controller/MigrationInfluxDBController.java b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/controller/MigrationInfluxDBController.java index 296c8ed..6903612 100644 --- a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/controller/MigrationInfluxDBController.java +++ b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/controller/MigrationInfluxDBController.java @@ -8,15 +8,12 @@ import com.njcn.migration.read.service.MigrationService; import io.swagger.annotations.*; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.springframework.core.io.ClassPathResource; import org.springframework.http.MediaType; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; +import java.io.*; import java.net.URLEncoder; import java.time.LocalDateTime; import java.time.LocalTime; @@ -78,10 +75,9 @@ public class MigrationInfluxDBController { @ApiOperation(value ="获取最新数据信息文件", produces = MediaType.APPLICATION_OCTET_STREAM_VALUE) public void importDistributionAreaExcel(HttpServletResponse response) throws IOException { migrationService.initializeExcel(); - ClassPathResource picPathResource = new ClassPathResource("file/sj.xlsx"); + FileInputStream fileInputStream = new FileInputStream("/usr/local/jar"); response.setHeader("Content-Disposition", "attachment;filename="+ URLEncoder.encode("最新数据信息.xlsx", CharsetUtil.UTF_8)); // 输出文件内容 - InputStream fileInputStream = picPathResource.getInputStream(); OutputStream responseOutputStream = response.getOutputStream(); byte[] buffer = new byte[4096]; int bytesRead; diff --git a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/service/impl/MigrationServiceImpl.java b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/service/impl/MigrationServiceImpl.java index 795e964..9bb3956 100644 --- a/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/service/impl/MigrationServiceImpl.java +++ b/migration-influxdb/migration-influxdb-read-boot/src/main/java/com/njcn/migration/read/service/impl/MigrationServiceImpl.java @@ -13,10 +13,10 @@ import com.njcn.po.influx.DataV; import com.njcn.migration.read.util.TimeUtil; import com.njcn.po.influx.PqsCommunicate; import lombok.RequiredArgsConstructor; -import org.springframework.core.io.ClassPathResource; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; +import java.io.File; import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; @@ -128,7 +128,7 @@ public class MigrationServiceImpl implements MigrationService { @Override public void initializeExcel() throws IOException { - ClassPathResource picPathResource = new ClassPathResource("file/sj.xlsx"); + File file = new File("/usr/local/jar"); Map map = TimeUtil.getLineMap(); List lineExcel = new ArrayList<>(); map.forEach((line,value)->{ @@ -146,8 +146,7 @@ public class MigrationServiceImpl implements MigrationService { data.setTimeId(value); devExcel.add(data); }); - - ExcelWriter excelWriter = EasyExcel.write(picPathResource.getFile()).build(); + ExcelWriter excelWriter = EasyExcel.write(file).build(); //模板1 WriteSheet writeSheet = EasyExcel.writerSheet(0, "line" ).head(DataV.class) .includeColumnFiledNames(Arrays.asList("lineId","timeId")) 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 c09d88f..2fd6163 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 @@ -4,7 +4,6 @@ package com.njcn.migration.read.util; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.DateUtil; -import cn.hutool.core.date.LocalDateTimeUtil; import com.alibaba.excel.EasyExcel; import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.write.metadata.WriteSheet; @@ -15,10 +14,10 @@ import com.njcn.param.LineCountEvaluateParam; import com.njcn.po.influx.DataV; import com.njcn.po.influx.PqsCommunicate; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.core.io.ClassPathResource; import org.springframework.stereotype.Component; import javax.annotation.PostConstruct; +import java.io.File; import java.io.IOException; import java.util.*; import java.util.concurrent.ConcurrentHashMap; @@ -35,6 +34,7 @@ public class TimeUtil { private IDataV dataV; @Autowired private IPqsCommunicate communicate; + /** * key:监测点id value:当前上次结束时间 */ @@ -44,6 +44,7 @@ public class TimeUtil { public static void putLineTime(String lineId, String time) { LINE_TIME_MAP.put(lineId, time); } + public static void putAllLineTime(Map limeMap) { LINE_TIME_MAP.putAll(limeMap); } @@ -63,9 +64,11 @@ public class TimeUtil { public static void putDevTime(String devId, String time) { DEV_TIME_MAP.put(devId, time); } + public static void putAllDevTime(Map devMap) { DEV_TIME_MAP.putAll(devMap); } + public static String getDevTime(String devId) { if (DEV_TIME_MAP.containsKey(devId)) { return DEV_TIME_MAP.get(devId); @@ -79,54 +82,54 @@ public class TimeUtil { @PostConstruct public void init() throws IOException { - ClassPathResource picPathResource = new ClassPathResource("file/sj.xlsx"); - List excelDataV = EasyExcel.read(picPathResource.getFile()) + File file = new File("/usr/local/jar/sj.xlsx"); + List excelDataV = EasyExcel.read(file) .head(DataV.class) .sheet(0).doReadSync(); List datav = dataV.listDataVDesc(new LineCountEvaluateParam()); - if(CollUtil.isNotEmpty(excelDataV)){ + 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()); - if(CollUtil.isNotEmpty(notExcel)){ + 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)); + v.setTimeId(DateUtil.format(DateUtil.beginOfDay(DateUtil.parse(v.getTimeId(), DatePattern.NORM_DATETIME_FORMAT)), DatePattern.NORM_DATETIME_FORMAT)); } excelDataV.addAll(notExcel); } - }else{ + } else { excelDataV.addAll(datav); } - List excelCommunicates = EasyExcel.read(picPathResource.getFile()) + List excelCommunicates = EasyExcel.read(file) .head(PqsCommunicate.class) .sheet(1).doReadSync(); List communicates = communicate.listPqsCommunicateDesc(new LineCountEvaluateParam()); - if(CollUtil.isNotEmpty(excelCommunicates)){ + 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()); - if(CollUtil.isNotEmpty(notExcel)){ + 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)); + v.setTimeId(DateUtil.format(DateUtil.beginOfDay(DateUtil.parse(v.getTimeId(), DatePattern.NORM_DATETIME_FORMAT)), DatePattern.NORM_DATETIME_FORMAT)); } excelCommunicates.addAll(notExcel); } - }else{ + } else { excelCommunicates.addAll(communicates); } - ExcelWriter excelWriter = EasyExcel.write(picPathResource.getFile()).build(); + ExcelWriter excelWriter = EasyExcel.write(file).build(); //模板1 - WriteSheet writeSheet = EasyExcel.writerSheet(0, "line" ).head(DataV.class) - .includeColumnFiledNames(Arrays.asList("lineId","timeId")) + WriteSheet writeSheet = EasyExcel.writerSheet(0, "line").head(DataV.class) + .includeColumnFiledNames(Arrays.asList("lineId", "timeId")) .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) .build(); excelWriter.write(excelDataV, writeSheet); //模板2 - WriteSheet writeSheet2 = EasyExcel.writerSheet(1, "dev" ).head(PqsCommunicate.class) - .includeColumnFiledNames(Arrays.asList("devId","timeId")) + WriteSheet writeSheet2 = EasyExcel.writerSheet(1, "dev").head(PqsCommunicate.class) + .includeColumnFiledNames(Arrays.asList("devId", "timeId")) .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()) .build(); excelWriter.write(excelCommunicates, writeSheet2);