package com.fzzy.protocol.sdkhk; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.io.File; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * 工具类 */ @Component public class HKUtils { /** * 设备是否在线,key = deviceId,value = Y、N */ public static Map contextOnlineMap = new HashMap<>(); //验证是否为历史数据 10分钟 public static long CHECK_TIME = 30 * 60 * 1000; //SDK 绝对路径地址 public static String SDK_DIR_WIN = "D:\\IGDS\\SDK\\hk-win64"; //SDK 绝对路径地址 public static String SDK_DIR_LINUX = "usr/app/data"; //图片地址 -{yyyyMM} 为表达式 public static String IMG_DIR_WIN = "D:\\IGDS\\INOUT\\{yyyyMM}\\"; //图片地址 -{yyyyMM} 为表达式 public static String IMG_DIR_LINUX = "usr/app/data/IGDS/INOUT/{yyyyMM}/"; //日志目录 public static String LOG_DIR_WIN = "D:\\IGDS\\log-hk\\"; //日志目录 public static String LOG_DIR_LINUX = "usr/app/data/log-hk/"; public static String RESULT_SUCCESS = "SUCCESS"; /** * 获取LOG日志目录, * * @param isLinux 是否Linux * 系统 * @return */ public static String getLogBasePath(boolean isLinux) { String base = LOG_DIR_WIN; if (isLinux) base = LOG_DIR_LINUX; File f = new File(base); if (!f.exists()) { f.mkdirs(); } return base; } /** * 获取图片地址 * * @param isLinux 是否Linux * 系统 * @return */ public static String getImgBasePath(boolean isLinux) { String base = IMG_DIR_WIN; if (isLinux) base = IMG_DIR_LINUX; SimpleDateFormat sf = new SimpleDateFormat("yyyyMMdd"); base = base.replace("{yyyyMM}", sf.format(new Date())); File f = new File(base); if (!f.exists()) { f.mkdirs(); } return base; } public static String getStatus(String deviceId) { String status = contextOnlineMap.get(deviceId); if (null == status) { status = "N"; contextOnlineMap.put(deviceId, status); } return status; } public static void updateStatus(String deviceId, String status) { contextOnlineMap.put(deviceId, status); } }