From dda268997ca8f8a364f7c19b45d7a43a50a98efe Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期二, 25 十月 2022 18:00:11 +0800
Subject: [PATCH] changes
---
ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java | 499 ++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 457 insertions(+), 42 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
index 0f19ea5..2169fc5 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/MonitorService.java
@@ -1,61 +1,175 @@
package com.sandu.ximon.admin.service;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import cn.hutool.http.HttpUtil;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.sandu.common.domain.CommonPage;
import com.sandu.common.execption.BusinessException;
+import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
-import com.sandu.ximon.admin.param.BannerParam;
+import com.sandu.common.util.SpringContextHolder;
+import com.sandu.ximon.admin.dto.YSY_AccessTokenDto;
+import com.sandu.ximon.admin.dto.YSY_MonitorDto;
import com.sandu.ximon.admin.param.MonitorParam;
-import com.sandu.ximon.dao.domain.Banner;
+import com.sandu.ximon.admin.redis.DeviceRedisKey;
+import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.ListPagingUtils;
+import com.sandu.ximon.admin.utils.RedisUtils;
+import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
+import com.sandu.ximon.admin.vo.EquipmentInfomation;
+import com.sandu.ximon.admin.vo.RedisDeviceStatus;
+import com.sandu.ximon.dao.bo.MonitorBo;
import com.sandu.ximon.dao.domain.Monitor;
+import com.sandu.ximon.dao.domain.PoleBinding;
+import com.sandu.ximon.dao.enums.OrderByEnums;
+import com.sandu.ximon.dao.enums.PoleBindingEnums;
import com.sandu.ximon.dao.mapper.MonitorMapper;
import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
+import java.util.concurrent.CountDownLatch;
@Service
@AllArgsConstructor
+@Slf4j
public class MonitorService extends BaseServiceImpl<MonitorMapper, Monitor> {
private final MonitorMapper monitorMapper;
+ //钀ょ煶浜慉ppKey
+ private static final String AppKey = "51a534ebadf54c31a0848dc575dfa206";
+ //钀ょ煶浜� AppKey Secret
+ private static final String Secret = "8c32c67a73c87b9e461b2e3bdf58967a";
+
+ //钀ょ煶浜戝湴鍧�
+ private static final String YSY_URL = "https://open.ys7.com/api/lapp";
+ //鑾峰彇钀ょ煶浜慳ccessToken鍦板潃
+ private static final String ACCESSTOKEN_URL = "/token/get";
+ //娣诲姞钀ょ煶浜戞憚鍍忓ご
+ private static final String ADD_DEVICE_URL = "/device/add";
+ //鍒犻櫎钀ょ煶浜戞憚鍍忓ご
+ private static final String DELETE_DEVICE_URL = "/device/delete";
+ //鑾峰彇钀ょ煶浜戝崟涓澶囦俊鎭�
+ private static final String GET_DEVICE_URL = "/device/info";
+ //鑾峰彇钀ょ煶浜戞憚鍍忓ご鎾斁鍦板潃URL
+ private static final String GET_VEDIO_URL = "/v2/live/address/get";
+
+
+ private final PoleBindingService poleBindingService;
+
+ private final RedisUtils redisUtils;
/**
- * 鏌ヨ鍏ㄩ儴鎽勫儚澶�
+ * 鎽勫儚澶村垪琛ㄦā绯婃煡璇�
*/
- public List<Monitor> listMonitor() {
- LambdaQueryWrapper<Monitor> wrapper = Wrappers.lambdaQuery(Monitor.class);
- List<Monitor> list = list(wrapper);
+ public CommonPage listMonitorByKeyword(BaseConditionVO baseConditionVO, Integer order, Integer seq, MonitorParam monitorParam) {
+ //缁戝畾鐘舵�侊細宸茬粦瀹�/鏈粦瀹�/鍏ㄩ儴
+ if (monitorParam.getBindingState() == null) {
+ //鍏ㄩ儴
+ monitorParam.setBindingState(2);
+ }
+ //鎺掑簭瀛楁
+ String orderByResult = "id";
+ //姝e簭銆佸�掑彊
+ String orderBySeq = OrderByEnums.ASC.getCode();
+ if (order != null) {
+ switch (order) {
+ case 1:
+ orderByResult = OrderByEnums.MONITOR_POLE_NAME.getCode();
+ break;
+ case 2:
+ orderByResult = OrderByEnums.MONITOR_CREATE_TIME.getCode();
+ break;
+ default:
+ }
+ }
+ if (seq != null) {
+ switch (seq) {
+ case 1:
+ orderBySeq = " ASC";
+ break;
+ case 2:
+ orderBySeq = " DESC";
+ break;
+ default:
+ break;
+ }
+ }
+ //鎺掑簭鏂瑰紡
+ String orderBy = orderByResult + " " + orderBySeq;
- return list;
+ List<MonitorBo> list;
+ if (SecurityUtils.getClientId() == null) {
+ list = monitorMapper.listMonitorDeviceSerial1(null, monitorParam.getKeyword(), monitorParam.getBindingState(), orderBy);
+ } else {
+ list = monitorMapper.listMonitorDeviceSerial1(SecurityUtils.getUserId(), monitorParam.getKeyword(), monitorParam.getBindingState(), orderBy);
+ }
+
+ //娌℃湁鏁版嵁鏃跺�欑洿鎺ヨ繑鍥炵┖鏁扮粍
+ if (list.size() == 0 || list == null) {
+ return new CommonPage();
+ }
+ List<String> device_serialList = new ArrayList<>(list.size());
+ CountDownLatch latch = new CountDownLatch(list.size());
+ for (Monitor demo : list) {
+ device_serialList.add(demo.getDeviceSerial());
+ getMonitorInfo_Async(demo, latch);
+ }
+ try {
+ latch.await();
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+ if (monitorParam.getEquipmentState() == null) {
+ //鍏ㄩ儴
+ monitorParam.setEquipmentState(2);
+ }
+
+ List<MonitorBo> temp = new ArrayList<>();
+ if (monitorParam.getEquipmentState() == 2) {
+ temp.addAll(list);
+ } else {
+ for (MonitorBo monitorBo : list) {
+ //绛涢�夌姸鎬佹暟鎹�
+ if (monitorBo.getEquipmentState().equals(monitorParam.getEquipmentState())) {
+ temp.add(monitorBo);
+ }
+ }
+ }
+
+ if (baseConditionVO == null) {
+ baseConditionVO = new BaseConditionVO();
+ baseConditionVO.setPageSize(null);
+ baseConditionVO.setPageNo(null);
+ }
+ CommonPage commonPage = ListPagingUtils.pages(temp, baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+ return commonPage;
}
/**
- * 妯$硦鏌ヨ
+ * 鎽勫儚澶村垪琛ㄥ湴锛堢敤浜庨椤垫暟鎹粺璁★級
+ *
+ * @return
*/
- public List<Monitor> listMonitorByKeyword(MonitorParam monitorParam) {
- //璁惧鐘舵��:鍦ㄧ嚎/绂荤嚎/鍏ㄩ儴
- String equipmentState1;
- String equipmentState2;
- if ("鍏ㄩ儴".equals(monitorParam.getEquipmentState())) {
- equipmentState1 = "鍦ㄧ嚎";
- equipmentState2 = "绂荤嚎";
+ public List<MonitorBo> listMonitorOnHome() {
+
+ List<MonitorBo> list;
+ if (SecurityUtils.getClientId() == null) {
+ list = monitorMapper.listMonitorDeviceSerial1(null, null, 2, null);
} else {
- equipmentState1 = monitorParam.getEquipmentState();
- equipmentState2 = monitorParam.getEquipmentState();
+ list = monitorMapper.listMonitorDeviceSerial1(SecurityUtils.getUserId(), null, 2, null);
}
- //缁戝畾鐘舵�侊細宸茬粦瀹�/鏈粦瀹�/鍏ㄩ儴
- String bindingState1;
- String bindingState2;
- if ("鍏ㄩ儴".equals(monitorParam.getBindingState())) {
- bindingState1 = "宸茬粦瀹�";
- bindingState2 = "鏈粦瀹�";
- } else {
- bindingState1 = monitorParam.getBindingState();
- bindingState2 = monitorParam.getBindingState();
+ //娌℃湁鏁版嵁鏃跺�欑洿鎺ヨ繑鍥炵┖鏁扮粍
+ if (list == null) {
+ return new ArrayList<>();
}
- return monitorMapper.listMonitorByKeyword(monitorParam.getKeyword(), equipmentState1, equipmentState2, bindingState1, bindingState2);
+
+ return list;
}
/**
@@ -69,26 +183,327 @@
if (monitor == null) {
throw new BusinessException("鎵句笉鍒版憚鍍忓ご");
}
+ PoleBinding one = poleBindingService.getOne(Wrappers.lambdaQuery(PoleBinding.class).eq(PoleBinding::getDeviceCode, monitor.getDeviceSerial()));
+ if (one != null) {
+ //鍒犻櫎鎽勫儚澶磋澶囧墠闇�瑕佸厛瑙g粦
+ poleBindingService.unBindPole(null, monitor.getDeviceSerial());
+ }
+ /**
+ * 鍒犻櫎鎽勫儚澶存棩蹇楄褰曞紑濮�
+ */
+ String content = "{鎽勫儚澶碈ode锛�" + monitor.getDeviceSerial() + "锛� 鎽勫儚澶村悕绉帮細" + monitor.getDeviceName() + " }";
+ List<String> listCode = new ArrayList<>();
+ listCode.add(monitor.getDeviceSerial());
+ StoreOperationRecordsUtils.storeOperationData(listCode, null, "鍒犻櫎鎽勫儚澶�", content);
+ /**
+ * 鍒犻櫎鎽勫儚澶存棩蹇楄褰曠粨鏉�
+ */
return removeById(Id);
}
/**
- * 缂栬緫鎽勫儚澶�
- * @param Id
- * @param monitorParam
+ * 鑾峰彇钀ょ煶浜慳ccessToken
+ */
+
+ public String getAccessToken() {
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("appKey", AppKey);
+ paramMap.put("appSecret", Secret);
+ String s = HttpUtil.post(YSY_URL + ACCESSTOKEN_URL, paramMap);
+ if (!s.startsWith("{") || !s.endsWith("}")) {
+ log.error("鑾峰彇鎽勫儚澶磘oken澶辫触,鏍煎紡鏈夎!");
+ }
+ YSY_AccessTokenDto accessTokenDto = JSON.parseObject(s, YSY_AccessTokenDto.class);
+
+ //浜屾鑾峰彇
+ if(accessTokenDto == null){
+ log.error("鑾峰彇鎽勫儚澶磘oken澶辫触,鏍煎紡鏈夎!");
+ s = HttpUtil.post(YSY_URL + ACCESSTOKEN_URL, paramMap);
+ accessTokenDto = JSON.parseObject(s, YSY_AccessTokenDto.class);
+ }
+ return accessTokenDto.getData().getAccessToken();
+ }
+
+
+ /**
+ * 鑾峰彇钀ょ煶浜戞憚鍍忓ご淇℃伅(寮傛)
+ *
* @return
*/
- public boolean updateBanner(Long Id, MonitorParam monitorParam) {
- Monitor monitor = getById(Id);
- if (monitor == null) {
- throw new BusinessException("鎵句笉鍒版憚鍍忓ご");
- }
- Monitor update = new Monitor();
- update.setId(Id);
- update.setSerialNumber(monitorParam.());
- update.setBannerUrl(bannerParam.getUrl());
- update.setId(bannerId);
- return updateById(update);
+ public void getMonitorInfo_Async(Monitor monitor, CountDownLatch countDownLatch) {
+ Thread t = new Thread() {
+ @Override
+ public void run() {
+ String token = getAccessToken();
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", token);
+ paramMap.put("deviceSerial", monitor.getDeviceSerial());
+ String s = HttpUtil.post(YSY_URL + GET_DEVICE_URL, paramMap);
+ YSY_MonitorDto monitorDto = null;
+ try {
+ monitorDto = JSON.parseObject(s, YSY_MonitorDto.class);
+ System.out.println(s + " ----------");
+ monitor.setEquipmentState(monitorDto.getData().getStatus());
+ countDownLatch.countDown();
+ } catch (Exception e) {
+ monitor.setEquipmentState(0);
+ countDownLatch.countDown();
+ }
+ }
+ };
+ t.start();
+
}
+ /**
+ * 鑾峰彇钀ょ煶浜戞憚鍍忓ご淇℃伅 鏃犻渶楠岃瘉accessToken
+ *
+ * @return
+ */
+ public EquipmentInfomation getMonitorInfo(String deviceSerial) {
+ EquipmentInfomation equipmentInfo = new EquipmentInfomation();
+ equipmentInfo.setEquipmentType("鎽勫儚澶�");
+ if (deviceSerial == null || deviceSerial.trim().length() == 0) {
+ return equipmentInfo;
+ }
+
+ Monitor one = getOne(Wrappers.lambdaQuery(Monitor.class).eq(Monitor::getDeviceSerial, deviceSerial));
+ if (one != null) {
+ equipmentInfo.setEquipmentCreateTime(one.getAddTime());
+ equipmentInfo.setEquipmentMac(one.getDeviceSerial());
+ equipmentInfo.setEquipmentName(one.getDeviceName());
+ }
+
+ String token = getAccessToken();
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", token);
+ paramMap.put("deviceSerial", deviceSerial);
+ String s = HttpUtil.post(YSY_URL + GET_DEVICE_URL, paramMap);
+
+ try {
+ YSY_MonitorDto monitorDto = JSON.parseObject(s, YSY_MonitorDto.class);
+ if (monitorDto != null) {
+ //鍦ㄧ嚎鐘舵�侊細0-涓嶅湪绾匡紝1-鍦ㄧ嚎
+ if (monitorDto.getData().getStatus() == 1) {
+ equipmentInfo.setEquipmentState("鍦ㄧ嚎");
+ } else {
+ equipmentInfo.setEquipmentState("绂荤嚎");
+ }
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ return equipmentInfo;
+ }
+
+ /**
+ * 娣诲姞钀ょ煶浜戞憚鍍忓ご
+ *
+ * @param deviceSerial 璁惧搴忓垪鍙�,瀛樺湪鑻辨枃瀛楁瘝鐨勮澶囧簭鍒楀彿锛屽瓧姣嶉渶涓哄ぇ鍐�
+ * // * @param validateCode 璁惧楠岃瘉鐮侊紝璁惧鏈鸿韩涓婄殑鍏綅澶у啓瀛楁瘝
+ */
+ public boolean addYSYMonitor(String deviceSerial, String validateCode) {
+ List<Monitor> list = list(Wrappers.lambdaQuery(Monitor.class).eq(Monitor::getDeviceSerial, deviceSerial));
+ if (list.size() != 0) {
+ throw new BusinessException("璇ユ憚鍍忓ご宸插瓨鍦紝鏃犳硶閲嶅娣诲姞锛�");
+ }
+
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", getAccessToken());
+ paramMap.put("deviceSerial", deviceSerial);
+ if (validateCode != null && validateCode.trim().length() != 0) {
+ paramMap.put("validateCode", validateCode);
+ }
+ String s = HttpUtil.post(YSY_URL + ADD_DEVICE_URL, paramMap);
+ if (!s.startsWith("{") && !s.endsWith("}")) {
+ throw new BusinessException("钀ょ煶浜戞暟鎹紓甯�");
+ }
+
+ YSY_MonitorDto monitorDto = JSON.parseObject(s, YSY_MonitorDto.class);
+
+ boolean result;
+ if ("20017".equals(monitorDto.getCode())) {
+ //褰撳墠鎽勫儚澶村凡缁忚钀ょ煶浜戝畼缃戞坊鍔犺繃,Code:20017
+ monitorDto = getYSYMonitorInfo(getAccessToken(), deviceSerial);
+
+ } else if (!"200".equals(monitorDto.getCode())) {
+ //褰撳墠鎽勫儚澶存垚鍔熻钀ょ煶浜戝畼缃戞坊鍔�,Code:200
+ throw new BusinessException(monitorDto.getMsg());
+ }
+
+ if (monitorDto.getData() == null) {
+ throw new BusinessException("钀ょ煶浜戞暟鎹紓甯革紒");
+ }
+ Monitor monitor = new Monitor();
+ monitor.setDeviceSerial(monitorDto.getData().getDeviceSerial());
+ monitor.setDevicesCode(validateCode);
+ monitor.setDeviceName(monitorDto.getData().getDeviceName());
+ monitor.setEquipmentState(monitorDto.getData().getStatus());
+ monitor.setIsEncrypt(monitorDto.getData().getIsEncrypt());
+ monitor.setDeviceType(monitorDto.getData().getModel());
+ monitor.setNetAddress(monitorDto.getData().getNetAddress());
+ result = addMonitorInfoToTable(monitor);
+
+ /**
+ * 鏂板鎽勫儚澶村紑濮�
+ */
+ String content = "{鎽勫儚澶碈ode锛�" + monitor.getDeviceSerial() + "锛� 鎽勫儚澶村悕绉帮細" + monitor.getDeviceName() + " }";
+ List<String> listCode = new ArrayList<>();
+ listCode.add(monitor.getDeviceSerial());
+ StoreOperationRecordsUtils.storeOperationData(listCode, null, "鏂板鎽勫儚澶�", content);
+ /**
+ * 鏂板鎽勫儚澶寸粨鏉�
+ */
+ return result;
+ }
+
+ /**
+ * 鑾峰彇钀ょ煶浜戞憚鍍忓ご鍗曚釜璁惧淇℃伅
+ *
+ * @param accessToken 鎺堟潈杩囩▼鑾峰彇鐨刟ccess_token
+ * @param deviceSerial 璁惧搴忓垪鍙�,瀛樺湪鑻辨枃瀛楁瘝鐨勮澶囧簭鍒楀彿锛屽瓧姣嶉渶涓哄ぇ鍐�
+ */
+ public YSY_MonitorDto getYSYMonitorInfo(String accessToken, String deviceSerial) {
+
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", accessToken);
+ paramMap.put("deviceSerial", deviceSerial);
+ String s = HttpUtil.post(YSY_URL + GET_DEVICE_URL, paramMap);
+ System.out.println(s);
+ YSY_MonitorDto monitor = JSON.parseObject(s, YSY_MonitorDto.class);
+ return monitor;
+ }
+
+ /**
+ * 灏嗘憚鍍忓ご璁惧鐩稿叧淇℃伅瀛樺偍鍒版暟鎹簱
+ *
+ * @param monitor 鎽勫儚澶村璞�
+ * @return
+ */
+ public boolean addMonitorInfoToTable(Monitor monitor) {
+ Monitor one = getOne(Wrappers.lambdaQuery(Monitor.class).eq(Monitor::getDeviceSerial, monitor.getDeviceSerial()));
+ if (one == null) {
+ return save(monitor);
+ } else {
+ monitor.setId(one.getId());
+ return updateById(monitor);
+ }
+ }
+
+ /**
+ * 杩斿洖鎽勫儚澶村疄鏃剁敾闈㈡挱鏀惧湴鍧�
+ *
+ * @param accessToken
+ * @param deviceSerial
+ * @return
+ */
+ public String getMonitorVideoUrl(String accessToken, String deviceSerial, int protocol, int expireTime) {
+ if (expireTime < 30 || expireTime > 62208000) {
+ throw new BusinessException("璁剧疆鐨刄RL鎾斁鍦板潃杩囨湡鏃堕暱鏁版嵁閿欒");
+ }
+ Map<String, Object> paramMap = new HashMap<>();
+ paramMap.put("accessToken", accessToken);
+ paramMap.put("deviceSerial", deviceSerial);
+ paramMap.put("protocol", protocol);
+ paramMap.put("expireTime", expireTime);
+ String s = HttpUtil.post(YSY_URL + GET_VEDIO_URL, paramMap);
+ System.out.println(s);
+ YSY_MonitorDto monitor = JSON.parseObject(s, YSY_MonitorDto.class);
+ if ("200".equals(monitor.getCode())) {
+ return monitor.getData().getUrl();
+ } else {
+ throw new BusinessException(monitor.getMsg());
+ }
+ }
+
+ /**
+ * 淇敼璁惧缁戝畾鐘舵��
+ *
+ * @param flag true涓虹粦瀹� false 涓鸿В缁�
+ */
+ public void updateBingdingState(boolean flag, String deviceCode) {
+ if (flag) {//缁戝畾
+ Monitor monitor = getOne(Wrappers.lambdaQuery(Monitor.class).eq(Monitor::getDeviceSerial, deviceCode));
+ if (monitor == null) {
+ return;
+ }
+ monitor.setBindingState(1);
+ updateById(monitor);
+ } else {//瑙g粦
+ Monitor monitor = getOne(Wrappers.lambdaQuery(Monitor.class).eq(Monitor::getDeviceSerial, deviceCode));
+ if (monitor == null) {
+ return;
+ }
+ monitor.setBindingState(0);
+ updateById(monitor);
+ }
+ }
+
+
+ /**
+ * 淇敼note
+ *
+ * @param deviceSerial
+ * @param notes
+ * @return
+ */
+ public boolean updateNotes(String deviceSerial, String notes) {
+ if (deviceSerial == null || deviceSerial.trim().length() == 0 || notes == null) {
+ throw new BusinessException("淇敼澶囨敞鍙傛暟鏈夎锛�");
+ }
+ Monitor one = getOne(Wrappers.lambdaQuery(Monitor.class).eq(Monitor::getDeviceSerial, deviceSerial));
+
+ boolean belong = SpringContextHolder.getBean(PoleBindingService.class).isBelong(one.getDeviceSerial(), PoleBindingEnums.MONITOR);
+ if (!belong) {
+ throw new BusinessException("璇ヨ澶囦笉灞炰簬鎮�,涓嶈兘淇敼璁惧淇℃伅");
+ }
+ if (one != null) {
+ one.setNote(notes);
+
+ /**
+ * 娣诲姞鎽勫儚澶村娉ㄦ棩蹇楄褰曞紑濮�
+ */
+ String content = "缂栬緫鎽勫儚澶达細" + deviceSerial + "缂栬緫鍐呭锛�" + notes;
+ List<String> list = new ArrayList<>();
+ list.add(deviceSerial);
+ StoreOperationRecordsUtils.storeOperationData(list, null, "缂栬緫鎽勫儚澶�", content);
+ /**
+ * 娣诲姞鎽勫儚澶村娉ㄦ棩蹇楄褰曠粨鏉�
+ */
+ return updateById(one);
+ } else {
+ throw new BusinessException("鎽勫儚澶磋澶囦笉瀛樺湪锛�");
+ }
+ }
+
+
+ /**
+ * 鍚慠edis涓瓨鍏ヨ澶囩姸鎬�
+ */
+ public void setCacheData() {
+ list().forEach(
+ device -> {
+ RedisDeviceStatus deviceStatus = new RedisDeviceStatus();
+ deviceStatus.setDeviceId(device.getDeviceSerial());
+ if (device != null) {
+ EquipmentInfomation monitorInfo = getMonitorInfo(device.getDeviceSerial());
+ if (monitorInfo != null) {
+ if ("鍦ㄧ嚎".equals(monitorInfo.getEquipmentState())) {
+ deviceStatus.setStatus(0);
+ } else {
+ deviceStatus.setStatus(1);
+ }
+
+ } else {
+ deviceStatus.setStatus(1);
+ }
+ }
+ redisUtils.set(DeviceRedisKey.MONITOR + device.getDeviceSerial(), JSON.toJSONString(deviceStatus));
+// redisUtils.delete(DeviceRedisKey.MONITOR + device.getDeviceSerial());
+ }
+ );
+
+ }
+
+
}
--
Gitblit v1.9.3