From af58b31fa6e1b2d0ae79714ccea0a5dbdd1c9783 Mon Sep 17 00:00:00 2001 From: hekaiyu <13673834656@163.com> Date: Wed, 17 Dec 2025 12:29:48 +0800 Subject: [PATCH] =?UTF-8?q?bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/properties/T1hDownloadProperties.java | 5 +++++ .../org/jeecg/controller/WeatherDataController.java | 4 ++-- .../src/main/java/org/jeecg/job/DownloadT1hJob.java | 11 ++++++----- .../java/org/jeecg/service/WeatherDataService.java | 2 +- .../jeecg/service/impl/WeatherDataServiceImpl.java | 4 ++-- 5 files changed, 16 insertions(+), 10 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/properties/T1hDownloadProperties.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/properties/T1hDownloadProperties.java index 0949037..cc67e7a 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/properties/T1hDownloadProperties.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/properties/T1hDownloadProperties.java @@ -49,6 +49,11 @@ public class T1hDownloadProperties { */ private String t1hPath; + /** + * 合并T1H的文件目录 + */ + private String t1hNcPath; + /** * T1H下载Key */ diff --git a/jeecg-module-weather/src/main/java/org/jeecg/controller/WeatherDataController.java b/jeecg-module-weather/src/main/java/org/jeecg/controller/WeatherDataController.java index 4169e88..abfbce7 100644 --- a/jeecg-module-weather/src/main/java/org/jeecg/controller/WeatherDataController.java +++ b/jeecg-module-weather/src/main/java/org/jeecg/controller/WeatherDataController.java @@ -112,8 +112,8 @@ public class WeatherDataController { @AutoLog(value = "气象预测-气象预览") @Operation(summary = "气象预测-气象预览") @GetMapping(value = "getWeatherDataPreview") - public Result getWeatherDataPreview(String weatherId,Integer weatherType, String timeBatch) { - return Result.OK(weatherDataService.getWeatherDataPreview(weatherId, weatherType,timeBatch)); + public Result getWeatherDataPreview(String weatherId,Integer weatherType) { + return Result.OK(weatherDataService.getWeatherDataPreview(weatherId, weatherType)); } /** diff --git a/jeecg-module-weather/src/main/java/org/jeecg/job/DownloadT1hJob.java b/jeecg-module-weather/src/main/java/org/jeecg/job/DownloadT1hJob.java index da428c1..a228cc8 100644 --- a/jeecg-module-weather/src/main/java/org/jeecg/job/DownloadT1hJob.java +++ b/jeecg-module-weather/src/main/java/org/jeecg/job/DownloadT1hJob.java @@ -54,6 +54,7 @@ public class DownloadT1hJob { reformat(baseTime); // 合并后删除原始文件 Arrays.stream(new File(getFullPath(t1hDownloadProperties.getT1hPath(), baseTime)).listFiles()).filter(File::isFile).forEach(File::delete); + Arrays.stream(new File(getFullPath(t1hDownloadProperties.getT1hNcPath(), baseTime)).listFiles()).filter(File::isFile).forEach(File::delete); // 更新气象文件信息 saveWeatherData(baseTime); log.info("T1H文件下载任务执行完成"); @@ -90,7 +91,7 @@ public class DownloadT1hJob { t1hDownloadProperties.getPythonPath(), getPythonScriptPath(t1hDownloadProperties.getMergeT1hPy()), "--indir", getFullPath(t1hDownloadProperties.getT1hPath(), baseTime), - "--output_dir", getFullPath(t1hDownloadProperties.getT1hPath(), baseTime), + "--output_dir", getFullPath(t1hDownloadProperties.getT1hNcPath(), baseTime), "--variables", String.join(",", variables), "--forecast_times", String.join(",", forecastTimes), "--base_date", baseTime @@ -109,7 +110,7 @@ public class DownloadT1hJob { getPythonScriptPath(t1hDownloadProperties.getReformatPy()), "--ini_dir", getPythonScriptPath(t1hDownloadProperties.getScriptPath()), "--output_dir", getFullPath(systemStorageProperties.getT1h(), baseTime), - "--cra_dir", getFullPath(t1hDownloadProperties.getT1hPath(), baseTime), + "--cra_dir", getFullPath(t1hDownloadProperties.getT1hNcPath(), baseTime), "--start_date", getStartTime(), "--end_date", getEndTime(), "--var_table", getPythonScriptPath(t1hDownloadProperties.getLookupFileName()) @@ -120,8 +121,8 @@ public class DownloadT1hJob { private void saveWeatherData(String baseTime){ //删除一个月前的文件 - LocalDateTime oneMonthAgo = LocalDateTime.now().minusMonths(1); - List weatherDatas = weatherDataService.list(new LambdaQueryWrapper().lt(WeatherData::getDataStartTime, oneMonthAgo)); + String timeBatch = LocalDateTime.now().minusMonths(1).format(DATE_FORMATTER) + "00"; + List weatherDatas = weatherDataService.list(new LambdaQueryWrapper().eq(WeatherData::getTimeBatch, timeBatch)); // 遍历删除文件 weatherDatas.forEach(data -> { if (data.getFilePath() != null && !data.getFilePath().isEmpty()) { @@ -132,7 +133,7 @@ public class DownloadT1hJob { } }); // 删除数据库记录 - weatherDataService.remove(new LambdaQueryWrapper().eq(WeatherData::getDataSource, WeatherDataSourceEnum.T1H.getKey())); + weatherDataService.remove(new LambdaQueryWrapper().eq(WeatherData::getTimeBatch, timeBatch)); // 读取目录文件信息 List weatherFileInfos = readFolderFiles(baseTime); //保存文件信息 diff --git a/jeecg-module-weather/src/main/java/org/jeecg/service/WeatherDataService.java b/jeecg-module-weather/src/main/java/org/jeecg/service/WeatherDataService.java index da7aaa7..3017e65 100644 --- a/jeecg-module-weather/src/main/java/org/jeecg/service/WeatherDataService.java +++ b/jeecg-module-weather/src/main/java/org/jeecg/service/WeatherDataService.java @@ -12,7 +12,7 @@ import java.util.List; public interface WeatherDataService extends IService { WeatherResultVO getWeatherData(Integer dataType, Integer weatherType, String timeBatch, LocalDateTime startTime, int hour); - WeatherResultVO getWeatherDataPreview(String weatherId, Integer weatherType, String timeBatch); + WeatherResultVO getWeatherDataPreview(String weatherId, Integer weatherType); WindDataLineVO getDataLine(Integer dataType, String timeBatch, LocalDateTime startTime, LocalDateTime endTime, double longitude, double latitude); List getWindRose(Integer dataType, String timeBatch, LocalDateTime startTime, LocalDateTime endTime,double longitude, double latitude); diff --git a/jeecg-module-weather/src/main/java/org/jeecg/service/impl/WeatherDataServiceImpl.java b/jeecg-module-weather/src/main/java/org/jeecg/service/impl/WeatherDataServiceImpl.java index ec1f260..df2c46b 100644 --- a/jeecg-module-weather/src/main/java/org/jeecg/service/impl/WeatherDataServiceImpl.java +++ b/jeecg-module-weather/src/main/java/org/jeecg/service/impl/WeatherDataServiceImpl.java @@ -104,7 +104,7 @@ public class WeatherDataServiceImpl extends ServiceImpl