package com.yupi.project.model.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 充电机器人表
 *
 * @TableName charging_robot
 */
@TableName(value = "charging_robot")
@Data
public class ChargingRobot implements Serializable {
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 机器人唯一标识符 (例如，硬件序列号)
     */
    private String robotUid;

    /**
     * 机器人状态 (IDLE, MOVING, CHARGING, ERROR, MAINTENANCE, OFFLINE)
     */
    private String status;

    /**
     * 当前位置描述 (例如，坐标或区域ID)
     */
    private String currentLocation;

    /**
     * 电池电量百分比 (0-100)
     */
    private Integer batteryLevel;

    /**
     * 当前执行的任务ID (关联 robot_task.id)
     */
    private Long currentTaskId;

    /**
     * 最后心跳时间
     */
    private Date lastHeartbeatTime;

    /**
     * 注册时间
     */
    private Date createTime;

    /**
     * 最后更新时间
     */
    private Date updateTime;

    /**
     * 逻辑删除标志 (0:未删, 1:已删)
     */
    @TableLogic
    private Integer isDeleted;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
} 