|
|
@@ -3,6 +3,7 @@ package com.ublinkage.datacollection.service;
|
|
|
import cn.hutool.core.date.DateTime;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.core.io.FileUtil;
|
|
|
+import cn.hutool.core.io.file.PathUtil;
|
|
|
import cn.hutool.http.HttpUtil;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.ublinkage.datacollection.entity.PublishInfo;
|
|
|
@@ -12,6 +13,8 @@ import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.scheduling.annotation.Scheduled;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.io.File;
|
|
|
+import java.nio.file.Path;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.format.DateTimeFormatter;
|
|
|
import java.util.Date;
|
|
|
@@ -117,7 +120,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
//1小时的数据
|
|
|
try {
|
|
|
for (PublishInfo publishInfo : publishList) {
|
|
|
- String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble);
|
|
|
+ String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble + "&foreTime=" + 240);
|
|
|
FileUtil.writeUtf8String(result, downloadFilePath + "FRD," + publishInfo.getPublishDT() + "," + divisionCode + "," + hour + "," + ensemble + "," + System.currentTimeMillis() + ".json");
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
@@ -128,7 +131,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
//24小时的数据
|
|
|
hour = 24;
|
|
|
for (PublishInfo publishInfo : publishList) {
|
|
|
- String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble);
|
|
|
+ String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble + "&foreTime=" + 240);
|
|
|
FileUtil.writeUtf8String(result, downloadFilePath + "FRD," + publishInfo.getPublishDT() + "," + divisionCode + "," + hour + "," + ensemble + "," + System.currentTimeMillis() + ".json");
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
@@ -156,7 +159,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
List<PublishInfo> publishList = json.getJSONArray("data").toJavaList(PublishInfo.class);
|
|
|
try {
|
|
|
for (PublishInfo publishInfo : publishList) {
|
|
|
- String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble);
|
|
|
+ String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble + "&foreTime=" + 240);
|
|
|
FileUtil.writeUtf8String(result, downloadFilePath + "FRD," + publishInfo.getPublishDT() + "," + divisionCode + "," + hour + "," + ensemble + "," + System.currentTimeMillis() + ".json");
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
@@ -165,7 +168,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
try {
|
|
|
hour = 24;
|
|
|
for (PublishInfo publishInfo : publishList) {
|
|
|
- String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble);
|
|
|
+ String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble + "&foreTime=" + 240);
|
|
|
FileUtil.writeUtf8String(result, downloadFilePath + "FRD," + publishInfo.getPublishDT() + "," + divisionCode + "," + hour + "," + ensemble + "," + System.currentTimeMillis() + ".json");
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
@@ -193,7 +196,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
//降雨数据
|
|
|
try {
|
|
|
for (PublishInfo publishInfo : publishList) {
|
|
|
- String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble);
|
|
|
+ String result = HttpUtil.get("http://111.198.2.202:6657/getForePrecipData?publishDT=" + publishInfo.getPublishDT() + "&divisionCode=" + divisionCode + "&hour=" + hour + "&ensemble=" + ensemble + "&foreTime=" + 240);
|
|
|
FileUtil.writeUtf8String(result, downloadFilePath + "DomainRain," + publishInfo.getPublishDT() + "," + divisionCode + "," + hour + "," + ensemble + "," + System.currentTimeMillis() + ".json");
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
@@ -202,7 +205,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
try {
|
|
|
//温度
|
|
|
for (PublishInfo publishInfo : publishList) {
|
|
|
- String result = HttpUtil.get("http://111.198.2.202:6657/getT_Forecast_24h_avg_division?divisionCode=" + divisionCode + "&ensemble=" + ensemble + "&publishDT=" + publishInfo.getPublishDT());
|
|
|
+ String result = HttpUtil.get("http://111.198.2.202:6657/getT_Forecast_24h_avg_division?divisionCode=" + divisionCode + "&ensemble=" + ensemble + "&publishDT=" + publishInfo.getPublishDT() + "&foreTime=" + 240);
|
|
|
FileUtil.writeUtf8String(result, downloadFilePath + "DomainTemp," + publishInfo.getPublishDT() + "," + divisionCode + "," + hour + "," + ensemble + "," + System.currentTimeMillis() + ".json");
|
|
|
}
|
|
|
} catch (Exception e) {
|
|
|
@@ -212,30 +215,34 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
String yyyyMMdd = DateUtil.format(new Date(), "yyyyMMdd");
|
|
|
try {
|
|
|
List<String> cdNewList = new LinkedList<>();
|
|
|
- List<String> cdlist = FileUtil.readUtf8Lines(snowCdFile);
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 7));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 6));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 5));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 4));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 3));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 2));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 1));
|
|
|
-
|
|
|
- FileUtil.writeUtf8Lines(cdNewList, downloadFilePath + "DomainSnow,cd," + yyyyMMdd + "_12_192," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ if (new File(snowCdFile).exists()) {
|
|
|
+ List<String> cdlist = FileUtil.readUtf8Lines(snowCdFile);
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 7));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 6));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 5));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 4));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 3));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 2));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 1));
|
|
|
+
|
|
|
+ FileUtil.writeUtf8Lines(cdNewList, downloadFilePath + "DomainSnow,cd," + yyyyMMdd + "_12_192," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ }
|
|
|
} catch (Exception e) {
|
|
|
log.error("e:{}", e.getMessage());
|
|
|
}
|
|
|
try {
|
|
|
- List<String> qzkNewList = new LinkedList<>();
|
|
|
- List<String> qzkList = FileUtil.readUtf8Lines(snowQzkFile);
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 7));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 6));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 5));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 4));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 3));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 2));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 1));
|
|
|
- FileUtil.writeUtf8Lines(qzkNewList, downloadFilePath + "DomainSnow,qzk," + yyyyMMdd + "_12_192," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ if (new File(snowQzkFile).exists()) {
|
|
|
+ List<String> qzkNewList = new LinkedList<>();
|
|
|
+ List<String> qzkList = FileUtil.readUtf8Lines(snowQzkFile);
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 7));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 6));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 5));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 4));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 3));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 2));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 1));
|
|
|
+ FileUtil.writeUtf8Lines(qzkNewList, downloadFilePath + "DomainSnow,qzk," + yyyyMMdd + "_12_192," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ }
|
|
|
} catch (Exception e) {
|
|
|
log.error("e:{}", e.getMessage());
|
|
|
}
|
|
|
@@ -260,7 +267,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
try {
|
|
|
for (PublishInfo publishInfo : publishList) {
|
|
|
int hour = 1;
|
|
|
- String getForeTempUrl = "http://111.198.2.202:6657/getForeTempData?publishDT=" + publishInfo.getPublishDT() + "&RDField=" + RDField + "&ensemble=" + ensemble;
|
|
|
+ String getForeTempUrl = "http://111.198.2.202:6657/getForeTempData?publishDT=" + publishInfo.getPublishDT() + "&RDField=" + RDField + "&ensemble=" + ensemble + "&foreTime=" + 240;
|
|
|
log.info("下载温度站点数据请求地址:{}", getForeTempUrl);
|
|
|
String result = HttpUtil.get(getForeTempUrl);
|
|
|
FileUtil.writeUtf8String(result, downloadFilePath + "TempSiteData," + publishInfo.getPublishDT() + "," + hour + "," + ensemble + "," + System.currentTimeMillis() + ".json");
|
|
|
@@ -309,7 +316,7 @@ public class QxybDataCollectionTask implements InitializingBean {
|
|
|
log.error("e:{}", e.getMessage());
|
|
|
}
|
|
|
try {
|
|
|
- LocalDateTime st24=LocalDateTime.of(publishTime.getYear(), publishTime.getMonthValue(), publishTime.getDayOfMonth(), 0, 0, 0).plusDays(1);
|
|
|
+ LocalDateTime st24 = LocalDateTime.of(publishTime.getYear(), publishTime.getMonthValue(), publishTime.getDayOfMonth(), 0, 0, 0).plusDays(1);
|
|
|
//24小时雨量
|
|
|
for (int i = 0; i <= duration / 24; i++) {
|
|
|
int hour = 24;
|