package com.izouma.awesomeadmin.model;

import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonInclude;

import java.util.List;


@JsonAutoDetect
@JsonInclude(JsonInclude.Include.NON_NULL)
public class QueryConfig {
    private Integer id;
    private String delFlag;
    private String code;
    private String tableName;
    private String tablecolumns;
    private String databasetype;

    private String dataSourceCode;

    private String modules;

    private String searchKey;

    /**
     * and,test_name,like,value;or,remark,=,123
     */
    private String advancedQuery;

    private List<TableField> fields;

    private String configJson;

    private String typeFlag;

    private List<Subtable> subtables;

    /**
     * 子表json
     */
    private String subJson;

    private List<AdvancedQueryField> advancedQueryFields;

    private String queryJson;


    public Integer getId() {
        return this.id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getDelFlag() {
        return this.delFlag;
    }

    public void setDelFlag(String delFlag) {
        this.delFlag = delFlag;
    }

    public String getCode() {
        return this.code;
    }

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

    public String getTableName() {
        return this.tableName;
    }

    public void setTableName(String tableName) {
        this.tableName = tableName;
    }

    public String getTablecolumns() {
        return this.tablecolumns;
    }

    public void setTablecolumns(String tablecolumns) {
        this.tablecolumns = tablecolumns;
    }

    public String getDatabasetype() {
        return this.databasetype;
    }

    public void setDatabasetype(String databasetype) {
        this.databasetype = databasetype;
    }

    public String getSearchKey() {
        return searchKey;
    }

    public void setSearchKey(String searchKey) {
        this.searchKey = searchKey;
    }

    public String getAdvancedQuery() {
        return advancedQuery;
    }

    public void setAdvancedQuery(String advancedQuery) {
        this.advancedQuery = advancedQuery;
    }

    public String getModules() {
        return modules;
    }

    public void setModules(String modules) {
        this.modules = modules;
    }

    public String getDataSourceCode() {
        return dataSourceCode;
    }

    public void setDataSourceCode(String dataSourceCode) {
        this.dataSourceCode = dataSourceCode;
    }

    public List<TableField> getFields() {
        return fields;
    }

    public void setFields(List<TableField> fields) {
        this.fields = fields;
    }

    public String getConfigJson() {
        return configJson;
    }

    public void setConfigJson(String configJson) {
        this.configJson = configJson;
    }

    public String getTypeFlag() {
        return typeFlag;
    }

    public void setTypeFlag(String typeFlag) {
        this.typeFlag = typeFlag;
    }

    public List<Subtable> getSubtables() {
        return subtables;
    }

    public void setSubtables(List<Subtable> subtables) {
        this.subtables = subtables;
    }

    public String getSubJson() {
        return subJson;
    }

    public void setSubJson(String subJson) {
        this.subJson = subJson;
    }

    public List<AdvancedQueryField> getAdvancedQueryFields() {
        return advancedQueryFields;
    }

    public void setAdvancedQueryFields(List<AdvancedQueryField> advancedQueryFields) {
        this.advancedQueryFields = advancedQueryFields;
    }

    public String getQueryJson() {
        return queryJson;
    }

    public void setQueryJson(String queryJson) {
        this.queryJson = queryJson;
    }
}

