From a69402c8b67d8ce4b698d0c394d15ff43b5d99d0 Mon Sep 17 00:00:00 2001 From: jiazx0107@163.com <jiazx0107@163.com> Date: 星期四, 14 十二月 2023 23:17:41 +0800 Subject: [PATCH] 提交正来电子协议解析-3 --- src/main/java/com/fzzy/api/Constant.java | 64 ++++++++++++++++++++++++++++++++ 1 files changed, 64 insertions(+), 0 deletions(-) diff --git a/src/main/java/com/fzzy/api/Constant.java b/src/main/java/com/fzzy/api/Constant.java index 981ae0e..78701d7 100644 --- a/src/main/java/com/fzzy/api/Constant.java +++ b/src/main/java/com/fzzy/api/Constant.java @@ -1,9 +1,16 @@ package com.fzzy.api; +import com.fzzy.api.data.ApiCommonDevice; + +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + /** * 鍏ㄥ眬闈欐�佺被 */ public class Constant { + public static final String DEFAULT_CODE = "0"; public static final String YN_N = "N"; @@ -307,4 +314,61 @@ */ public static final String DEFAULT_USER_PASSWORD = "123456"; + + /** + * 鍐呭瓨鏁版嵁缂撳瓨锛岀敤浜庡瓨鍌ㄥ嚭鍏ュ簱鐩稿叧鐨勪复鏃朵俊鎭紝濡傚埛鍗¤澶囧綋鍓嶆渶鏂版暟鎹瓑銆� + */ + public static Map<String, ApiCommonDevice> contextDeviceMap = new HashMap<>(); + + public static ApiCommonDevice getCommonDeviceCache(String sn) { + if (null == sn) return null; + return contextDeviceMap.get(sn); + } + + public static ApiCommonDevice getCommonDeviceCacheByIp(String ip) { + if (null == ip) return null; + + if (contextDeviceMap.isEmpty()) return null; + + for (ApiCommonDevice device : contextDeviceMap.values()) { + if (ip.equals(device)) 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.setOnlineTime(new Date()); + contextDeviceMap.put(device.getSn(), device); + return device; + } + + public static ApiCommonDevice updateCacheOffline(String ip, Integer port) { + ApiCommonDevice device = getCommonDeviceCacheByIp(ip); + + if (null == device) { + return null; + } + 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); + } } -- Gitblit v1.9.3