功能调整

This commit is contained in:
xy
2025-07-16 17:50:53 +08:00
parent 030384333e
commit 45846e1889
2 changed files with 28 additions and 5 deletions

View File

@@ -55,6 +55,7 @@ import java.text.DecimalFormat;
import java.time.Duration;
import java.time.LocalDateTime;
import java.time.ZoneId;
import java.time.format.DateTimeFormatter;
import java.time.temporal.ChronoUnit;
import java.util.*;
import java.util.stream.Collectors;
@@ -234,7 +235,7 @@ public class DataServiceImpl implements IDataService {
commonQueryParam.setColumnName("Apf_ModWorkingSts");
commonQueryParam.setResultName("value");
commonQueryParam.setTableName("apf_data");
commonQueryParam.setStartTime(param.getEndTime()+" 00:00:00");
commonQueryParam.setStartTime(param.getStartTime()+" 00:00:00");
commonQueryParam.setEndTime(param.getEndTime()+" 23:59:59");
commonQueryParam.setLineId(param.getLineId());
commonQueryParam.setDataType("Apf_ModType");
@@ -342,8 +343,22 @@ public class DataServiceImpl implements IDataService {
EachModuleVO.HarmonicVo last = dataList.get(dataList.size() - 1);
moduleVO.setModuleState(last.getStateDesc());
//如果模块掉线超过30分钟则续上数据
int timeCompare = compareWithCurrentTime(commonQueryParam.getEndTime());
LocalDateTime currentTime;
switch (timeCompare) {
case -1:
case 0:
currentTime = LocalDateTime.now();
break;
case 1:
currentTime = LocalDateTime.parse(commonQueryParam.getEndTime(), DatePattern.NORM_DATETIME_FORMATTER);
break;
default:
currentTime = LocalDateTime.now();
System.out.println("比较失败");
}
LocalDateTime givenTime = last.getTime();
LocalDateTime currentTime = LocalDateTime.now();
Duration duration = Duration.between(givenTime, currentTime);
boolean isMoreThan30Minutes = duration.toMinutes() > 30;
if (isMoreThan30Minutes) {
@@ -408,6 +423,17 @@ public class DataServiceImpl implements IDataService {
return result;
}
public int compareWithCurrentTime(String timeString) {
// 定义日期时间格式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
// 解析字符串时间为LocalDateTime对象
LocalDateTime specifiedTime = LocalDateTime.parse(timeString, formatter);
// 获取当前时间
LocalDateTime currentTime = LocalDateTime.now();
// 比较两个时间
return currentTime.compareTo(specifiedTime);
}
public ReqAndResDto.Req askApfModuleData(Integer mid, Integer clDId, Integer idx) {
ReqAndResDto.Req reqAndResParam = new ReqAndResDto.Req();

View File

@@ -112,7 +112,6 @@ public class StatisticsDataDataServiceImpl implements IStatisticsDataDataService
List<CsLineLatestData> list3 = csLineLatestDataFeignClient.listData().getData();
equipmentDeliveryList.forEach(dev->{
List<CsLinePO> list = devMap.get(dev.getId());
if (CollectionUtil.isNotEmpty(list)) {
list.forEach(line->{
DevDetailDTO dto = csLedgerFeignClient.queryDevDetail(dev.getId()).getData();
@@ -157,10 +156,8 @@ public class StatisticsDataDataServiceImpl implements IStatisticsDataDataService
});
}
});
}
}
}
return result;
}