From fd5f5f8e45e5e4195694e34b6f7bf481e85bcabc Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Wed, 12 May 2021 11:40:09 +0800
Subject: [PATCH] 设备新增逻辑调整
---
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/service/impl/EquipmentServiceImpl.java | 101 +++++++++++++++++++-------------------------------
1 files changed, 38 insertions(+), 63 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 aab30ff..fe01021 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
@@ -21,6 +21,7 @@
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.utils.Func;
+import org.springblade.jfpt.alarm.service.IAlarmService;
import org.springblade.jfpt.alarm.vo.AlarmVO;
import org.springblade.jfpt.equipment.entity.Equipment;
import org.springblade.jfpt.equipment.mapper.EquipmentMapper;
@@ -29,6 +30,7 @@
import org.springblade.jfpt.equipment.vo.EquipmentVOS;
import org.springblade.jfpt.parcel.vo.ConditionVo;
import org.springblade.system.cache.SysCache;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -49,6 +51,9 @@
//时间差
private long TIME_DIFFERENCE = 24*3600*1000;
+
+ @Autowired
+ private IAlarmService iAlarmService;
@Override
public IPage<EquipmentVO> selectEquipmentPage(IPage<EquipmentVO> page, EquipmentVO equipment,List childList) {
@@ -151,28 +156,32 @@
*/
@Override
public Integer selectEquipmentCount(ConditionVo conditionVo) {
+ //更新设备状态
+ updateEquipmentDtype();
//先查询所有的设备
- List<EquipmentVO> equipmentVOS = baseMapper.listAlls();
- long time = new Date().getTime();
- int equipmentCount = 0;
- long hearbeat = 0;
- //遍历集合数据,对比心跳时间,得出在线的设备数量
- int status =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;
- }
- }
- }
+ Integer equipmentCount = baseMapper.selectEqCz();
+ System.out.println("equipmentCount = " + equipmentCount);
+// long time = new Date().getTime();
+// long hearbeat = 0;
+// //遍历集合数据,对比心跳时间,得出在线的设备数量
+// int status =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 (null!=e.getDtype()) {
+// if (time - hearbeat < TIME_DIFFERENCE && e.getDtype()!="2" && e.getDtype()!="3") {
+// equipmentCount += 1;
+// }
+// }
+// }
+// }
//返回数据
return equipmentCount;
}
@@ -200,8 +209,13 @@
baseMapper.updateExstate(dType, reason, deviceNumber);
}
if(state.equals("处理完成")){
- String dType = "1";
- baseMapper.updateExstate(dType, reason, deviceNumber);
+ //查询当前设备是否还存在其他报警
+ int eqCount = iAlarmService.selectEqCount(deviceNumber);
+ //只有一条记录时才去修改设备的状态
+ if (eqCount==1) {
+ String dType = "1";
+ baseMapper.updateExstate(dType, reason, deviceNumber);
+ }
}
}
@@ -231,43 +245,6 @@
*/
@Override
public Map<String, Object> selEqTypeSum() {
- //查詢之前先更新设备状态
- //查询所有的设备,不包含故障和警情状态
-// List<Equipment> equipment = baseMapper.selAllEq();
-// long time = new Date().getTime();
-// long hearbeat = 0;
-// List<Long> equipmentListz = new ArrayList<>();
-// List<Long> equipmentListl = new ArrayList<>();
-// for (Equipment e:equipment) {
-// 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){
-// if (null==e.getDtype() || e.getDtype()!="1"){
-// equipmentListz.add(e.getId());
-// }
-// }
-// if (time-hearbeat>=TIME_DIFFERENCE){
-// if (null==e.getDtype() || e.getDtype()!="0"){
-// equipmentListl.add(e.getId());
-// }
-// }
-// }
-//
-// System.out.println("equipmentListl = " + equipmentListl);
-// System.out.println("equipmentListz = " + equipmentListz);
-// //批量更新数据
-// if (equipmentListz.size()>0){
-// baseMapper.updateEqListz(equipmentListz);
-// }
-// if (equipmentListl.size()>0){
-// baseMapper.updateEqListl(equipmentListl);
-// }
//设备在线数量
Integer integerz = baseMapper.selectEqCz();
//设备掉线数量
@@ -312,15 +289,13 @@
equipmentListz.add(e.getId());
}
}
+ //不在线
if (time-hearbeat>=TIME_DIFFERENCE){
if (null==e.getDtype() || e.getDtype()!="0"){
equipmentListl.add(e.getId());
}
}
}
-
- System.out.println("equipmentListl = " + equipmentListl);
- System.out.println("equipmentListz = " + equipmentListz);
//批量更新数据
if (equipmentListz.size()>0){
baseMapper.updateEqListz(equipmentListz);
--
Gitblit v1.9.3