package com.mes.device.entity;
|
|
import com.baomidou.mybatisplus.annotation.*;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModelProperty;
|
import lombok.Data;
|
import lombok.EqualsAndHashCode;
|
|
import java.util.Date;
|
|
/**
|
* 设备交互逻辑实体类
|
* 对应数据库表:device_interaction_logic
|
*/
|
@Data
|
@EqualsAndHashCode(callSuper = false)
|
@TableName("device_interaction_logic")
|
@ApiModel(value = "DeviceInteractionLogic", description = "设备交互逻辑配置")
|
public class DeviceInteractionLogic {
|
|
@ApiModelProperty(value = "逻辑ID", example = "1")
|
@TableId(value = "id", type = IdType.AUTO)
|
private Long id;
|
|
@ApiModelProperty(value = "逻辑名称", example = "大车自动化测试逻辑")
|
@TableField("logic_name")
|
private String logicName;
|
|
@ApiModelProperty(value = "逻辑编号", example = "TRUCK_AUTO_TEST_001")
|
@TableField("logic_code")
|
private String logicCode;
|
|
@ApiModelProperty(value = "所属模块:1-上大车,2-下大车,3-转运,4-测试", example = "1")
|
@TableField("module_type")
|
private Integer moduleType;
|
|
@ApiModelProperty(value = "所属设备组ID", example = "1")
|
@TableField("group_id")
|
private Long groupId;
|
|
@ApiModelProperty(value = "逻辑类型:1-顺序执行,2-并行执行,3-条件执行,4-循环执行", example = "1")
|
@TableField("logic_type")
|
private Integer logicType;
|
|
@ApiModelProperty(value = "逻辑状态:0-禁用,1-启用,3-调试中", example = "1")
|
@TableField("status")
|
private Integer status;
|
|
@ApiModelProperty(value = "设备组内该逻辑的优先级:1-最高,10-最低", example = "1")
|
@TableField("priority")
|
private Integer priority;
|
|
@ApiModelProperty(value = "执行超时时间(毫秒)", example = "30000")
|
@TableField("execution_timeout")
|
private Integer executionTimeout;
|
|
@ApiModelProperty(value = "重试次数", example = "3")
|
@TableField("retry_times")
|
private Integer retryTimes;
|
|
@ApiModelProperty(value = "逻辑描述", example = "大车自动化测试的完整流程控制")
|
@TableField("description")
|
private String description;
|
|
@ApiModelProperty(value = "交互步骤JSON数组", example = "[{\"step\": 1, \"deviceId\": 1, \"action\": \"START\", \"params\": {}}]")
|
@TableField("interaction_steps")
|
private String interactionSteps;
|
|
@ApiModelProperty(value = "条件判断逻辑JSON", example = "{\"conditions\": [{\"field\": \"status\", \"operator\": \"eq\", \"value\": 1}]}")
|
@TableField("condition_logic")
|
private String conditionLogic;
|
|
@ApiModelProperty(value = "扩展参数JSON", example = "{\"parallelLimit\": 5, \"errorHandling\": \"retry\"}")
|
@TableField("extra_params")
|
private String extraParams;
|
|
@ApiModelProperty(value = "版本号", example = "1.0.0")
|
@TableField("version")
|
private String version;
|
|
@ApiModelProperty(value = "创建时间")
|
@TableField(value = "created_time", fill = FieldFill.INSERT)
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
private Date createdTime;
|
|
@ApiModelProperty(value = "更新时间")
|
@TableField(value = "updated_time", fill = FieldFill.INSERT_UPDATE)
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
private Date updatedTime;
|
|
@ApiModelProperty(value = "创建人", example = "system")
|
@TableField(value = "created_by", fill = FieldFill.INSERT)
|
private String createdBy;
|
|
@ApiModelProperty(value = "更新人", example = "system")
|
@TableField(value = "updated_by", fill = FieldFill.INSERT_UPDATE)
|
private String updatedBy;
|
|
@ApiModelProperty(value = "是否删除:0-否,1-是", example = "0")
|
@TableField("is_deleted")
|
@TableLogic
|
private Integer isDeleted;
|
|
// 模块类型枚举
|
public static final class ModuleType {
|
public static final int LOAD_TRUCK = 1; // 上大车
|
public static final int UNLOAD_TRUCK = 2; // 下大车
|
public static final int TRANSFER = 3; // 转运
|
public static final int TEST = 4; // 测试
|
}
|
|
// 逻辑类型枚举
|
public static final class LogicType {
|
public static final int SEQUENTIAL = 1; // 顺序执行
|
public static final int PARALLEL = 2; // 并行执行
|
public static final int CONDITIONAL = 3; // 条件执行
|
public static final int LOOP = 4; // 循环执行
|
}
|
|
// 逻辑状态枚举
|
public static final class Status {
|
public static final int DISABLED = 0; // 禁用
|
public static final int ENABLED = 1; // 启用
|
public static final int DEBUGGING = 2; // 调试中
|
}
|
}
|