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

import cn.com.poc.thirdparty.resource.demand.dgTools.request.AbstractRequest;

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

/**
 * @author alex.yao
 * @date 2025/4/27
 */
public class DBChainResponse extends AbstractRequest<DBChainResult> implements Serializable {

    private String question;

    private String prompt;

    private String context;

    private List<String> tableFilters;

    private String mysqlUser;

    private String mysqlPassword;

    private String mysqlHost;

    private Integer mysqlPort;

    private String mysqlDatabase;

    private String apiKey;

    public String getContext() {
        return context;
    }

    public void setContext(String context) {
        this.context = context;
    }

    public String getQuestion() {
        return question;
    }

    public void setQuestion(String question) {
        this.question = question;
    }

    public String getPrompt() {
        return prompt;
    }

    public void setPrompt(String prompt) {
        this.prompt = prompt;
    }

    public List<String> getTableFilters() {
        return tableFilters;
    }

    public void setTableFilters(List<String> tableFilters) {
        this.tableFilters = tableFilters;
    }

    public String getMysqlUser() {
        return mysqlUser;
    }

    public void setMysqlUser(String mysqlUser) {
        this.mysqlUser = mysqlUser;
    }

    public String getMysqlPassword() {
        return mysqlPassword;
    }

    public void setMysqlPassword(String mysqlPassword) {
        this.mysqlPassword = mysqlPassword;
    }

    public String getMysqlHost() {
        return mysqlHost;
    }

    public void setMysqlHost(String mysqlHost) {
        this.mysqlHost = mysqlHost;
    }

    public Integer getMysqlPort() {
        return mysqlPort;
    }

    public void setMysqlPort(Integer mysqlPort) {
        this.mysqlPort = mysqlPort;
    }

    public String getMysqlDatabase() {
        return mysqlDatabase;
    }

    public void setMysqlDatabase(String mysqlDatabase) {
        this.mysqlDatabase = mysqlDatabase;
    }

    public String getApiKey() {
        return apiKey;
    }

    public void setApiKey(String apiKey) {
        this.apiKey = apiKey;
    }

    @Override
    public String getMethod() throws Exception {
        return null;
    }

    @Override
    public String toString() {
        return "DBChainResponse{" +
                "question='" + question + '\'' +
                ", prompt='" + prompt + '\'' +
                ", tableFilters=" + tableFilters +
                ", mysqlUser='" + mysqlUser + '\'' +
                ", mysqlPassword='" + mysqlPassword + '\'' +
                ", mysqlHost='" + mysqlHost + '\'' +
                ", mysqlPort=" + mysqlPort +
                ", mysqlDatabase='" + mysqlDatabase + '\'' +
                ", apiKey='" + apiKey + '\'' +
                '}';
    }
}
