package cn.com.poc.agent_application.model;

import java.io.Serializable;

import cn.com.yict.framemax.data.model.BaseModelClass;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Id;

import org.hibernate.annotations.DynamicInsert;
import org.hibernate.annotations.DynamicUpdate;

import javax.persistence.Version;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;

/**
 * Model class for biz_agent_application_dialogues_record
 * Agent应用-用户对话记录
 */
@Entity
@Table(name = "biz_agent_application_dialogues_record")
@DynamicInsert
@DynamicUpdate
public class BizAgentApplicationDialoguesRecordModel extends BaseModelClass implements Serializable {

    private static final long serialVersionUID = 1L;


    /**
     * id
     * 主键ID
     */
    private java.lang.Long id;

    @Column(name = "id", length = 19)
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    public java.lang.Long getId() {
        return this.id;
    }

    public void setId(java.lang.Long id) {
        this.id = id;
        super.addValidField("id");
    }


    /**
     * role
     * 角色 user-用户  assistant-助手
     */
    private java.lang.String role;

    @Column(name = "role", length = 100)
    public java.lang.String getRole() {
        return this.role;
    }

    public void setRole(java.lang.String role) {
        this.role = role;
        super.addValidField("role");
    }

    /**
     * dialogsId
     * 对话ID
     */
    private java.lang.String dialogsId;

    @Column(name = "dialogs_id", length = 100)
    public String getDialogsId() {
        return dialogsId;
    }

    public void setDialogsId(String dialogsId) {
        this.dialogsId = dialogsId;
        super.addValidField("dialogsId");
    }

    /**
     * agent_id
     * agent应用ID
     */
    private java.lang.String agentId;

    @Column(name = "agent_id", length = 200)
    public java.lang.String getAgentId() {
        return this.agentId;
    }

    public void setAgentId(java.lang.String agentId) {
        this.agentId = agentId;
        super.addValidField("agentId");
    }


    /**
     * member_id
     * 用户ID
     */
    private java.lang.Long memberId;

    @Column(name = "member_id", length = 19)
    public java.lang.Long getMemberId() {
        return this.memberId;
    }

    public void setMemberId(java.lang.Long memberId) {
        this.memberId = memberId;
        super.addValidField("memberId");
    }


    /**
     * reasoning_content
     * 推理内容
     */
    private java.lang.String reasoningContent;

    @Column(name = "reasoning_content", length = 2147483647)
    public java.lang.String getReasoningContent() {
        return this.reasoningContent;
    }

    public void setReasoningContent(java.lang.String reasoningContent) {
        this.reasoningContent = reasoningContent;
        super.addValidField("reasoningContent");
    }

    /**
     * content
     * 内容
     */
    private java.lang.String content;

    @Column(name = "content", length = 2147483647)
    public java.lang.String getContent() {
        return this.content;
    }

    public void setContent(java.lang.String content) {
        this.content = content;
        super.addValidField("content");
    }

    /**
     * image_url
     * 图片链接
     */
    private java.lang.String imageUrl;

    @Column(name = "image_url", length = 120)
    public String getImageUrl() {
        return imageUrl;
    }

    public void setImageUrl(String imageUrl) {
        this.imageUrl = imageUrl;
    }

    /**
     * file_url
     * 文件地址
     */
    private java.lang.String fileUrl;

    @Column(name = "file_url", length = 120)
    public String getFileUrl() {
        return fileUrl;
    }

    public void setFileUrl(String fileUrl) {
        this.fileUrl = fileUrl;
    }

    /**
     * function_result
     * 插件响应数据
     */
    private java.lang.String function;

    @Column(name = "function_result", length = 2147483647)
    public java.lang.String getFunction() {
        return this.function;
    }

    public void setFunction(java.lang.String function) {
        this.function = function;
        super.addValidField("function");
    }

    /**
     * timestamp
     * 时间戳
     */
    private java.lang.Long timestamp;

    @Column(name = "timestamp", length = 19)
    public java.lang.Long getTimestamp() {
        return this.timestamp;
    }

    public void setTimestamp(java.lang.Long timestamp) {
        this.timestamp = timestamp;
        super.addValidField("timestamp");
    }


    /**
     * is_deleted
     * 是否删除 1、Y 是 2、N 否
     */
    private java.lang.String isDeleted;

    @Column(name = "is_deleted", length = 1)
    public java.lang.String getIsDeleted() {
        return this.isDeleted;
    }

    public void setIsDeleted(java.lang.String isDeleted) {
        this.isDeleted = isDeleted;
        super.addValidField("isDeleted");
    }


    /**
     * CREATOR
     * 创建人
     */
    private java.lang.String creator;

    @Column(name = "CREATOR", length = 225)
    public java.lang.String getCreator() {
        return this.creator;
    }

    public void setCreator(java.lang.String creator) {
        this.creator = creator;
        super.addValidField("creator");
    }


    /**
     * CREATED_TIME
     * 创建时间
     */
    private java.util.Date createdTime;

    @Column(name = "CREATED_TIME", length = 19)
    public java.util.Date getCreatedTime() {
        return this.createdTime;
    }

    public void setCreatedTime(java.util.Date createdTime) {
        this.createdTime = createdTime;
        super.addValidField("createdTime");
    }


    /**
     * MODIFIER
     * 修改人
     */
    private java.lang.String modifier;

    @Column(name = "MODIFIER", length = 225)
    public java.lang.String getModifier() {
        return this.modifier;
    }

    public void setModifier(java.lang.String modifier) {
        this.modifier = modifier;
        super.addValidField("modifier");
    }


    /**
     * MODIFIED_TIME
     * 修改时间
     */
    private java.util.Date modifiedTime;

    @Column(name = "MODIFIED_TIME", length = 19)
    public java.util.Date getModifiedTime() {
        return this.modifiedTime;
    }

    public void setModifiedTime(java.util.Date modifiedTime) {
        this.modifiedTime = modifiedTime;
        super.addValidField("modifiedTime");
    }


    /**
     * SYS_VERSION
     * 乐观锁,版本号
     */
    private java.lang.Integer sysVersion;

    @Column(name = "SYS_VERSION", length = 10)
    @Version
    public java.lang.Integer getSysVersion() {
        return this.sysVersion;
    }

    public void setSysVersion(java.lang.Integer sysVersion) {
        this.sysVersion = sysVersion;
        super.addValidField("sysVersion");
    }


}