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

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 聊天配置表
 * @TableName chat_config
 */
@TableName(value ="chat_config")
@Data
@Accessors(chain = true)
public class ChatConfig implements Serializable {
    /**
     * 主键ID
     */
    @TableId(type = IdType.AUTO)
    private Integer id;

    /**
     * 配置唯一标识UUID
     */
    private String uuid;

    /**
     * 配置名称
     */
    private String name;

    /**
     * 配置备注说明
     */
    private String notes;

    /**
     * 机器人组唯一标识UUID
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String robotGroupUuid;

    /**
     * 机器人组名称
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String robotGroupName;

    /**
     * 机器人唯一标识UUID
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String robotUuid;

    /**
     * 机器人名称
     */
    @TableField(updateStrategy = FieldStrategy.IGNORED)
    private String robotName;

    /**
     * 最小间隔时间（建议单位：秒）
     */
    private Integer minIntervalTime;

    /**
     * 最大间隔时间（建议单位：秒）
     */
    private Integer maxIntervalTime;

    /**
     * 执行次数
     */
    private Integer count;

    /**
     * 状态：0=禁用，1=开启
     */
    private Integer status;

    /**
     * AI开关：0=关闭，1=开启（默认开启）
     */
    private Integer aiSwitch;

    /**
     * 开场白/欢迎语
     */
    private String openingRemarks;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 创建人名称
     */
    private String creator;

    /**
     * 创建人唯一标识UUID
     */
    private String creatorUuid;

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