|
|
@@ -166,51 +166,67 @@ public class QxybDataService {
|
|
|
* 下载澜沧江上游高程带融雪覆盖预报
|
|
|
*/
|
|
|
public void downloadSnowCover(String publishDt) {
|
|
|
- log.info("###开始下载澜沧江上游高程带融雪覆盖预报");
|
|
|
- //融雪数据从本地获取
|
|
|
+ log.info("###开始下载澜沧江上游高程带融雪覆盖预报,批次:{}", publishDt);
|
|
|
+ //积雪覆盖数据从本地获取
|
|
|
List<String> cdNewList = new LinkedList<>();
|
|
|
+ log.info("下载昌都积雪覆盖数据:", snowCdFile);
|
|
|
if (new File(snowCdFile).exists()) {
|
|
|
- List<String> cdlist = readFile(snowCdFile);
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 10));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 9));
|
|
|
- cdNewList.add(cdlist.get(cdlist.size() - 8));
|
|
|
- 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));
|
|
|
-
|
|
|
- String first = cdNewList.get(0);
|
|
|
- if (StringUtils.isEmpty(first)) {
|
|
|
- return;
|
|
|
+ try {
|
|
|
+ List<String> cdlist = readFile(snowCdFile);
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 10));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 9));
|
|
|
+ cdNewList.add(cdlist.get(cdlist.size() - 8));
|
|
|
+ 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));
|
|
|
+
|
|
|
+ String first = cdNewList.get(0);
|
|
|
+ if (StringUtils.isEmpty(first)) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ //String yyyyMMdd = DateUtil.parseLocalDateTime(first.split(",")[0], "yyyy-MM-dd").minusDays(1).format(DateTimeFormatter.ofPattern("yyyyMMdd"));
|
|
|
+ writeFile(cdNewList, downloadFilePath + "DomainSnow,cd," + publishDt + "," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ log.info("下载成功");
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.warn("下载失败", e);
|
|
|
}
|
|
|
- //String yyyyMMdd = DateUtil.parseLocalDateTime(first.split(",")[0], "yyyy-MM-dd").minusDays(1).format(DateTimeFormatter.ofPattern("yyyyMMdd"));
|
|
|
- writeFile(cdNewList, downloadFilePath + "DomainSnow,cd," + publishDt + "," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ } else {
|
|
|
+ log.warn("下载失败文件不存在");
|
|
|
}
|
|
|
+ log.info("下载曲孜卡积雪覆盖数据:", snowQzkFile);
|
|
|
if (new File(snowQzkFile).exists()) {
|
|
|
- List<String> qzkNewList = new LinkedList<>();
|
|
|
- List<String> qzkList = readFile(snowQzkFile);
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 10));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 9));
|
|
|
- qzkNewList.add(qzkList.get(qzkList.size() - 8));
|
|
|
- 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));
|
|
|
-
|
|
|
- String first = qzkNewList.get(0);
|
|
|
- if (StringUtils.isEmpty(first)) {
|
|
|
- return;
|
|
|
+ try {
|
|
|
+ List<String> qzkNewList = new LinkedList<>();
|
|
|
+ List<String> qzkList = readFile(snowQzkFile);
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 10));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 9));
|
|
|
+ qzkNewList.add(qzkList.get(qzkList.size() - 8));
|
|
|
+ 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));
|
|
|
+
|
|
|
+ String first = qzkNewList.get(0);
|
|
|
+ if (StringUtils.isEmpty(first)) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ //String yyyyMMdd = DateUtil.parseLocalDateTime(first.split(",")[0], "yyyy-MM-dd").minusDays(1).format(DateTimeFormatter.ofPattern("yyyyMMdd"));
|
|
|
+ writeFile(qzkNewList, downloadFilePath + "DomainSnow,qzk," + publishDt + "," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ log.info("下载成功");
|
|
|
+ } catch (Exception e) {
|
|
|
+ log.warn("下载失败", e);
|
|
|
}
|
|
|
- //String yyyyMMdd = DateUtil.parseLocalDateTime(first.split(",")[0], "yyyy-MM-dd").minusDays(1).format(DateTimeFormatter.ofPattern("yyyyMMdd"));
|
|
|
- writeFile(qzkNewList, downloadFilePath + "DomainSnow,qzk," + publishDt + "," + ensemble + "," + System.currentTimeMillis() + ".txt");
|
|
|
+ } else {
|
|
|
+ log.warn("下载失败文件不存在");
|
|
|
}
|
|
|
- log.info("###结束下载澜沧江上游高程带融雪覆盖预报");
|
|
|
+ log.info("###结束下载澜沧江上游高程带融雪覆盖预报,批次:{}", publishDt);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
@@ -361,16 +377,16 @@ public class QxybDataService {
|
|
|
daysForGridRain.forEach(day -> {
|
|
|
try {
|
|
|
LocalTime time = LocalTime.of(0, 0);
|
|
|
- if("00".equals(timeFlg)){
|
|
|
+ if ("00".equals(timeFlg)) {
|
|
|
time = LocalTime.of(12, 0);
|
|
|
} else if ("06".equals(timeFlg)) {
|
|
|
time = LocalTime.of(18, 0);
|
|
|
- }else if ("12".equals(timeFlg)) {
|
|
|
+ } else if ("12".equals(timeFlg)) {
|
|
|
time = LocalTime.of(0, 0);
|
|
|
- }else if ("18".equals(timeFlg)) {
|
|
|
+ } else if ("18".equals(timeFlg)) {
|
|
|
time = LocalTime.of(6, 0);
|
|
|
}
|
|
|
- String dt1 = LocalDateTime.of(day, time) .format(DATE_TIME_FORMATTER1);
|
|
|
+ String dt1 = LocalDateTime.of(day, time).format(DATE_TIME_FORMATTER1);
|
|
|
String dt2 = LocalDateTime.of(day.plusDays(1), time).format(DATE_TIME_FORMATTER1);
|
|
|
String url2 = BASE_URL + "/getForecastMatrixByWrfRDField?RDField=" + RDField + "&publishDT=" + publishInfo.getPublishDT() + "&ensemble=" + publishInfo.getEnsemble() + "&domain=" + domain + "&content=precipitation&DT1=" + dt1 + "&DT2=" + dt2 + "&step=" + 24;
|
|
|
log.info("下载网格降水预报数据(日尺度):{}", url2);
|
|
|
@@ -581,10 +597,10 @@ public class QxybDataService {
|
|
|
int days = 0;
|
|
|
switch (timeFlg) {
|
|
|
case "00":
|
|
|
+ case "06":
|
|
|
days = 3;
|
|
|
startDate = date;
|
|
|
break;
|
|
|
- case "06":
|
|
|
case "18":
|
|
|
days = 3;
|
|
|
startDate = date.plusDays(1);
|