From c8a4f3f8327b4a2290d719503211adb8845e6fd8 Mon Sep 17 00:00:00 2001 From: vince <757871790@qq.com> Date: 星期二, 19 十二月 2023 14:37:08 +0800 Subject: [PATCH] 优化代码,增加仓温仓湿度 --- src/main/java/com/fzzy/api/Constant.java | 76 +++++++++++++++++++++++++------------- 1 files changed, 50 insertions(+), 26 deletions(-) diff --git a/src/main/java/com/fzzy/api/Constant.java b/src/main/java/com/fzzy/api/Constant.java index b38f697..3d0c911 100644 --- a/src/main/java/com/fzzy/api/Constant.java +++ b/src/main/java/com/fzzy/api/Constant.java @@ -1,13 +1,17 @@ package com.fzzy.api; +import com.alibaba.fastjson.JSON; import com.fzzy.api.data.ApiCommonDevice; +import lombok.extern.slf4j.Slf4j; +import java.util.Date; import java.util.HashMap; import java.util.Map; /** * 鍏ㄥ眬闈欐�佺被 */ +@Slf4j public class Constant { @@ -321,44 +325,64 @@ public static ApiCommonDevice getCommonDeviceCache(String sn) { if (null == sn) return null; + log.info("鍦ㄧ嚎璁惧锛�" + JSON.toJSONString(contextDeviceMap)); return contextDeviceMap.get(sn); } - public static void updateCacheOnline(String sn, String ip, Integer port, boolean isCreate) { - ApiCommonDevice device = getCommonDeviceCache(sn); - if (null == device && isCreate) { + public static ApiCommonDevice getCommonDeviceCacheByIp(String ip) { + if (null == ip) return null; + + if (contextDeviceMap.isEmpty()) return null; + log.info("鍦ㄧ嚎璁惧锛�" + JSON.toJSONString(contextDeviceMap)); + for (ApiCommonDevice device : contextDeviceMap.values()) { + if (ip.equals(device.getIp())) return device; + } + return null; + } + public static ApiCommonDevice getCommonDeviceCacheBySn(String sn) { + if (null == sn) return null; + + if (contextDeviceMap.isEmpty()) return null; + log.info("鍦ㄧ嚎璁惧锛�" + JSON.toJSONString(contextDeviceMap)); + for (ApiCommonDevice device : contextDeviceMap.values()) { + if (sn.equals(device.getSn())) return device; + } + return null; + } + public static ApiCommonDevice updateCacheOnline(String ip, Integer port) { + ApiCommonDevice device = getCommonDeviceCacheByIp(ip); + + if (null == device) { device = new ApiCommonDevice(); } - if (null != device) { - device.setIp(ip); - device.setPort(port); - device.setStatus(Constant.YN_Y); - device.setCode("SUCCESS"); - device.setMsg("璁惧鍦ㄧ嚎"); - device.setSn(ip); - contextDeviceMap.put(device.getSn(), device); - } + device.setIp(ip); + device.setPort(port); + device.setStatus(Constant.YN_Y); + device.setCode("SUCCESS"); + device.setMsg("璁惧涓婄嚎"); + device.setOnlineTime(new Date()); + contextDeviceMap.put(device.getIp(), device); + log.info("璁惧涓婄嚎锛�" + ip); + return device; } - public static void updateCacheOffline(String sn, String ip, Integer port, boolean isCreate) { - ApiCommonDevice device = getCommonDeviceCache(sn); + public static ApiCommonDevice updateCacheOffline(String ip, Integer port) { + ApiCommonDevice device = getCommonDeviceCacheByIp(ip); - if (null == device && isCreate) { - device = new ApiCommonDevice(); + if (null == device) { + return null; } + device.setIp(ip); + device.setPort(port); + device.setStatus(Constant.YN_N); + device.setCode("ERROR"); + device.setMsg("璁惧绂荤嚎"); + contextDeviceMap.put(device.getIp(), device); - if (null != device) { - device.setIp(ip); - device.setPort(port); - device.setStatus(Constant.YN_N); - device.setCode("ERROR"); - device.setMsg("璁惧绂荤嚎"); - - contextDeviceMap.put(device.getSn(), device); - } + return device; } public static void updateCache(ApiCommonDevice device) { - contextDeviceMap.put(device.getSn(), device); + contextDeviceMap.put(device.getIp(), device); } } -- Gitblit v1.9.3