dubin
2025-05-19 9efe3f1d2ccb7375e5d81df7b5c29723dd99cc89
src/main/java/com/zy/core/thread/LedThread.java
@@ -5,11 +5,13 @@
import com.core.common.SpringUtils;
import com.zy.asrs.entity.CommandInfo;
import com.zy.asrs.service.CommandInfoService;
import com.zy.asrs.service.DeviceErrorService;
import com.zy.common.entity.Parameter;
import com.zy.common.model.MatDto;
import com.zy.core.Slave;
import com.zy.core.ThreadHandler;
import com.zy.core.cache.MessageQueue;
import com.zy.core.enums.CommandStatusType;
import com.zy.core.enums.SlaveType;
import com.zy.core.model.Task;
import com.zy.core.model.command.LedCommand;
@@ -46,6 +48,7 @@
    private Set<Integer> workNos = new HashSet<>();
    private boolean ledMk = false;
    private boolean resetStatus = false;    // 复位状态
    private StringBuffer errorMsg = new StringBuffer();
    public LedThread(Slave slave) {
        this.slave = slave;
@@ -75,6 +78,9 @@
                        // 复位
                        case 2:
                            reset();
                            break;
                        case 5:
                            error((String) task.getData());
                            break;
                        default:
                            break;
@@ -116,14 +122,11 @@
            }
            page.newLine("\n");
            //更新指令状态
            CommandInfoService commandInfoService = SpringUtils.getBean(CommandInfoService.class);
            CommandInfo commandInfo = new CommandInfo();
            commandInfo.setWrkNo(command.getWorkNo());
            commandInfo.setCommandStatus(1);
            commandInfo.setStartTime(new Date());
            commandInfo.setDevice("led");
            commandInfo.setCommand(JSON.toJSONString(command));
            commandInfoService.insert(commandInfo);
            CommandInfo commandInfo = command.getCommandInfo();
            commandInfo.setCommandStatus(CommandStatusType.COMPLETE.id);
            commandInfoService.updateById(commandInfo);
        }
        // 设置字体
@@ -203,10 +206,13 @@
            screen.turnOn();
        } catch (Exception ignore) {
        }
        DeviceErrorService deviceErrorService = SpringUtils.getBean(DeviceErrorService.class);
        if (connRes) {
            log.info("led连接成功 ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
            deviceErrorService.deleteDeviceError("led", slave.getId());
        } else {
            log.error("led连接失败!!! ===>> [id:{}] [ip:{}] [port:{}]", slave.getId(), slave.getIp(), slave.getPort());
            deviceErrorService.addDeviceError("led", slave.getId(), "led连接失败");
        }
        return connRes;
    }
@@ -457,8 +463,10 @@
        //
        // 继开与控制器之间的链接
        screen.disconnect();
    }
    private void error(String msg) {
        errorMsg.delete(0, errorMsg.length());
        errorMsg.append(msg);
    }
}