From b1c572949997a5d82d9b609163ff280a1c49627d Mon Sep 17 00:00:00 2001 From: vince <757871790@qq.com> Date: 星期五, 26 四月 2024 14:09:45 +0800 Subject: [PATCH] 粮情协议优化 --- src/main/java/com/fzzy/api/Constant.java | 42 ++++++++++++++++++++++++++++++++++++++---- 1 files changed, 38 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/fzzy/api/Constant.java b/src/main/java/com/fzzy/api/Constant.java index 6c17aee..dfd9eb2 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,6 +325,7 @@ public static ApiCommonDevice getCommonDeviceCache(String sn) { if (null == sn) return null; + //log.info("鍦ㄧ嚎璁惧锛�" + JSON.toJSONString(contextDeviceMap)); return contextDeviceMap.get(sn); } @@ -328,11 +333,39 @@ if (null == ip) return null; if (contextDeviceMap.isEmpty()) return null; - + //log.info("鍦ㄧ嚎璁惧锛�" + JSON.toJSONString(contextDeviceMap)); for (ApiCommonDevice device : contextDeviceMap.values()) { - if (ip.equals(device)) return device; + 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(); + } + device.setIp(ip); + device.setPort(port); + device.setStatus(Constant.YN_Y); + device.setCode("SUCCESS"); + device.setMsg("璁惧涓婄嚎"); + device.setSn(device.getSn()); + device.setId(device.getId()); + device.setOnlineTime(new Date()); + contextDeviceMap.put(device.getIp(), device); + log.info("璁惧涓婄嚎锛�" + ip); + return device; } public static ApiCommonDevice updateCacheOffline(String ip, Integer port) { @@ -346,12 +379,13 @@ device.setStatus(Constant.YN_N); device.setCode("ERROR"); device.setMsg("璁惧绂荤嚎"); - contextDeviceMap.put(device.getSn(), device); + device.setId(device.getId()); + contextDeviceMap.put(device.getIp(), device); return device; } public static void updateCache(ApiCommonDevice device) { - contextDeviceMap.put(device.getSn(), device); + contextDeviceMap.put(device.getIp(), device); } } -- Gitblit v1.9.3