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)) {