jiazx0107@163.com
2023-12-02 5bb3ad3944ff229baff1d8bb92caf55d816ee68b
src/main/java/com/fzzy/api/Constant.java
@@ -1,9 +1,15 @@
package com.fzzy.api;
import com.fzzy.api.data.ApiCommonDevice;
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 +313,52 @@
     */
    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 void updateCacheOnline(String sn, String ip, Integer port, boolean isCreate) {
        ApiCommonDevice device = getCommonDeviceCache(sn);
        if (null == device && isCreate) {
            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);
        }
    }
    public static void updateCacheOffline(String sn, String ip, Integer port, boolean isCreate) {
        ApiCommonDevice device = getCommonDeviceCache(sn);
        if (null == device && isCreate) {
            device = new ApiCommonDevice();
        }
        if (null != device) {
            device.setIp(ip);
            device.setPort(port);
            device.setStatus(Constant.YN_N);
            device.setCode("ERROR");
            device.setMsg("设备离线");
            contextDeviceMap.put(device.getSn(), device);
        }
    }
    public static void updateCache(ApiCommonDevice device) {
        contextDeviceMap.put(device.getSn(), device);
    }
}