From f34a510629676ebf22d75bde2e89e2fe4a2f56be Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Wed, 24 Mar 2021 18:22:52 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java | 61 +++++++++++++++++++++++++++++-
1 files changed, 59 insertions(+), 2 deletions(-)
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java
index f78e791..f71df96 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java
@@ -27,8 +27,12 @@
import org.springblade.jfpt.equipment.service.IEquipmentService;
import org.springblade.jfpt.equipment.vo.EquipmentVO;
import org.springblade.jfpt.equipment.vo.EquipmentVOS;
+import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -42,16 +46,28 @@
public class EquipmentServiceImpl extends ServiceImpl<EquipmentMapper, Equipment> implements IEquipmentService {
private static final String PARENT_ID = "parentId";
+ //时间差
+ private long TIME_DIFFERENCE = 24*3600*1000;
+
@Override
- public IPage<EquipmentVO> selectEquipmentPage(IPage<EquipmentVO> page, EquipmentVO equipment) {
- return page.setRecords(baseMapper.selectEquipmentPage(page,equipment));
+ public IPage<EquipmentVO> selectEquipmentPage(IPage<EquipmentVO> page, EquipmentVO equipment,List childList) {
+ return page.setRecords(baseMapper.selectEquipmentPage(page,equipment,childList));
}
+ @Override
+ public IPage<EquipmentVO> selectPage(IPage<EquipmentVO> page, EquipmentVO equipment,String pid) {
+ return page.setRecords(baseMapper.selectEquipmentPage(page,equipment,null));
+ }
@Override
public List<EquipmentVOS> tree() {
return ForestNodeMerger.merge(baseMapper.tree());
+ }
+
+ @Override
+ public List<EquipmentVO> listAll() {
+ return baseMapper.listAll();
}
@Override
@@ -107,4 +123,45 @@
baseMapper.updateChannel(heartbeat, deviceNumber);
}
+ /**
+ * 查询在线设备总数
+ * @param status 状态码 0:本日 1:本周 2:本月
+ * @return
+ */
+ @Override
+ public Integer selectEquipmentCount(Integer status) {
+ //先查询所有的设备
+ List<EquipmentVO> equipmentVOS = baseMapper.listAll();
+ long time = new Date().getTime();
+ int equipmentCount = 0;
+ long hearbeat = 0;
+ //遍历集合数据,对比心跳时间,得出在线的设备数量
+ if (status==0 && equipmentVOS.size()>0){
+ for (EquipmentVO e:equipmentVOS) {
+ try {
+ if(null!=e.getHeartbeat()) {
+ hearbeat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(e.getHeartbeat()).getTime();
+ }
+ } catch (ParseException parseException) {
+ parseException.printStackTrace();
+ }
+ //对比心跳时间
+ if (time-hearbeat<TIME_DIFFERENCE){
+ equipmentCount+=1;
+ }
+ }
+ }
+ //返回数据
+ return equipmentCount;
+ }
+
+ @Override
+ public void updateexpireTime(String expireTime, String deviceNumber) {
+ baseMapper.updateexpireTime(expireTime,deviceNumber);
+ }
+
+ @Override
+ public void updateExstate(String state, String reason, String deviceNumber) {
+ baseMapper.updateExstate(state, reason, deviceNumber);
+ }
}
--
Gitblit v1.9.3