#
Junjie
2025-07-05 151ba81e92c3c60888cbc04b1a4f3276b8111ac6
src/main/java/com/zy/core/utils/DeviceMsgUtils.java
@@ -4,6 +4,7 @@
import com.zy.common.utils.RedisUtil;
import com.zy.core.enums.RedisKeyType;
import com.zy.core.enums.SlaveType;
import com.zy.core.model.DeviceCommandMsgModel;
import com.zy.core.model.DeviceMsgModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -23,18 +24,19 @@
    @Autowired
    private RedisUtil redisUtil;
    public Object getDeviceCommandMsg(SlaveType deviceType, Integer deviceId) {
    public DeviceCommandMsgModel getDeviceCommandMsg(SlaveType deviceType, Integer deviceId) {
        TreeSet<String> listKey = getDeviceCommandMsgListKey(deviceType, deviceId);
        if (listKey.isEmpty()) {
            return null;
        }
        //deviceShuttleCommandMsgKey_1_1751674783851
        String firstKey = listKey.first();
        Object data = redisUtil.get(firstKey);
        DeviceCommandMsgModel commandMsgModel = (DeviceCommandMsgModel) redisUtil.get(firstKey);
        if (destroyAfterReading) {
            redisUtil.del(firstKey);
        }
        return data;
        return commandMsgModel;
    }
    public DeviceMsgModel getDeviceMsg(SlaveType deviceType, Integer deviceId) {
@@ -67,17 +69,13 @@
        redisUtil.set(key, msgModel, 60 * 60);
    }
    public String sendDeviceMsg(SlaveType deviceType, Integer deviceId, Object command) {
    public String sendDeviceMsg(SlaveType deviceType, Integer deviceId, DeviceMsgModel deviceMsgModel) {
        String key = parseDeviceMsgKey(deviceType, deviceId) + System.currentTimeMillis();
        DeviceMsgModel deviceMsgModel = new DeviceMsgModel();
        deviceMsgModel.setDeviceId(deviceId);
        deviceMsgModel.setDeviceMsg(command);
        redisUtil.set(key, deviceMsgModel, 60 * 60 * 24);
        return key;
    }
    public String sendDeviceCommand(SlaveType deviceType, Integer deviceId, Object command) {
    public String sendDeviceCommand(SlaveType deviceType, Integer deviceId, DeviceCommandMsgModel command) {
        String key = parseDeviceCommandMsgKey(deviceType, deviceId) + System.currentTimeMillis();
        redisUtil.set(key, command, 60 * 60 * 24);
        return key;