package com.bohuikeji.frame.module.admin.entity.web.template;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.bohuikeji.frame.module.admin.base.EntityBase;
import com.bohuikeji.frame.module.admin.base.HtmlBlockBase;
import com.bohuikeji.frame.module.admin.base.HtmlBlockFormBase;
import com.bohuikeji.frame.module.admin.base.PageTemplateBase;
import com.bohuikeji.frame.module.admin.entity.web.TableModel;
import com.bohuikeji.frame.module.admin.entity.web.TableSearsh;
import com.bohuikeji.frame.module.admin.entity.web.block.ButtonBlock;

import java.util.List;

/**
 * 表格页面模板
 * @author 10552
 */
public class  TableTemplate<T extends EntityBase<T>> extends PageTemplateBase {
    /**
     * 表格初始化
     */
    private String tableInit;
    /**
     * 表头设置
     */
    private List<String> tableHeads;
    /**
     * 表格查询对象设置
     */
    private List<HtmlBlockFormBase> tableQuery;
    /**
     * 表格搜索你对象设置
     */
    private List<TableSearsh> tableSearch;
    /**
     * 操作按钮设置
     */
    private List<ButtonBlock> batchButton;
    /**
     * 新增和修改模态框设置
     */
    private TableModel tableModel;
    /**
     * 默认过滤条件设置
     */
    private QueryWrapper<T> queryWrapper=new QueryWrapper<T>();

    public String getTableInit() {
        return tableInit;
    }

    public TableTemplate setTableInit(String tableInit) {
        this.tableInit = tableInit;
        return this;
    }

    public List<String> getTableHeads() {
        return tableHeads;
    }

    public TableTemplate setTableHeads(List<String> tableHeads) {
        this.tableHeads = tableHeads;
        return this;
    }

    public List<HtmlBlockFormBase> getTableQuery() {
        return tableQuery;
    }

    public TableTemplate setTableQuery(List<HtmlBlockFormBase> tableQuery) {
        this.tableQuery = tableQuery;
        return this;
    }

    public List<TableSearsh> getTableSearch() {
        return tableSearch;
    }

    public TableTemplate setTableSearch(List<TableSearsh> tableSearch) {
        this.tableSearch = tableSearch;
        return this;
    }

    public List<ButtonBlock> getBatchButton() {
        return batchButton;
    }

    public TableTemplate setBatchButton(List<ButtonBlock> batchButton) {
        this.batchButton = batchButton;
        return this;
    }

    public TableModel getTableModel() {
        return tableModel;
    }

    public TableTemplate setTableModel(TableModel tableModel) {
        this.tableModel = tableModel;
        return this;
    }

    public QueryWrapper<T> getQueryWrapper() {
        return queryWrapper;
    }

    public TableTemplate<T> setQueryWrapper(QueryWrapper<T> queryWrapper) {
        this.queryWrapper = queryWrapper;
        return this;
    }
}
