|
@@ -24,6 +24,8 @@ import org.springframework.stereotype.Service;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.time.ZoneOffset;
|
|
|
import java.util.*;
|
|
|
|
|
|
/**
|
|
@@ -396,22 +398,25 @@ public class TIeReportServiceImpl implements TIeReportService {
|
|
|
for (int i = interval; i <= scaleSize * interval; i = i + interval) {
|
|
|
timeSize.add(i);
|
|
|
}
|
|
|
- String currentDate = DateUtil.format(new Date(), Constants.DEFAULT_DATE_PATTERN);
|
|
|
+ LocalDateTime now = LocalDateTime.now();
|
|
|
+ Date date = Date.from(now.atZone(ZoneOffset.ofHours(8)).toInstant());
|
|
|
+ LocalDateTime minusDays = now.minusDays(1);
|
|
|
+ LocalDateTime minusMinutes = now.minusMinutes(scaleSize);
|
|
|
+
|
|
|
+ String currentDate = DateUtil.format(date, Constants.DEFAULT_DATE_PATTERN);
|
|
|
Map<String, String> map = this.getTimeScale(timeSize, currentDate);
|
|
|
|
|
|
+ Long longtimestamp = now.toInstant(ZoneOffset.ofHours(8)).toEpochMilli();
|
|
|
+ Long minusDayslongtimestamp = minusDays.toInstant(ZoneOffset.ofHours(8)).toEpochMilli();
|
|
|
+ Long minusMinuteslongtimestamp = minusMinutes.toInstant(ZoneOffset.ofHours(8)).toEpochMilli();
|
|
|
+
|
|
|
List<String> timeData = new ArrayList<>(map.values());
|
|
|
- List<TimeScaleDataResult> timeScaleDataResultList = tOeExamRecordMapper.getWarnTrend(tbUser.getOrgId(), timeData, currentDate, interval, scaleSize);
|
|
|
- List<TimeOnlineDataResult> timeOnlineDataResultList = tOeExamRecordMapper.getTimeOnlineData(tbUser.getOrgId(), timeData, currentDate, interval, scaleSize);
|
|
|
+ List<TimeScaleDataResult> timeScaleDataResultList = tOeExamRecordMapper.getWarnTrend(tbUser.getOrgId(), timeData, longtimestamp, interval, minusMinuteslongtimestamp);
|
|
|
+ List<TimeOnlineDataResult> timeOnlineDataResultList = tOeExamRecordMapper.getTimeOnlineData(tbUser.getOrgId(), timeData, longtimestamp, minusDayslongtimestamp);
|
|
|
if (!CollectionUtils.isEmpty(timeOnlineDataResultList) && !CollectionUtils.isEmpty(timeScaleDataResultList)
|
|
|
&& timeOnlineDataResultList.size() == timeScaleDataResultList.size()) {
|
|
|
-// int beforeOnlineCount = 0;
|
|
|
-// TimeScaleDataResult beforeScale = null;
|
|
|
for (int i = 0; i < timeOnlineDataResultList.size(); i++) {
|
|
|
TimeOnlineDataResult t = timeOnlineDataResultList.get(i);
|
|
|
-// if (i > 0) {
|
|
|
-// beforeScale = timeScaleDataResultList.get(i - 1);
|
|
|
-// beforeOnlineCount = beforeScale.getOnlineCount();
|
|
|
-// }
|
|
|
int onlineCount = t.getOnlineCount() - t.getOfflineCount();
|
|
|
onlineCount = onlineCount < 0 ? 0 : onlineCount;
|
|
|
timeScaleDataResultList.get(i).setOnlineCount(onlineCount);
|