- 在 ActionEnum 中添加 SPEAKER_PLAYAUDIO 操作类型 - 配置机器人状态检查任务的启用和时间间隔参数 - 移除应用配置中的废弃TTS外部接口配置 - 实现 EdgeSpeakerOperateService 中的音频播放功能和参数验证 - 重构 FlowActionExecutorService 以支持多种操作类型的服务分发 - 更新数据库表结构中机器人状态字段的含义和注释说明 - 修改 InspectionRobot 实体类中的状态定义和业务编号描述 - 扩展 InspectionRobotMapper 接口以支持运行时状态更新和候选查询 - 实现 InspectionRobotService 中的 AGV 请求构建和状态同步逻辑 - 添加 RobotRuntimeStateRefreshTask 定时任务来同步机器人运行状态 - 修复 InspectionTaskInstanceService 中的重复机器人ID设置问题 - 优化 RobotQuicStateService 中的设备状态判断逻辑
117 lines
3.2 KiB
Java
117 lines
3.2 KiB
Java
package com.cmvr.inspection.domain;
|
||
|
||
import com.baomidou.mybatisplus.annotation.IdType;
|
||
import com.baomidou.mybatisplus.annotation.TableId;
|
||
import io.swagger.annotations.ApiModel;
|
||
import io.swagger.annotations.ApiModelProperty;
|
||
import lombok.AllArgsConstructor;
|
||
import lombok.Data;
|
||
import lombok.EqualsAndHashCode;
|
||
import lombok.NoArgsConstructor;
|
||
import com.cmvr.common.annotation.Excel;
|
||
import com.cmvr.common.core.domain.BaseEntity;
|
||
|
||
import java.util.Date;
|
||
|
||
/**
|
||
* 巡检机器人对象 inspection_robot
|
||
*
|
||
* @author cmvr-iot
|
||
* @since 2026-05-29
|
||
*/
|
||
@Data
|
||
@AllArgsConstructor
|
||
@NoArgsConstructor
|
||
@EqualsAndHashCode(callSuper = true)
|
||
@ApiModel("巡检机器人")
|
||
public class InspectionRobot extends BaseEntity
|
||
{
|
||
private static final long serialVersionUID = 1L;
|
||
|
||
/** id */
|
||
@ApiModelProperty("id")
|
||
@TableId(value = "id", type = IdType.ASSIGN_UUID)
|
||
private String id;
|
||
|
||
/** Permanent robot identity reported by QUIC. */
|
||
@Excel(name = "机器人ID")
|
||
@ApiModelProperty("机器人永久唯一ID")
|
||
private String robotId;
|
||
|
||
/** Business display code. It is not an edge device ID. */
|
||
@Excel(name = "机器人业务编号")
|
||
@ApiModelProperty("机器人业务编号,仅用于业务展示,不作为设备ID")
|
||
private String robotCode;
|
||
|
||
/** 机器人名称 */
|
||
@Excel(name = "机器人名称")
|
||
@ApiModelProperty("机器人名称")
|
||
private String robotName;
|
||
|
||
/** 机器人型号 */
|
||
@Excel(name = "机器人型号")
|
||
@ApiModelProperty("机器人型号")
|
||
private String robotModel;
|
||
|
||
/** 机器人类型 */
|
||
@Excel(name = "机器人类型")
|
||
@ApiModelProperty("机器人类型")
|
||
private String robotType;
|
||
|
||
/** IP地址 */
|
||
@Excel(name = "IP地址")
|
||
@ApiModelProperty("IP地址")
|
||
private String ipAddress;
|
||
|
||
/** 端口号 */
|
||
@Excel(name = "端口号")
|
||
@ApiModelProperty("端口号")
|
||
private Long port;
|
||
|
||
/** 当前地图 */
|
||
@Excel(name = "当前地图")
|
||
@ApiModelProperty("当前地图")
|
||
private String currentMapId;
|
||
|
||
/** 当前状态 */
|
||
@Excel(name = "当前状态")
|
||
@ApiModelProperty("AGV运行模式(0未知 1断开 2空闲 3手动 4自动 5充电 6暂停 7停止 8故障 9急停)")
|
||
private String status;
|
||
|
||
/** 电量百分比 */
|
||
@Excel(name = "电量百分比")
|
||
@ApiModelProperty("电量百分比")
|
||
private Integer batteryLevel;
|
||
|
||
/** 当前位置 */
|
||
@Excel(name = "当前位置")
|
||
@ApiModelProperty("当前位置")
|
||
private String currentPosition;
|
||
|
||
/** QUIC runtime state, independent from the robot business status. */
|
||
@ApiModelProperty("连接状态:0离线,1在线")
|
||
private String connectStatus;
|
||
|
||
@ApiModelProperty("当前QUIC节点ID")
|
||
private String quicNodeId;
|
||
|
||
@ApiModelProperty("当前QUIC会话ID")
|
||
private String quicSessionId;
|
||
|
||
@ApiModelProperty("边缘端启动ID")
|
||
private String quicBootId;
|
||
|
||
@ApiModelProperty("QUIC连接来源IP")
|
||
private String observedIp;
|
||
|
||
@ApiModelProperty("边缘端软件版本")
|
||
private String softwareVersion;
|
||
|
||
@ApiModelProperty("最后心跳时间")
|
||
private Date lastHeartbeatTime;
|
||
|
||
@ApiModelProperty("归档状态:0正常,1归档")
|
||
private String archivedStatus;
|
||
|
||
}
|