package com.ssyf.module.robot.domain.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.time.LocalDateTime;

import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 机器人运行信息表
 *
 * @TableName r_robot_running_info
 */
@TableName(value = "r_robot_running_info")
@Data
@Accessors(chain = true)
public class RRobotRunningInfo implements Serializable {
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 运行信息唯一标识（UUID）
     */
    private String uuid;
    private String robotGroupUuid;

    private String robotGroupName;

    /**
     * 关联机器人UUID
     */
    private String robotUuid;

    /**
     * 关联机器人登录账号
     */
    private String robotAccount;

    /**
     * 机器人昵称
     */
    private String robotNickName;

    /**
     * 运行状态：1-在线，2-离线，3-异常
     */
    private Integer runningStatus;

    /**
     * 当前行为：5离线，1-闲逛，2-在直播间，3-送礼物，4-聊天
     */
    private Integer currentBehavior;

    /**
     * 当前所在直播间ID
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String liveRoomId;

    /**
     * 当前直播间主播ID
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String anchorId;
    /**
     * 直播间名称
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String liveRoomName;

    /**
     * 主播名称
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String anchorName;

    /**
     * 主播头像
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String anchorAvatar;

    /**
     * 机器人登录时间
     */
    private LocalDateTime loginTime;

    /**
     * 机器人退出时间
     */
    private LocalDateTime logoutTime;

    /**
     * 最后更新时间
     */

    private LocalDateTime lastUpdateTime;

    /**
     * 进入直播间时间
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDateTime enterLiveRoomTime;

    /**
     * 退出直播间时间
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private LocalDateTime exitLiveRoomTime;

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