解决启动报错
This commit is contained in:
@@ -20,7 +20,6 @@ import com.njcn.csharmonic.offline.constant.OfflineConstant;
|
||||
import com.njcn.csharmonic.offline.log.Log;
|
||||
import com.njcn.csharmonic.offline.log.vo.NewTaglogbuffer;
|
||||
import com.njcn.csharmonic.offline.mincfg.AnalyseComtradeCfg;
|
||||
import com.njcn.csharmonic.offline.mincfg.tagComtradeCfg;
|
||||
import com.njcn.csharmonic.offline.vo.Response;
|
||||
import com.njcn.csharmonic.pojo.dto.MakeUpDto;
|
||||
import com.njcn.csharmonic.pojo.param.MakeUpParam;
|
||||
@@ -38,10 +37,12 @@ import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
import com.njcn.csharmonic.offline.log.vo.TagComtradeCfg;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.file.Files;
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
@@ -96,8 +97,8 @@ public class OfflineDataUploadServiceImpl implements OfflineDataUploadService {
|
||||
for(MultipartFile file : files){
|
||||
Response response = new Response();
|
||||
response.setFilename(file.getOriginalFilename());
|
||||
if(OfflineConstant.COMTRADE.equals(type) && file.getOriginalFilename().indexOf(OfflineConstant.CFG) != -1) {
|
||||
tagComtradeCfg tagComtradeCfg = null;
|
||||
if(OfflineConstant.COMTRADE.equals(type) && Objects.requireNonNull(file.getOriginalFilename()).contains(OfflineConstant.CFG)) {
|
||||
TagComtradeCfg tagComtradeCfg = null;
|
||||
try {
|
||||
tagComtradeCfg = AnalyseComtradeCfg.analyseComtradeCfg(file);
|
||||
} catch (Exception e) {
|
||||
@@ -105,7 +106,7 @@ public class OfflineDataUploadServiceImpl implements OfflineDataUploadService {
|
||||
response.setState(2);
|
||||
}
|
||||
response.setObj(tagComtradeCfg);
|
||||
}else if(OfflineConstant.LOG.equals(type) && file.getOriginalFilename().indexOf(OfflineConstant.BIN) != -1){
|
||||
}else if(OfflineConstant.LOG.equals(type) && Objects.requireNonNull(file.getOriginalFilename()).contains(OfflineConstant.BIN)){
|
||||
List<NewTaglogbuffer> newTaglogbuffers = null;
|
||||
try {
|
||||
newTaglogbuffers = Log.convertLog(file);
|
||||
@@ -221,9 +222,11 @@ public class OfflineDataUploadServiceImpl implements OfflineDataUploadService {
|
||||
if (CollectionUtil.isNotEmpty(projectInfoList)) {
|
||||
projectInfoList.forEach(item->{
|
||||
String linePath = item.getName();
|
||||
List<FileDto.DirInfo> lineDataList = getFileList(param.getLineId(),param.getNDid(),linePath);
|
||||
if (CollectionUtil.isNotEmpty(lineDataList)) {
|
||||
fileList.addAll(lineDataList.stream().map(FileDto.DirInfo::getName).collect(Collectors.toList()));
|
||||
if (timeRange(param.getStartTime(),param.getEndTime(),linePath,"min")) {
|
||||
List<FileDto.DirInfo> lineDataList = getFileList(param.getLineId(),param.getNDid(),linePath);
|
||||
if (CollectionUtil.isNotEmpty(lineDataList)) {
|
||||
fileList.addAll(lineDataList.stream().map(FileDto.DirInfo::getName).collect(Collectors.toList()));
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -234,13 +237,21 @@ public class OfflineDataUploadServiceImpl implements OfflineDataUploadService {
|
||||
String logPath = s + "/log";
|
||||
List<FileDto.DirInfo> logList = getFileList(param.getLineId(),param.getNDid(),logPath);
|
||||
if (CollectionUtil.isNotEmpty(logList)) {
|
||||
fileList.addAll(logList.stream().map(FileDto.DirInfo::getName).collect(Collectors.toList()));
|
||||
logList.forEach(item->{
|
||||
if (timeRange(param.getStartTime(),param.getEndTime(),item.getName(),"log")) {
|
||||
fileList.add(item.getName());
|
||||
}
|
||||
});
|
||||
}
|
||||
//录波文件
|
||||
String comtradePath = s + "/comtrade";
|
||||
List<FileDto.DirInfo> comtradeList = getFileList(param.getLineId(),param.getNDid(),comtradePath);
|
||||
if (CollectionUtil.isNotEmpty(comtradeList)) {
|
||||
fileList.addAll(comtradeList.stream().map(FileDto.DirInfo::getName).collect(Collectors.toList()));
|
||||
comtradeList.forEach(item->{
|
||||
if (timeRange(param.getStartTime(),param.getEndTime(),item.getName(),"comtrade")) {
|
||||
fileList.add(item.getName());
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
if (CollectionUtil.isNotEmpty(fileList)) {
|
||||
@@ -287,6 +298,46 @@ public class OfflineDataUploadServiceImpl implements OfflineDataUploadService {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 时间处理
|
||||
*/
|
||||
public boolean timeRange(String startTime, String endTime, String filePath, String type) {
|
||||
boolean result;
|
||||
String data;
|
||||
data = filePath.split(StrUtil.SLASH)[filePath.split(StrUtil.SLASH).length - 1];
|
||||
switch (type) {
|
||||
case "log":
|
||||
data = data.split("\\.")[0];
|
||||
break;
|
||||
case "comtrade":
|
||||
data = data.split("_")[1];
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
result = judgeTimeRange(startTime,endTime,data);
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 添加时间判断
|
||||
*/
|
||||
public boolean judgeTimeRange(String startTime, String endTime, String data) {
|
||||
boolean result = false;
|
||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||
DateTimeFormatter formatterNoDelimiter = DateTimeFormatter.ofPattern("yyyyMMdd");
|
||||
LocalDate startDate = LocalDate.parse(startTime, formatter);
|
||||
LocalDate endDate = LocalDate.parse(endTime, formatter);
|
||||
LocalDate targetDate = LocalDate.parse(data, formatterNoDelimiter);
|
||||
if (!targetDate.isBefore(startDate) && !targetDate.isAfter(endDate)) {
|
||||
log.info("日期在指定范围内");
|
||||
result = true;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 迁移文件
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user