package org.xyzh.common.dto.ai;

import org.xyzh.common.dto.BaseDTO;

/**
 * @description 对话消息表
 * @filename TbAiMessage.java
 * @author yslg
 * @copyright xyzh
 * @since 2025-10-15
 */
public class TbAiMessage extends BaseDTO {
    
    private static final long serialVersionUID = 1L;
    
    /**
     * @description 会话ID
     */
    private String conversationID;
    
    /**
     * @description 用户ID
     */
    private String userID;
    
    /**
     * @description 角色（user用户 assistant助手 system系统）
     */
    private String role;
    
    /**
     * @description 消息内容
     */
    private String content;
    
    /**
     * @description 关联文件ID（JSON数组）
     */
    private String fileIDs;
    
    /**
     * @description 引用知识ID（JSON数组）
     */
    private String knowledgeIDs;
    
    /**
     * @description Token数量
     */
    private Integer tokenCount;

    public String getConversationID() {
        return conversationID;
    }

    public void setConversationID(String conversationID) {
        this.conversationID = conversationID;
    }

    public String getUserID() {
        return userID;
    }

    public void setUserID(String userID) {
        this.userID = userID;
    }

    public String getRole() {
        return role;
    }

    public void setRole(String role) {
        this.role = role;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getFileIDs() {
        return fileIDs;
    }

    public void setFileIDs(String fileIDs) {
        this.fileIDs = fileIDs;
    }

    public String getKnowledgeIDs() {
        return knowledgeIDs;
    }

    public void setKnowledgeIDs(String knowledgeIDs) {
        this.knowledgeIDs = knowledgeIDs;
    }

    public Integer getTokenCount() {
        return tokenCount;
    }

    public void setTokenCount(Integer tokenCount) {
        this.tokenCount = tokenCount;
    }

    @Override
    public String toString() {
        return "TbAiMessage{" +
                "id=" + getID() +
                ", conversationID='" + conversationID + '\'' +
                ", userID='" + userID + '\'' +
                ", role='" + role + '\'' +
                ", tokenCount=" + tokenCount +
                ", createTime=" + getCreateTime() +
                '}';
    }
}
