|
@@ -67,91 +67,13 @@ public class ReportDataController {
|
|
} else {
|
|
} else {
|
|
fileTypeEnumList = FileTypeEnum.getWindFileType();
|
|
fileTypeEnumList = FileTypeEnum.getWindFileType();
|
|
}
|
|
}
|
|
- }
|
|
|
|
- if (fileTypeEnumList.size() > 0 && null != fileTypeEnumList){
|
|
|
|
- // 获取应上报文件名
|
|
|
|
- List<String> shouldFileName = reportDataService.shouldFileName(fileType, startTime, endTime, stationCode);
|
|
|
|
- List<ParsingLog> parsingLogList = parsingLogService.findByTimeBetweenAndFileTypeAndStationCode(new Date(startTime), new Date(endTime), fileType, stationCode);
|
|
|
|
- if (parsingLogList.size() > 0) {
|
|
|
|
|
|
+ List<ParsingLog> parsingLogList = new ArrayList<>();
|
|
|
|
+ for (FileTypeEnum fileTypeEnum : fileTypeEnumList) {
|
|
|
|
+ parsingLogList = getAllFileName(fileTypeEnum.name(), startTime, endTime, stationCode);
|
|
resultList.addAll(parsingLogList);
|
|
resultList.addAll(parsingLogList);
|
|
- for (int i = 0; i < shouldFileName.size(); i++) {
|
|
|
|
- int finalI = i;
|
|
|
|
- List<ParsingLog> collectList = parsingLogList.stream().filter(f -> f.getFileName().contains(shouldFileName.get(finalI))).collect(Collectors.toList());
|
|
|
|
- if (collectList.size() > 0) {
|
|
|
|
- continue;
|
|
|
|
- } else {
|
|
|
|
- ParsingLog parsingLogs = new ParsingLog();
|
|
|
|
- parsingLogs.setDataSources(DataSourcesEnum.E1);
|
|
|
|
- if ("dq".equals(fileType) || "nwp".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_0000_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- if ("cdq".equals(fileType) || "status".equals(fileType) || "nbq".equals(fileType) || "qxz".equals(fileType) || "rp".equals(fileType) || "fj".equals(fileType) || "cft".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- parsingLogs.setFileType(FileTypeEnum.valueOf(fileType));
|
|
|
|
- parsingLogs.setParsingFileStatus("失败");
|
|
|
|
- parsingLogs.setStationCode(stationCode);
|
|
|
|
- resultList.add(parsingLogs);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- for (int i = 0; i < shouldFileName.size(); i++) {
|
|
|
|
- ParsingLog parsingLogs = new ParsingLog();
|
|
|
|
- if ("dq".equals(fileType) || "nwp".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_0000_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- if ("cdq".equals(fileType) || "status".equals(fileType) || "nbq".equals(fileType) || "qxz".equals(fileType) || "rp".equals(fileType) || "fj".equals(fileType) || "cft".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- parsingLogs.setParsingFileStatus("失败");
|
|
|
|
- parsingLogs.setStationCode(stationCode);
|
|
|
|
- parsingLogs.setFileType(FileTypeEnum.valueOf(fileType));
|
|
|
|
- parsingLogs.setDataSources(DataSourcesEnum.E1);
|
|
|
|
- resultList.add(parsingLogs);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }else {
|
|
|
|
- // 获取应上报文件名
|
|
|
|
- List<String> shouldFileName = reportDataService.shouldFileName(fileType, startTime, endTime, stationCode);
|
|
|
|
- List<ParsingLog> parsingLogList = parsingLogService.findByTimeBetweenAndFileTypeAndStationCode(new Date(startTime), new Date(endTime), fileType, stationCode);
|
|
|
|
- if (parsingLogList.size() > 0) {
|
|
|
|
- resultList.addAll(parsingLogList);
|
|
|
|
- for (int i = 0; i < shouldFileName.size(); i++) {
|
|
|
|
- int finalI = i;
|
|
|
|
- List<ParsingLog> collectList = parsingLogList.stream().filter(f -> f.getFileName().contains(shouldFileName.get(finalI))).collect(Collectors.toList());
|
|
|
|
- if (collectList.size() > 0) {
|
|
|
|
- continue;
|
|
|
|
- } else {
|
|
|
|
- ParsingLog parsingLogs = new ParsingLog();
|
|
|
|
- parsingLogs.setDataSources(DataSourcesEnum.E1);
|
|
|
|
- if ("dq".equals(fileType) || "nwp".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_0000_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- if ("cdq".equals(fileType) || "status".equals(fileType) || "nbq".equals(fileType) || "qxz".equals(fileType) || "rp".equals(fileType) || "fj".equals(fileType) || "cft".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- parsingLogs.setFileType(FileTypeEnum.valueOf(fileType));
|
|
|
|
- parsingLogs.setParsingFileStatus("失败");
|
|
|
|
- parsingLogs.setStationCode(stationCode);
|
|
|
|
- resultList.add(parsingLogs);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- } else {
|
|
|
|
- for (int i = 0; i < shouldFileName.size(); i++) {
|
|
|
|
- ParsingLog parsingLogs = new ParsingLog();
|
|
|
|
- if ("dq".equals(fileType) || "nwp".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_0000_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- if ("cdq".equals(fileType) || "status".equals(fileType) || "nbq".equals(fileType) || "qxz".equals(fileType) || "rp".equals(fileType) || "fj".equals(fileType) || "cft".equals(fileType)) {
|
|
|
|
- parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
- }
|
|
|
|
- parsingLogs.setParsingFileStatus("失败");
|
|
|
|
- parsingLogs.setStationCode(stationCode);
|
|
|
|
- parsingLogs.setFileType(FileTypeEnum.valueOf(fileType));
|
|
|
|
- parsingLogs.setDataSources(DataSourcesEnum.E1);
|
|
|
|
- resultList.add(parsingLogs);
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
|
|
+ } else {
|
|
|
|
+ resultList = getAllFileName(fileType, startTime, endTime, stationCode);
|
|
}
|
|
}
|
|
|
|
|
|
// 定义比较器
|
|
// 定义比较器
|
|
@@ -189,4 +111,70 @@ public class ReportDataController {
|
|
|
|
|
|
return correctTimestampStr;
|
|
return correctTimestampStr;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ public List<ParsingLog> getAllFileName(String fileType, Long startTime, Long endTime, String stationCode) {
|
|
|
|
+ List<ParsingLog> resultList = new ArrayList<>();
|
|
|
|
+
|
|
|
|
+ // 获取应上报文件名
|
|
|
|
+ List<String> shouldFileName = reportDataService.shouldFileName(fileType, startTime, endTime, stationCode);
|
|
|
|
+ List<ParsingLog> parsingLogList = parsingLogService.findByTimeBetweenAndFileTypeAndStationCode(new Date(startTime), new Date(endTime), fileType, stationCode);
|
|
|
|
+ if (parsingLogList.size() > 0) {
|
|
|
|
+ resultList.addAll(parsingLogList);
|
|
|
|
+ for (String s : shouldFileName) {
|
|
|
|
+ List<ParsingLog> collectList = parsingLogList.stream().filter(f -> f.getFileName().contains(s)).collect(Collectors.toList());
|
|
|
|
+ if (collectList.size() == 0) {
|
|
|
|
+ ParsingLog parsingLogs = new ParsingLog();
|
|
|
|
+
|
|
|
|
+ if ("rdq".equals(fileType) || "dq".equals(fileType) || "nwp".equals(fileType)) {
|
|
|
|
+ parsingLogs.setFileName("sign_" + s + "_0000_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
+ }
|
|
|
|
+ if ("rcdq".equals(fileType) || "cdq".equals(fileType) || "status".equals(fileType) || "nbq".equals(fileType) || "qxz".equals(fileType) || "rp".equals(fileType) || "fj".equals(fileType) || "cft".equals(fileType)) {
|
|
|
|
+ parsingLogs.setFileName("sign_" + s + "_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
+ }
|
|
|
|
+ parsingLogs.setFileType(FileTypeEnum.valueOf(fileType));
|
|
|
|
+ parsingLogs.setParsingFileStatus("失败");
|
|
|
|
+ parsingLogs.setStationCode(stationCode);
|
|
|
|
+ parsingLogs.setDataSources(DataSourcesEnum.E1);
|
|
|
|
+ resultList.add(parsingLogs);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+// for (int i = 0; i < shouldFileName.size(); i++) {
|
|
|
|
+// int finalI = i;
|
|
|
|
+// List<ParsingLog> collectList = parsingLogList.stream().filter(f -> f.getFileName().contains(shouldFileName.get(finalI))).collect(Collectors.toList());
|
|
|
|
+// if (collectList.size() == 0) {
|
|
|
|
+// ParsingLog parsingLogs = new ParsingLog();
|
|
|
|
+//
|
|
|
|
+// if ("rdq".equals(fileType) || "dq".equals(fileType) || "nwp".equals(fileType)) {
|
|
|
|
+// parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_0000_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
+// }
|
|
|
|
+// if ("rcdq".equals(fileType) || "cdq".equals(fileType) || "status".equals(fileType) || "nbq".equals(fileType) || "qxz".equals(fileType) || "rp".equals(fileType) || "fj".equals(fileType) || "cft".equals(fileType)) {
|
|
|
|
+// parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
+// }
|
|
|
|
+// parsingLogs.setFileType(FileTypeEnum.valueOf(fileType));
|
|
|
|
+// parsingLogs.setParsingFileStatus("失败");
|
|
|
|
+// parsingLogs.setStationCode(stationCode);
|
|
|
|
+// parsingLogs.setDataSources(DataSourcesEnum.E1);
|
|
|
|
+// resultList.add(parsingLogs);
|
|
|
|
+//
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+ } else {
|
|
|
|
+ for (int i = 0; i < shouldFileName.size(); i++) {
|
|
|
|
+ ParsingLog parsingLogs = new ParsingLog();
|
|
|
|
+ if ("dq".equals(fileType) || "nwp".equals(fileType)) {
|
|
|
|
+ parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_0000_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
+ }
|
|
|
|
+ if ("cdq".equals(fileType) || "status".equals(fileType) || "nbq".equals(fileType) || "qxz".equals(fileType) || "rp".equals(fileType) || "fj".equals(fileType) || "cft".equals(fileType)) {
|
|
|
|
+ parsingLogs.setFileName("sign_" + shouldFileName.get(i) + "_" + fileType.toUpperCase() + ".WPD");
|
|
|
|
+ }
|
|
|
|
+ parsingLogs.setParsingFileStatus("失败");
|
|
|
|
+ parsingLogs.setStationCode(stationCode);
|
|
|
|
+ parsingLogs.setFileType(FileTypeEnum.valueOf(fileType));
|
|
|
|
+ parsingLogs.setDataSources(DataSourcesEnum.E1);
|
|
|
|
+ resultList.add(parsingLogs);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return resultList;
|
|
|
|
+ }
|
|
}
|
|
}
|