package com.zy.core.cache;
|
|
import com.core.common.Cools;
|
import com.zy.core.model.protocol.RgvErrProtocol;
|
import com.zy.core.model.protocol.RgvRunProtocol;
|
|
import java.util.concurrent.ConcurrentHashMap;
|
|
/**
|
* Created by IX on 2025/02/21
|
*/
|
public class RgvErrCache {
|
// 本地缓存,键为 currentPosition,值为 DeviceStatus
|
private static final ConcurrentHashMap<Integer, RgvErrProtocol> cache = new ConcurrentHashMap<>();
|
|
/**
|
* 更新设备状态
|
*/
|
public static void updateRgvStatus(RgvErrProtocol status) {
|
try {
|
cache.put(status.getRgvNo(), status);
|
} finally {
|
}
|
}
|
|
|
/**
|
* 更新设备状态
|
*/
|
public static void updateRgvErr(Integer rgvNo,String error) {
|
try {
|
RgvErrProtocol rgvErrProtocol = cache.get(rgvNo);
|
if (rgvErrProtocol == null){
|
rgvErrProtocol = new RgvErrProtocol();
|
rgvErrProtocol.setRgvNo(rgvNo);
|
}
|
if (!rgvErrProtocol.getError().equals(error)){
|
rgvErrProtocol.setError(error);
|
cache.put(rgvErrProtocol.getRgvNo(), rgvErrProtocol);
|
}
|
} finally {
|
}
|
}
|
|
|
/**
|
* 更新设备状态
|
*/
|
public static void updateRgvErr(Integer rgvNo) {
|
try {
|
RgvErrProtocol rgvErrProtocol = cache.get(rgvNo);
|
if (rgvErrProtocol == null){
|
rgvErrProtocol = new RgvErrProtocol();
|
rgvErrProtocol.setRgvNo(rgvNo);
|
}
|
if (!rgvErrProtocol.getError().equals("-")){
|
rgvErrProtocol.setError("-");
|
cache.put(rgvErrProtocol.getRgvNo(), rgvErrProtocol);
|
}
|
} finally {
|
}
|
}
|
|
|
|
|
/**
|
* 更新设备状态
|
*/
|
public static String getErrorDev(Integer rgvNo) {
|
try {
|
RgvErrProtocol rgvErrProtocol = cache.get(rgvNo);
|
if (rgvErrProtocol == null){
|
rgvErrProtocol = new RgvErrProtocol();
|
rgvErrProtocol.setRgvNo(rgvNo);
|
}
|
return rgvErrProtocol.getError();
|
} finally {
|
}
|
}
|
|
/**
|
* 获取设备状态
|
*/
|
public static RgvErrProtocol getRgvStatus(Integer rgvNo) {
|
try {
|
return cache.get(rgvNo);
|
} finally {
|
}
|
}
|
|
/**
|
* 获取所有设备状态
|
*/
|
public static ConcurrentHashMap<Integer, RgvErrProtocol> getAllRgvStatus() {
|
try {
|
return new ConcurrentHashMap<>(cache); // 返回副本
|
} finally {
|
}
|
}
|
|
}
|