package com.iwhalecloud.byai.state.domain.chat.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ByaiAimodelExample {
    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    protected String orderByClause;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    protected boolean distinct;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    protected List<Criteria> oredCriteria;

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public ByaiAimodelExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public boolean isDistinct() {
        return distinct;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andModelIdIsNull() {
            addCriterion("model_id is null");
            return (Criteria) this;
        }

        public Criteria andModelIdIsNotNull() {
            addCriterion("model_id is not null");
            return (Criteria) this;
        }

        public Criteria andModelIdEqualTo(Long value) {
            addCriterion("model_id =", value, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdNotEqualTo(Long value) {
            addCriterion("model_id <>", value, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdGreaterThan(Long value) {
            addCriterion("model_id >", value, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdGreaterThanOrEqualTo(Long value) {
            addCriterion("model_id >=", value, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdLessThan(Long value) {
            addCriterion("model_id <", value, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdLessThanOrEqualTo(Long value) {
            addCriterion("model_id <=", value, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdIn(List<Long> values) {
            addCriterion("model_id in", values, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdNotIn(List<Long> values) {
            addCriterion("model_id not in", values, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdBetween(Long value1, Long value2) {
            addCriterion("model_id between", value1, value2, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelIdNotBetween(Long value1, Long value2) {
            addCriterion("model_id not between", value1, value2, "modelId");
            return (Criteria) this;
        }

        public Criteria andModelTypeIsNull() {
            addCriterion("model_type is null");
            return (Criteria) this;
        }

        public Criteria andModelTypeIsNotNull() {
            addCriterion("model_type is not null");
            return (Criteria) this;
        }

        public Criteria andModelTypeEqualTo(Integer value) {
            addCriterion("model_type =", value, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeNotEqualTo(Integer value) {
            addCriterion("model_type <>", value, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeGreaterThan(Integer value) {
            addCriterion("model_type >", value, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("model_type >=", value, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeLessThan(Integer value) {
            addCriterion("model_type <", value, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeLessThanOrEqualTo(Integer value) {
            addCriterion("model_type <=", value, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeIn(List<Integer> values) {
            addCriterion("model_type in", values, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeNotIn(List<Integer> values) {
            addCriterion("model_type not in", values, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeBetween(Integer value1, Integer value2) {
            addCriterion("model_type between", value1, value2, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("model_type not between", value1, value2, "modelType");
            return (Criteria) this;
        }

        public Criteria andModelNameIsNull() {
            addCriterion("model_name is null");
            return (Criteria) this;
        }

        public Criteria andModelNameIsNotNull() {
            addCriterion("model_name is not null");
            return (Criteria) this;
        }

        public Criteria andModelNameEqualTo(String value) {
            addCriterion("model_name =", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameNotEqualTo(String value) {
            addCriterion("model_name <>", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameGreaterThan(String value) {
            addCriterion("model_name >", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameGreaterThanOrEqualTo(String value) {
            addCriterion("model_name >=", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameLessThan(String value) {
            addCriterion("model_name <", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameLessThanOrEqualTo(String value) {
            addCriterion("model_name <=", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameLike(String value) {
            addCriterion("model_name like", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameNotLike(String value) {
            addCriterion("model_name not like", value, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameIn(List<String> values) {
            addCriterion("model_name in", values, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameNotIn(List<String> values) {
            addCriterion("model_name not in", values, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameBetween(String value1, String value2) {
            addCriterion("model_name between", value1, value2, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameNotBetween(String value1, String value2) {
            addCriterion("model_name not between", value1, value2, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelIsNull() {
            addCriterion("model is null");
            return (Criteria) this;
        }

        public Criteria andModelIsNotNull() {
            addCriterion("model is not null");
            return (Criteria) this;
        }

        public Criteria andModelEqualTo(String value) {
            addCriterion("model =", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelNotEqualTo(String value) {
            addCriterion("model <>", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelGreaterThan(String value) {
            addCriterion("model >", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelGreaterThanOrEqualTo(String value) {
            addCriterion("model >=", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelLessThan(String value) {
            addCriterion("model <", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelLessThanOrEqualTo(String value) {
            addCriterion("model <=", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelLike(String value) {
            addCriterion("model like", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelNotLike(String value) {
            addCriterion("model not like", value, "model");
            return (Criteria) this;
        }

        public Criteria andModelIn(List<String> values) {
            addCriterion("model in", values, "model");
            return (Criteria) this;
        }

        public Criteria andModelNotIn(List<String> values) {
            addCriterion("model not in", values, "model");
            return (Criteria) this;
        }

        public Criteria andModelBetween(String value1, String value2) {
            addCriterion("model between", value1, value2, "model");
            return (Criteria) this;
        }

        public Criteria andModelNotBetween(String value1, String value2) {
            addCriterion("model not between", value1, value2, "model");
            return (Criteria) this;
        }

        public Criteria andUrlIsNull() {
            addCriterion("url is null");
            return (Criteria) this;
        }

        public Criteria andUrlIsNotNull() {
            addCriterion("url is not null");
            return (Criteria) this;
        }

        public Criteria andUrlEqualTo(String value) {
            addCriterion("url =", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlNotEqualTo(String value) {
            addCriterion("url <>", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlGreaterThan(String value) {
            addCriterion("url >", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlGreaterThanOrEqualTo(String value) {
            addCriterion("url >=", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlLessThan(String value) {
            addCriterion("url <", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlLessThanOrEqualTo(String value) {
            addCriterion("url <=", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlLike(String value) {
            addCriterion("url like", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlNotLike(String value) {
            addCriterion("url not like", value, "url");
            return (Criteria) this;
        }

        public Criteria andUrlIn(List<String> values) {
            addCriterion("url in", values, "url");
            return (Criteria) this;
        }

        public Criteria andUrlNotIn(List<String> values) {
            addCriterion("url not in", values, "url");
            return (Criteria) this;
        }

        public Criteria andUrlBetween(String value1, String value2) {
            addCriterion("url between", value1, value2, "url");
            return (Criteria) this;
        }

        public Criteria andUrlNotBetween(String value1, String value2) {
            addCriterion("url not between", value1, value2, "url");
            return (Criteria) this;
        }

        public Criteria andAuthTokenIsNull() {
            addCriterion("auth_token is null");
            return (Criteria) this;
        }

        public Criteria andAuthTokenIsNotNull() {
            addCriterion("auth_token is not null");
            return (Criteria) this;
        }

        public Criteria andAuthTokenEqualTo(String value) {
            addCriterion("auth_token =", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenNotEqualTo(String value) {
            addCriterion("auth_token <>", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenGreaterThan(String value) {
            addCriterion("auth_token >", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenGreaterThanOrEqualTo(String value) {
            addCriterion("auth_token >=", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenLessThan(String value) {
            addCriterion("auth_token <", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenLessThanOrEqualTo(String value) {
            addCriterion("auth_token <=", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenLike(String value) {
            addCriterion("auth_token like", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenNotLike(String value) {
            addCriterion("auth_token not like", value, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenIn(List<String> values) {
            addCriterion("auth_token in", values, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenNotIn(List<String> values) {
            addCriterion("auth_token not in", values, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenBetween(String value1, String value2) {
            addCriterion("auth_token between", value1, value2, "authToken");
            return (Criteria) this;
        }

        public Criteria andAuthTokenNotBetween(String value1, String value2) {
            addCriterion("auth_token not between", value1, value2, "authToken");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andIsDefaultIsNull() {
            addCriterion("is_default is null");
            return (Criteria) this;
        }

        public Criteria andIsDefaultIsNotNull() {
            addCriterion("is_default is not null");
            return (Criteria) this;
        }

        public Criteria andIsDefaultEqualTo(Integer value) {
            addCriterion("is_default =", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultNotEqualTo(Integer value) {
            addCriterion("is_default <>", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultGreaterThan(Integer value) {
            addCriterion("is_default >", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_default >=", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultLessThan(Integer value) {
            addCriterion("is_default <", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultLessThanOrEqualTo(Integer value) {
            addCriterion("is_default <=", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultIn(List<Integer> values) {
            addCriterion("is_default in", values, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultNotIn(List<Integer> values) {
            addCriterion("is_default not in", values, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultBetween(Integer value1, Integer value2) {
            addCriterion("is_default between", value1, value2, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultNotBetween(Integer value1, Integer value2) {
            addCriterion("is_default not between", value1, value2, "isDefault");
            return (Criteria) this;
        }

        public Criteria andApiStyleIsNull() {
            addCriterion("api_style is null");
            return (Criteria) this;
        }

        public Criteria andApiStyleIsNotNull() {
            addCriterion("api_style is not null");
            return (Criteria) this;
        }

        public Criteria andApiStyleEqualTo(String value) {
            addCriterion("api_style =", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleNotEqualTo(String value) {
            addCriterion("api_style <>", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleGreaterThan(String value) {
            addCriterion("api_style >", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleGreaterThanOrEqualTo(String value) {
            addCriterion("api_style >=", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleLessThan(String value) {
            addCriterion("api_style <", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleLessThanOrEqualTo(String value) {
            addCriterion("api_style <=", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleLike(String value) {
            addCriterion("api_style like", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleNotLike(String value) {
            addCriterion("api_style not like", value, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleIn(List<String> values) {
            addCriterion("api_style in", values, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleNotIn(List<String> values) {
            addCriterion("api_style not in", values, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleBetween(String value1, String value2) {
            addCriterion("api_style between", value1, value2, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andApiStyleNotBetween(String value1, String value2) {
            addCriterion("api_style not between", value1, value2, "apiStyle");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdIsNull() {
            addCriterion("out_sys_model_id is null");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdIsNotNull() {
            addCriterion("out_sys_model_id is not null");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdEqualTo(Long value) {
            addCriterion("out_sys_model_id =", value, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdNotEqualTo(Long value) {
            addCriterion("out_sys_model_id <>", value, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdGreaterThan(Long value) {
            addCriterion("out_sys_model_id >", value, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdGreaterThanOrEqualTo(Long value) {
            addCriterion("out_sys_model_id >=", value, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdLessThan(Long value) {
            addCriterion("out_sys_model_id <", value, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdLessThanOrEqualTo(Long value) {
            addCriterion("out_sys_model_id <=", value, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdIn(List<Long> values) {
            addCriterion("out_sys_model_id in", values, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdNotIn(List<Long> values) {
            addCriterion("out_sys_model_id not in", values, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdBetween(Long value1, Long value2) {
            addCriterion("out_sys_model_id between", value1, value2, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andOutSysModelIdNotBetween(Long value1, Long value2) {
            addCriterion("out_sys_model_id not between", value1, value2, "outSysModelId");
            return (Criteria) this;
        }

        public Criteria andTeamIdIsNull() {
            addCriterion("team_id is null");
            return (Criteria) this;
        }

        public Criteria andTeamIdIsNotNull() {
            addCriterion("team_id is not null");
            return (Criteria) this;
        }

        public Criteria andTeamIdEqualTo(Long value) {
            addCriterion("team_id =", value, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdNotEqualTo(Long value) {
            addCriterion("team_id <>", value, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdGreaterThan(Long value) {
            addCriterion("team_id >", value, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdGreaterThanOrEqualTo(Long value) {
            addCriterion("team_id >=", value, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdLessThan(Long value) {
            addCriterion("team_id <", value, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdLessThanOrEqualTo(Long value) {
            addCriterion("team_id <=", value, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdIn(List<Long> values) {
            addCriterion("team_id in", values, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdNotIn(List<Long> values) {
            addCriterion("team_id not in", values, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdBetween(Long value1, Long value2) {
            addCriterion("team_id between", value1, value2, "teamId");
            return (Criteria) this;
        }

        public Criteria andTeamIdNotBetween(Long value1, Long value2) {
            addCriterion("team_id not between", value1, value2, "teamId");
            return (Criteria) this;
        }

        public Criteria andTmbIdIsNull() {
            addCriterion("tmb_id is null");
            return (Criteria) this;
        }

        public Criteria andTmbIdIsNotNull() {
            addCriterion("tmb_id is not null");
            return (Criteria) this;
        }

        public Criteria andTmbIdEqualTo(Long value) {
            addCriterion("tmb_id =", value, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdNotEqualTo(Long value) {
            addCriterion("tmb_id <>", value, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdGreaterThan(Long value) {
            addCriterion("tmb_id >", value, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdGreaterThanOrEqualTo(Long value) {
            addCriterion("tmb_id >=", value, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdLessThan(Long value) {
            addCriterion("tmb_id <", value, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdLessThanOrEqualTo(Long value) {
            addCriterion("tmb_id <=", value, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdIn(List<Long> values) {
            addCriterion("tmb_id in", values, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdNotIn(List<Long> values) {
            addCriterion("tmb_id not in", values, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdBetween(Long value1, Long value2) {
            addCriterion("tmb_id between", value1, value2, "tmbId");
            return (Criteria) this;
        }

        public Criteria andTmbIdNotBetween(Long value1, Long value2) {
            addCriterion("tmb_id not between", value1, value2, "tmbId");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("remark is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("remark is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("remark =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("remark <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("remark >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("remark >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("remark <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("remark <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("remark like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("remark not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("remark in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("remark not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("remark between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("remark not between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNull() {
            addCriterion("create_by is null");
            return (Criteria) this;
        }

        public Criteria andCreateByIsNotNull() {
            addCriterion("create_by is not null");
            return (Criteria) this;
        }

        public Criteria andCreateByEqualTo(Long value) {
            addCriterion("create_by =", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotEqualTo(Long value) {
            addCriterion("create_by <>", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThan(Long value) {
            addCriterion("create_by >", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByGreaterThanOrEqualTo(Long value) {
            addCriterion("create_by >=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThan(Long value) {
            addCriterion("create_by <", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByLessThanOrEqualTo(Long value) {
            addCriterion("create_by <=", value, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByIn(List<Long> values) {
            addCriterion("create_by in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotIn(List<Long> values) {
            addCriterion("create_by not in", values, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByBetween(Long value1, Long value2) {
            addCriterion("create_by between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateByNotBetween(Long value1, Long value2) {
            addCriterion("create_by not between", value1, value2, "createBy");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNull() {
            addCriterion("update_by is null");
            return (Criteria) this;
        }

        public Criteria andUpdateByIsNotNull() {
            addCriterion("update_by is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateByEqualTo(Long value) {
            addCriterion("update_by =", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotEqualTo(Long value) {
            addCriterion("update_by <>", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThan(Long value) {
            addCriterion("update_by >", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByGreaterThanOrEqualTo(Long value) {
            addCriterion("update_by >=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThan(Long value) {
            addCriterion("update_by <", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByLessThanOrEqualTo(Long value) {
            addCriterion("update_by <=", value, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByIn(List<Long> values) {
            addCriterion("update_by in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotIn(List<Long> values) {
            addCriterion("update_by not in", values, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByBetween(Long value1, Long value2) {
            addCriterion("update_by between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateByNotBetween(Long value1, Long value2) {
            addCriterion("update_by not between", value1, value2, "updateBy");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andStreamTypeIsNull() {
            addCriterion("stream_type is null");
            return (Criteria) this;
        }

        public Criteria andStreamTypeIsNotNull() {
            addCriterion("stream_type is not null");
            return (Criteria) this;
        }

        public Criteria andStreamTypeEqualTo(Integer value) {
            addCriterion("stream_type =", value, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeNotEqualTo(Integer value) {
            addCriterion("stream_type <>", value, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeGreaterThan(Integer value) {
            addCriterion("stream_type >", value, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("stream_type >=", value, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeLessThan(Integer value) {
            addCriterion("stream_type <", value, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeLessThanOrEqualTo(Integer value) {
            addCriterion("stream_type <=", value, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeIn(List<Integer> values) {
            addCriterion("stream_type in", values, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeNotIn(List<Integer> values) {
            addCriterion("stream_type not in", values, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeBetween(Integer value1, Integer value2) {
            addCriterion("stream_type between", value1, value2, "streamType");
            return (Criteria) this;
        }

        public Criteria andStreamTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("stream_type not between", value1, value2, "streamType");
            return (Criteria) this;
        }

        public Criteria andInParamsIsNull() {
            addCriterion("in_params is null");
            return (Criteria) this;
        }

        public Criteria andInParamsIsNotNull() {
            addCriterion("in_params is not null");
            return (Criteria) this;
        }

        public Criteria andInParamsEqualTo(String value) {
            addCriterion("in_params =", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsNotEqualTo(String value) {
            addCriterion("in_params <>", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsGreaterThan(String value) {
            addCriterion("in_params >", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsGreaterThanOrEqualTo(String value) {
            addCriterion("in_params >=", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsLessThan(String value) {
            addCriterion("in_params <", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsLessThanOrEqualTo(String value) {
            addCriterion("in_params <=", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsLike(String value) {
            addCriterion("in_params like", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsNotLike(String value) {
            addCriterion("in_params not like", value, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsIn(List<String> values) {
            addCriterion("in_params in", values, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsNotIn(List<String> values) {
            addCriterion("in_params not in", values, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsBetween(String value1, String value2) {
            addCriterion("in_params between", value1, value2, "inParams");
            return (Criteria) this;
        }

        public Criteria andInParamsNotBetween(String value1, String value2) {
            addCriterion("in_params not between", value1, value2, "inParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsIsNull() {
            addCriterion("out_params is null");
            return (Criteria) this;
        }

        public Criteria andOutParamsIsNotNull() {
            addCriterion("out_params is not null");
            return (Criteria) this;
        }

        public Criteria andOutParamsEqualTo(String value) {
            addCriterion("out_params =", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsNotEqualTo(String value) {
            addCriterion("out_params <>", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsGreaterThan(String value) {
            addCriterion("out_params >", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsGreaterThanOrEqualTo(String value) {
            addCriterion("out_params >=", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsLessThan(String value) {
            addCriterion("out_params <", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsLessThanOrEqualTo(String value) {
            addCriterion("out_params <=", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsLike(String value) {
            addCriterion("out_params like", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsNotLike(String value) {
            addCriterion("out_params not like", value, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsIn(List<String> values) {
            addCriterion("out_params in", values, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsNotIn(List<String> values) {
            addCriterion("out_params not in", values, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsBetween(String value1, String value2) {
            addCriterion("out_params between", value1, value2, "outParams");
            return (Criteria) this;
        }

        public Criteria andOutParamsNotBetween(String value1, String value2) {
            addCriterion("out_params not between", value1, value2, "outParams");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartIsNull() {
            addCriterion("is_support_chart is null");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartIsNotNull() {
            addCriterion("is_support_chart is not null");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartEqualTo(String value) {
            addCriterion("is_support_chart =", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartNotEqualTo(String value) {
            addCriterion("is_support_chart <>", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartGreaterThan(String value) {
            addCriterion("is_support_chart >", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartGreaterThanOrEqualTo(String value) {
            addCriterion("is_support_chart >=", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartLessThan(String value) {
            addCriterion("is_support_chart <", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartLessThanOrEqualTo(String value) {
            addCriterion("is_support_chart <=", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartLike(String value) {
            addCriterion("is_support_chart like", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartNotLike(String value) {
            addCriterion("is_support_chart not like", value, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartIn(List<String> values) {
            addCriterion("is_support_chart in", values, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartNotIn(List<String> values) {
            addCriterion("is_support_chart not in", values, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartBetween(String value1, String value2) {
            addCriterion("is_support_chart between", value1, value2, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportChartNotBetween(String value1, String value2) {
            addCriterion("is_support_chart not between", value1, value2, "isSupportChart");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocIsNull() {
            addCriterion("is_support_doc is null");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocIsNotNull() {
            addCriterion("is_support_doc is not null");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocEqualTo(String value) {
            addCriterion("is_support_doc =", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocNotEqualTo(String value) {
            addCriterion("is_support_doc <>", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocGreaterThan(String value) {
            addCriterion("is_support_doc >", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocGreaterThanOrEqualTo(String value) {
            addCriterion("is_support_doc >=", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocLessThan(String value) {
            addCriterion("is_support_doc <", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocLessThanOrEqualTo(String value) {
            addCriterion("is_support_doc <=", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocLike(String value) {
            addCriterion("is_support_doc like", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocNotLike(String value) {
            addCriterion("is_support_doc not like", value, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocIn(List<String> values) {
            addCriterion("is_support_doc in", values, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocNotIn(List<String> values) {
            addCriterion("is_support_doc not in", values, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocBetween(String value1, String value2) {
            addCriterion("is_support_doc between", value1, value2, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andIsSupportDocNotBetween(String value1, String value2) {
            addCriterion("is_support_doc not between", value1, value2, "isSupportDoc");
            return (Criteria) this;
        }

        public Criteria andModelOrderIsNull() {
            addCriterion("model_order is null");
            return (Criteria) this;
        }

        public Criteria andModelOrderIsNotNull() {
            addCriterion("model_order is not null");
            return (Criteria) this;
        }

        public Criteria andModelOrderEqualTo(String value) {
            addCriterion("model_order =", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderNotEqualTo(String value) {
            addCriterion("model_order <>", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderGreaterThan(String value) {
            addCriterion("model_order >", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderGreaterThanOrEqualTo(String value) {
            addCriterion("model_order >=", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderLessThan(String value) {
            addCriterion("model_order <", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderLessThanOrEqualTo(String value) {
            addCriterion("model_order <=", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderLike(String value) {
            addCriterion("model_order like", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderNotLike(String value) {
            addCriterion("model_order not like", value, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderIn(List<String> values) {
            addCriterion("model_order in", values, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderNotIn(List<String> values) {
            addCriterion("model_order not in", values, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderBetween(String value1, String value2) {
            addCriterion("model_order between", value1, value2, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andModelOrderNotBetween(String value1, String value2) {
            addCriterion("model_order not between", value1, value2, "modelOrder");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeIsNull() {
            addCriterion("virtual_type is null");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeIsNotNull() {
            addCriterion("virtual_type is not null");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeEqualTo(String value) {
            addCriterion("virtual_type =", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeNotEqualTo(String value) {
            addCriterion("virtual_type <>", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeGreaterThan(String value) {
            addCriterion("virtual_type >", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeGreaterThanOrEqualTo(String value) {
            addCriterion("virtual_type >=", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeLessThan(String value) {
            addCriterion("virtual_type <", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeLessThanOrEqualTo(String value) {
            addCriterion("virtual_type <=", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeLike(String value) {
            addCriterion("virtual_type like", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeNotLike(String value) {
            addCriterion("virtual_type not like", value, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeIn(List<String> values) {
            addCriterion("virtual_type in", values, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeNotIn(List<String> values) {
            addCriterion("virtual_type not in", values, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeBetween(String value1, String value2) {
            addCriterion("virtual_type between", value1, value2, "virtualType");
            return (Criteria) this;
        }

        public Criteria andVirtualTypeNotBetween(String value1, String value2) {
            addCriterion("virtual_type not between", value1, value2, "virtualType");
            return (Criteria) this;
        }

        public Criteria andRealModelIsNull() {
            addCriterion("real_model is null");
            return (Criteria) this;
        }

        public Criteria andRealModelIsNotNull() {
            addCriterion("real_model is not null");
            return (Criteria) this;
        }

        public Criteria andRealModelEqualTo(String value) {
            addCriterion("real_model =", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelNotEqualTo(String value) {
            addCriterion("real_model <>", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelGreaterThan(String value) {
            addCriterion("real_model >", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelGreaterThanOrEqualTo(String value) {
            addCriterion("real_model >=", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelLessThan(String value) {
            addCriterion("real_model <", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelLessThanOrEqualTo(String value) {
            addCriterion("real_model <=", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelLike(String value) {
            addCriterion("real_model like", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelNotLike(String value) {
            addCriterion("real_model not like", value, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelIn(List<String> values) {
            addCriterion("real_model in", values, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelNotIn(List<String> values) {
            addCriterion("real_model not in", values, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelBetween(String value1, String value2) {
            addCriterion("real_model between", value1, value2, "realModel");
            return (Criteria) this;
        }

        public Criteria andRealModelNotBetween(String value1, String value2) {
            addCriterion("real_model not between", value1, value2, "realModel");
            return (Criteria) this;
        }

        public Criteria andBrandIdIsNull() {
            addCriterion("brand_id is null");
            return (Criteria) this;
        }

        public Criteria andBrandIdIsNotNull() {
            addCriterion("brand_id is not null");
            return (Criteria) this;
        }

        public Criteria andBrandIdEqualTo(Long value) {
            addCriterion("brand_id =", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdNotEqualTo(Long value) {
            addCriterion("brand_id <>", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdGreaterThan(Long value) {
            addCriterion("brand_id >", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdGreaterThanOrEqualTo(Long value) {
            addCriterion("brand_id >=", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdLessThan(Long value) {
            addCriterion("brand_id <", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdLessThanOrEqualTo(Long value) {
            addCriterion("brand_id <=", value, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdIn(List<Long> values) {
            addCriterion("brand_id in", values, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdNotIn(List<Long> values) {
            addCriterion("brand_id not in", values, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdBetween(Long value1, Long value2) {
            addCriterion("brand_id between", value1, value2, "brandId");
            return (Criteria) this;
        }

        public Criteria andBrandIdNotBetween(Long value1, Long value2) {
            addCriterion("brand_id not between", value1, value2, "brandId");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenIsNull() {
            addCriterion("param_max_len is null");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenIsNotNull() {
            addCriterion("param_max_len is not null");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenEqualTo(Long value) {
            addCriterion("param_max_len =", value, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenNotEqualTo(Long value) {
            addCriterion("param_max_len <>", value, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenGreaterThan(Long value) {
            addCriterion("param_max_len >", value, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenGreaterThanOrEqualTo(Long value) {
            addCriterion("param_max_len >=", value, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenLessThan(Long value) {
            addCriterion("param_max_len <", value, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenLessThanOrEqualTo(Long value) {
            addCriterion("param_max_len <=", value, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenIn(List<Long> values) {
            addCriterion("param_max_len in", values, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenNotIn(List<Long> values) {
            addCriterion("param_max_len not in", values, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenBetween(Long value1, Long value2) {
            addCriterion("param_max_len between", value1, value2, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andParamMaxLenNotBetween(Long value1, Long value2) {
            addCriterion("param_max_len not between", value1, value2, "paramMaxLen");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenIsNull() {
            addCriterion("max_content_token is null");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenIsNotNull() {
            addCriterion("max_content_token is not null");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenEqualTo(Long value) {
            addCriterion("max_content_token =", value, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenNotEqualTo(Long value) {
            addCriterion("max_content_token <>", value, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenGreaterThan(Long value) {
            addCriterion("max_content_token >", value, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenGreaterThanOrEqualTo(Long value) {
            addCriterion("max_content_token >=", value, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenLessThan(Long value) {
            addCriterion("max_content_token <", value, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenLessThanOrEqualTo(Long value) {
            addCriterion("max_content_token <=", value, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenIn(List<Long> values) {
            addCriterion("max_content_token in", values, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenNotIn(List<Long> values) {
            addCriterion("max_content_token not in", values, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenBetween(Long value1, Long value2) {
            addCriterion("max_content_token between", value1, value2, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andMaxContentTokenNotBetween(Long value1, Long value2) {
            addCriterion("max_content_token not between", value1, value2, "maxContentToken");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkIsNull() {
            addCriterion("is_deepthink is null");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkIsNotNull() {
            addCriterion("is_deepthink is not null");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkEqualTo(Integer value) {
            addCriterion("is_deepthink =", value, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkNotEqualTo(Integer value) {
            addCriterion("is_deepthink <>", value, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkGreaterThan(Integer value) {
            addCriterion("is_deepthink >", value, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_deepthink >=", value, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkLessThan(Integer value) {
            addCriterion("is_deepthink <", value, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkLessThanOrEqualTo(Integer value) {
            addCriterion("is_deepthink <=", value, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkIn(List<Integer> values) {
            addCriterion("is_deepthink in", values, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkNotIn(List<Integer> values) {
            addCriterion("is_deepthink not in", values, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkBetween(Integer value1, Integer value2) {
            addCriterion("is_deepthink between", value1, value2, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andIsDeepthinkNotBetween(Integer value1, Integer value2) {
            addCriterion("is_deepthink not between", value1, value2, "isDeepthink");
            return (Criteria) this;
        }

        public Criteria andEsConfigIsNull() {
            addCriterion("es_config is null");
            return (Criteria) this;
        }

        public Criteria andEsConfigIsNotNull() {
            addCriterion("es_config is not null");
            return (Criteria) this;
        }

        public Criteria andEsConfigEqualTo(String value) {
            addCriterion("es_config =", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigNotEqualTo(String value) {
            addCriterion("es_config <>", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigGreaterThan(String value) {
            addCriterion("es_config >", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigGreaterThanOrEqualTo(String value) {
            addCriterion("es_config >=", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigLessThan(String value) {
            addCriterion("es_config <", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigLessThanOrEqualTo(String value) {
            addCriterion("es_config <=", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigLike(String value) {
            addCriterion("es_config like", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigNotLike(String value) {
            addCriterion("es_config not like", value, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigIn(List<String> values) {
            addCriterion("es_config in", values, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigNotIn(List<String> values) {
            addCriterion("es_config not in", values, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigBetween(String value1, String value2) {
            addCriterion("es_config between", value1, value2, "esConfig");
            return (Criteria) this;
        }

        public Criteria andEsConfigNotBetween(String value1, String value2) {
            addCriterion("es_config not between", value1, value2, "esConfig");
            return (Criteria) this;
        }

        public Criteria andLlmUrlIsNull() {
            addCriterion("llm_url is null");
            return (Criteria) this;
        }

        public Criteria andLlmUrlIsNotNull() {
            addCriterion("llm_url is not null");
            return (Criteria) this;
        }

        public Criteria andLlmUrlEqualTo(String value) {
            addCriterion("llm_url =", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlNotEqualTo(String value) {
            addCriterion("llm_url <>", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlGreaterThan(String value) {
            addCriterion("llm_url >", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlGreaterThanOrEqualTo(String value) {
            addCriterion("llm_url >=", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlLessThan(String value) {
            addCriterion("llm_url <", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlLessThanOrEqualTo(String value) {
            addCriterion("llm_url <=", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlLike(String value) {
            addCriterion("llm_url like", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlNotLike(String value) {
            addCriterion("llm_url not like", value, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlIn(List<String> values) {
            addCriterion("llm_url in", values, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlNotIn(List<String> values) {
            addCriterion("llm_url not in", values, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlBetween(String value1, String value2) {
            addCriterion("llm_url between", value1, value2, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmUrlNotBetween(String value1, String value2) {
            addCriterion("llm_url not between", value1, value2, "llmUrl");
            return (Criteria) this;
        }

        public Criteria andLlmTokenIsNull() {
            addCriterion("llm_token is null");
            return (Criteria) this;
        }

        public Criteria andLlmTokenIsNotNull() {
            addCriterion("llm_token is not null");
            return (Criteria) this;
        }

        public Criteria andLlmTokenEqualTo(String value) {
            addCriterion("llm_token =", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenNotEqualTo(String value) {
            addCriterion("llm_token <>", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenGreaterThan(String value) {
            addCriterion("llm_token >", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenGreaterThanOrEqualTo(String value) {
            addCriterion("llm_token >=", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenLessThan(String value) {
            addCriterion("llm_token <", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenLessThanOrEqualTo(String value) {
            addCriterion("llm_token <=", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenLike(String value) {
            addCriterion("llm_token like", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenNotLike(String value) {
            addCriterion("llm_token not like", value, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenIn(List<String> values) {
            addCriterion("llm_token in", values, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenNotIn(List<String> values) {
            addCriterion("llm_token not in", values, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenBetween(String value1, String value2) {
            addCriterion("llm_token between", value1, value2, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmTokenNotBetween(String value1, String value2) {
            addCriterion("llm_token not between", value1, value2, "llmToken");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameIsNull() {
            addCriterion("llm_model_name is null");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameIsNotNull() {
            addCriterion("llm_model_name is not null");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameEqualTo(String value) {
            addCriterion("llm_model_name =", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameNotEqualTo(String value) {
            addCriterion("llm_model_name <>", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameGreaterThan(String value) {
            addCriterion("llm_model_name >", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameGreaterThanOrEqualTo(String value) {
            addCriterion("llm_model_name >=", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameLessThan(String value) {
            addCriterion("llm_model_name <", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameLessThanOrEqualTo(String value) {
            addCriterion("llm_model_name <=", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameLike(String value) {
            addCriterion("llm_model_name like", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameNotLike(String value) {
            addCriterion("llm_model_name not like", value, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameIn(List<String> values) {
            addCriterion("llm_model_name in", values, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameNotIn(List<String> values) {
            addCriterion("llm_model_name not in", values, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameBetween(String value1, String value2) {
            addCriterion("llm_model_name between", value1, value2, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameNotBetween(String value1, String value2) {
            addCriterion("llm_model_name not between", value1, value2, "llmModelName");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlIsNull() {
            addCriterion("search_service_base_url is null");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlIsNotNull() {
            addCriterion("search_service_base_url is not null");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlEqualTo(String value) {
            addCriterion("search_service_base_url =", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlNotEqualTo(String value) {
            addCriterion("search_service_base_url <>", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlGreaterThan(String value) {
            addCriterion("search_service_base_url >", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlGreaterThanOrEqualTo(String value) {
            addCriterion("search_service_base_url >=", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlLessThan(String value) {
            addCriterion("search_service_base_url <", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlLessThanOrEqualTo(String value) {
            addCriterion("search_service_base_url <=", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlLike(String value) {
            addCriterion("search_service_base_url like", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlNotLike(String value) {
            addCriterion("search_service_base_url not like", value, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlIn(List<String> values) {
            addCriterion("search_service_base_url in", values, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlNotIn(List<String> values) {
            addCriterion("search_service_base_url not in", values, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlBetween(String value1, String value2) {
            addCriterion("search_service_base_url between", value1, value2, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andSearchServiceBaseUrlNotBetween(String value1, String value2) {
            addCriterion("search_service_base_url not between", value1, value2, "searchServiceBaseUrl");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRIsNull() {
            addCriterion("llm_model_name_r is null");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRIsNotNull() {
            addCriterion("llm_model_name_r is not null");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameREqualTo(String value) {
            addCriterion("llm_model_name_r =", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRNotEqualTo(String value) {
            addCriterion("llm_model_name_r <>", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRGreaterThan(String value) {
            addCriterion("llm_model_name_r >", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRGreaterThanOrEqualTo(String value) {
            addCriterion("llm_model_name_r >=", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRLessThan(String value) {
            addCriterion("llm_model_name_r <", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRLessThanOrEqualTo(String value) {
            addCriterion("llm_model_name_r <=", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRLike(String value) {
            addCriterion("llm_model_name_r like", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRNotLike(String value) {
            addCriterion("llm_model_name_r not like", value, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRIn(List<String> values) {
            addCriterion("llm_model_name_r in", values, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRNotIn(List<String> values) {
            addCriterion("llm_model_name_r not in", values, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRBetween(String value1, String value2) {
            addCriterion("llm_model_name_r between", value1, value2, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andLlmModelNameRNotBetween(String value1, String value2) {
            addCriterion("llm_model_name_r not between", value1, value2, "llmModelNameR");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerIsNull() {
            addCriterion("whaleagent_api_base_lower is null");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerIsNotNull() {
            addCriterion("whaleagent_api_base_lower is not null");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerEqualTo(String value) {
            addCriterion("whaleagent_api_base_lower =", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerNotEqualTo(String value) {
            addCriterion("whaleagent_api_base_lower <>", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerGreaterThan(String value) {
            addCriterion("whaleagent_api_base_lower >", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerGreaterThanOrEqualTo(String value) {
            addCriterion("whaleagent_api_base_lower >=", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerLessThan(String value) {
            addCriterion("whaleagent_api_base_lower <", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerLessThanOrEqualTo(String value) {
            addCriterion("whaleagent_api_base_lower <=", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerLike(String value) {
            addCriterion("whaleagent_api_base_lower like", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerNotLike(String value) {
            addCriterion("whaleagent_api_base_lower not like", value, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerIn(List<String> values) {
            addCriterion("whaleagent_api_base_lower in", values, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerNotIn(List<String> values) {
            addCriterion("whaleagent_api_base_lower not in", values, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerBetween(String value1, String value2) {
            addCriterion("whaleagent_api_base_lower between", value1, value2, "whaleagentApiBaseLower");
            return (Criteria) this;
        }

        public Criteria andWhaleagentApiBaseLowerNotBetween(String value1, String value2) {
            addCriterion("whaleagent_api_base_lower not between", value1, value2, "whaleagentApiBaseLower");
            return (Criteria) this;
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table byai_aimodel
     *
     * @mbggenerated do_not_delete_during_merge
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table byai_aimodel
     *
     * @mbggenerated
     */
    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}