From 6c2aaec49cb2b76cabac43d168230f6622bca772 Mon Sep 17 00:00:00 2001 From: huangfeng Date: Mon, 20 May 2024 16:43:22 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E6=AD=A3=E8=BF=90=E7=BB=B4?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E7=9A=84=E5=BF=83=E8=B7=B3=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../xymanager_common/entity/MntnStatus.java | 23 +++++++++++++++++++ .../xymanager_common/util/RawReportUtil.java | 2 ++ .../xymanager_common/vo/TerminalSelectVo.java | 3 +++ .../impl/TerminalExtServiceImpl.java | 10 +++++++- 4 files changed, 37 insertions(+), 1 deletion(-) diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/MntnStatus.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/MntnStatus.java index 686b39b..817a360 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/MntnStatus.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/entity/MntnStatus.java @@ -1,7 +1,11 @@ package com.shxy.xymanager_common.entity; +import cn.hutool.core.date.DateTime; +import cn.hutool.core.date.DateUnit; import com.alibaba.excel.util.StringUtils; +import com.shxy.xymanager_common.util.MyDateUtils; import com.shxy.xymanager_common.util.RawReportUtil; +import com.shxy.xymanager_common.util.xinyin.TerminalUtils; import com.shxy.xymanager_common.vo.TerminalSelectVo; import java.util.Date; @@ -397,8 +401,27 @@ public class MntnStatus { } } } + if (vo.getIsonline() != null) { + if (vo.getIsonline().equals(this.getOnlinestatus())) { + return true; + } + } } return false; } + public Integer getOnlinestatus() { + if (rawReportTime == null) { + return 0; + } + long time = MyDateUtils.TimeSecond2MillSecond(rawReportTime); + DateTime date = MyDateUtils.date(time); + long between = MyDateUtils.between(MyDateUtils.getNowDate(), date, DateUnit.MINUTE); + if (between > TerminalUtils.hearttime) { + return 0; + } else { + return 1; + } + } + } \ No newline at end of file diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/util/RawReportUtil.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/util/RawReportUtil.java index d8e42f4..dad4fb3 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/util/RawReportUtil.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/util/RawReportUtil.java @@ -69,6 +69,8 @@ public class RawReportUtil { map.put("batteryTmp", str.replaceFirst("电池温度:", "")); } else if (str.startsWith("剩余存储空间:")) { map.put("freeROM", str.replaceFirst("剩余存储空间:", "")); + } else if (str.startsWith("剩余空间:")) { + map.put("freeROM", str.replaceFirst("剩余空间:", "")); } } } diff --git a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalSelectVo.java b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalSelectVo.java index 45431aa..988d8db 100644 --- a/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalSelectVo.java +++ b/xymanager_common/src/main/java/com/shxy/xymanager_common/vo/TerminalSelectVo.java @@ -63,6 +63,9 @@ public class TerminalSelectVo { if (StringUtils.isNotBlank(oid)) { return true; } + if (isonline != null) { + return true; + } return false; } } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalExtServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalExtServiceImpl.java index 5adc28f..7632f16 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalExtServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/TerminalExtServiceImpl.java @@ -128,7 +128,10 @@ public class TerminalExtServiceImpl implements TerminalExtService { @Override public List getExtTerminalList(TerminalSelectVo vo) { + Integer online = vo.getIsonline(); + vo.setIsonline(null); PageInfo page = this.getTerminalList(vo); + vo.setIsonline(online); List result = this.fillReport(page.getList(), vo); return result; } @@ -138,7 +141,12 @@ public class TerminalExtServiceImpl implements TerminalExtService { List result = new ArrayList<>(); for (View_Dy_Line_Tower_Terminals item : list) { MntnStatus status = statusMapper.selectByPrimaryKey(item.getId()); - item.setMntnStatus(status); + if (status != null) { + item.setMntnStatus(status); + if (status.getRawReportTime() != null) { + item.setLastHeartbeat(BigInteger.valueOf(status.getRawReportTime())); + } + } if (vo.needMatch()) { if (status != null) { if (status.match(vo)) {