diff --git a/influx-data/influx-target/src/main/java/com/njcn/influx/controller/OracleToInfluxDBController.java b/influx-data/influx-target/src/main/java/com/njcn/influx/controller/OracleToInfluxDBController.java index 86dd392..58ae7c1 100644 --- a/influx-data/influx-target/src/main/java/com/njcn/influx/controller/OracleToInfluxDBController.java +++ b/influx-data/influx-target/src/main/java/com/njcn/influx/controller/OracleToInfluxDBController.java @@ -1,32 +1,23 @@ package com.njcn.influx.controller; -import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.date.DatePattern; import cn.hutool.core.date.LocalDateTimeUtil; -import cn.hutool.extra.spring.SpringUtil; -import com.njcn.influx.bo.param.TableEnum; -import com.njcn.influx.service.InfluxDBBaseService; +import com.njcn.influx.service.OracleEventDetailToMysqlService; import com.njcn.influx.service.OracleToInfluxDBService; import com.njcn.influx.service.PqsOnlineratePOService; import com.njcn.oracle.bo.param.DataAsynParam; -import com.njcn.oracle.bo.param.MigrationParam; -import com.njcn.oracle.mybatis.service.IReplenishMybatisService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.BeanUtils; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import java.lang.reflect.Method; -import java.time.LocalDate; import java.time.LocalDateTime; -import java.util.List; -import java.util.stream.Collectors; -import java.util.stream.Stream; +import java.time.temporal.ChronoUnit; + /** * Description: @@ -44,16 +35,16 @@ import java.util.stream.Stream; public class OracleToInfluxDBController { private final OracleToInfluxDBService oracleToInfluxDBService; - private final PqsOnlineratePOService pqsOnlineratePOService; + private final OracleEventDetailToMysqlService oracleEventDetailToMysqlService; + + @PostMapping("/dataSync") @ApiOperation("数据同步") @ApiImplicitParam(name = "dataAsynParam", value = "数据同步参数", required = true) @SneakyThrows public Boolean dataSync(@RequestBody DataAsynParam dataAsynParam){ - oracleToInfluxDBService.dataBacthSysc(dataAsynParam); - return true;// HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, "数据同步"); } @GetMapping("/dataSyncHours") @@ -63,9 +54,6 @@ public class OracleToInfluxDBController { dataAsynParam.setStartDateTime(LocalDateTimeUtil.parse(startDateTime, DatePattern.NORM_DATETIME_PATTERN)); dataAsynParam.setEndDateTime(LocalDateTimeUtil.parse(endDateTime, DatePattern.NORM_DATETIME_PATTERN)); oracleToInfluxDBService.AsyncData(dataAsynParam); - - - return true;// HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, "数据同步"); } @@ -76,10 +64,24 @@ public class OracleToInfluxDBController { dataAsynParam.setStartDateTime(LocalDateTimeUtil.parse(startDateTime, DatePattern.NORM_DATETIME_PATTERN)); dataAsynParam.setEndDateTime(LocalDateTimeUtil.parse(endDateTime, DatePattern.NORM_DATETIME_PATTERN)); pqsOnlineratePOService.AsyncData(dataAsynParam); - - - return true;// HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, true, "数据同步"); } + @GetMapping("/eventBatch") + @ApiOperation("eventDetail表数据同步") + public Boolean eventBatch(@RequestParam("startDateTime") String startDateTime,@RequestParam("endDateTime") String endDateTime) { + try { + LocalDateTime startDate = LocalDateTimeUtil.beginOfDay(LocalDateTimeUtil.parse(startDateTime, DatePattern.NORM_DATE_PATTERN)); + LocalDateTime endDate = LocalDateTimeUtil.endOfDay(LocalDateTimeUtil.parse(endDateTime, DatePattern.NORM_DATE_PATTERN)); + long betweenDay = LocalDateTimeUtil.between(startDate, endDate, ChronoUnit.DAYS); + oracleEventDetailToMysqlService.eventBatch(startDate, endDate); + for (int i = 0; i <=betweenDay; i++) { + startDate = LocalDateTimeUtil.offset(startDate, 1, ChronoUnit.DAYS); + oracleEventDetailToMysqlService.eventBatch(startDate, endDate); + } + } catch (Exception exception) { + exception.printStackTrace(); + } + return true; + } } diff --git a/influx-data/influx-target/src/main/java/com/njcn/influx/job/OracleToInfluxDBJob.java b/influx-data/influx-target/src/main/java/com/njcn/influx/job/OracleToInfluxDBJob.java index 92dc95f..bb300ce 100644 --- a/influx-data/influx-target/src/main/java/com/njcn/influx/job/OracleToInfluxDBJob.java +++ b/influx-data/influx-target/src/main/java/com/njcn/influx/job/OracleToInfluxDBJob.java @@ -83,7 +83,7 @@ public class OracleToInfluxDBJob { * 每小时同步oracle数据库暂态事件 * @date 2024/3/5 */ - @Scheduled(cron="0 0/1 * * * ?") + @Scheduled(cron="0 0/10 * * * ?") public void executeEvent() { // 获取当前时间 LocalDateTime now = LocalDateTime.now();