package com.purui.prims.headless.api.pojo.request;

import com.google.common.collect.Sets;
import com.purui.prims.headless.api.pojo.QueryDataType;
import com.purui.prims.headless.api.pojo.SchemaMapInfo;
import com.purui.prims.headless.api.pojo.enums.MapModeEnum;
import com.purui.prims.auth.api.authentication.pojo.User;
import com.purui.prims.common.pojo.enums.Text2SQLType;
import com.purui.prims.common.config.LLMConfig;
import lombok.Data;

import java.util.Set;

@Data
public class QueryReq {
    private String queryText;
    private Integer chatId;
    private Set<Long> dataSetIds = Sets.newHashSet();
    private User user;
    private QueryFilters queryFilters;
    private boolean saveAnswer = true;
    private Text2SQLType text2SQLType = Text2SQLType.RULE_AND_LLM;
    private MapModeEnum mapModeEnum = MapModeEnum.STRICT;
    private SchemaMapInfo mapInfo = new SchemaMapInfo();
    private QueryDataType queryDataType = QueryDataType.ALL;
    private LLMConfig llmConfig;
}
