package cn.com.poc.thirdparty.resource.demand.ai.entity.largemodel;

import cn.com.poc.agent_application.entity.KnowledgeContentResult;
import cn.com.poc.thirdparty.resource.demand.ai.entity.csvchain.CSVChainResult;
import cn.com.poc.thirdparty.resource.demand.ai.entity.dbchain.DBChainResult;
import cn.com.poc.thirdparty.resource.demand.ai.entity.dialogue.ToolFunction;
import cn.com.poc.thirdparty.resource.demand.ai.entity.dialogue.Usage;
import cn.com.poc.thirdparty.resource.demand.dgTools.result.AbstractResult;

import java.io.Serializable;
import java.util.List;

public class LargeModelDemandResult extends AbstractResult implements Serializable {

    private String code;

    private String message;

    private String reasoningContent;

    private ToolFunction function;

    private CSVChainResult csvChainResult;

    private List<DBChainResult> dbChainResult;

    private List<KnowledgeContentResult> knowledgeContentResult;

    private String finish_reason;

    private Usage usage;

    public List<DBChainResult> getDbChainResult() {
        return dbChainResult;
    }

    public void setDbChainResult(List<DBChainResult> dbChainResult) {
        this.dbChainResult = dbChainResult;
    }

    public List<KnowledgeContentResult> getKnowledgeContentResult() {
        return knowledgeContentResult;
    }

    public void setKnowledgeContentResult(List<KnowledgeContentResult> knowledgeContentResult) {
        this.knowledgeContentResult = knowledgeContentResult;
    }

    public CSVChainResult getCsvChainResult() {
        return csvChainResult;
    }

    public void setCsvChainResult(CSVChainResult csvChainResult) {
        this.csvChainResult = csvChainResult;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public String getReasoningContent() {
        return reasoningContent;
    }

    public void setReasoningContent(String reasoningContent) {
        this.reasoningContent = reasoningContent;
    }

    public ToolFunction getFunction() {
        return function;
    }

    public void setFunction(ToolFunction function) {
        this.function = function;
    }

    public String getFinish_reason() {
        return finish_reason;
    }

    public void setFinish_reason(String finish_reason) {
        this.finish_reason = finish_reason;
    }

    public Usage getUsage() {
        return usage;
    }

    public void setUsage(Usage usage) {
        this.usage = usage;
    }

    @Override
    public String toString() {
        return "LargeModelDemandResult{" +
                "code='" + code + '\'' +
                ", message='" + message + '\'' +
                ", function=" + function +
                ", finish_reason='" + finish_reason + '\'' +
                ", usage=" + usage +
                '}';
    }
}