package pwc.taxtech.atms.calendar.entity;

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

public class CalendarConfigurationExample {
    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table calendar_configuration
     *
     * @mbg.generated
     */
    protected String orderByClause;

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

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

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

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

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

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

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

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

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

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table calendar_configuration
     *
     * @mbg.generated
     */
    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 calendar_configuration
     *
     * @mbg.generated
     */
    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 calendar_configuration
     *
     * @mbg.generated
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

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

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table calendar_configuration
     *
     * @mbg.generated
     */
    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 andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Long value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Long value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Long value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Long value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Long value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Long value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Long> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Long> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Long value1, Long value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Long value1, Long value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andTaskNameIsNull() {
            addCriterion("task_name is null");
            return (Criteria) this;
        }

        public Criteria andTaskNameIsNotNull() {
            addCriterion("task_name is not null");
            return (Criteria) this;
        }

        public Criteria andTaskNameEqualTo(String value) {
            addCriterion("task_name =", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotEqualTo(String value) {
            addCriterion("task_name <>", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameGreaterThan(String value) {
            addCriterion("task_name >", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameGreaterThanOrEqualTo(String value) {
            addCriterion("task_name >=", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameLessThan(String value) {
            addCriterion("task_name <", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameLessThanOrEqualTo(String value) {
            addCriterion("task_name <=", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameLike(String value) {
            addCriterion("task_name like", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotLike(String value) {
            addCriterion("task_name not like", value, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameIn(List<String> values) {
            addCriterion("task_name in", values, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotIn(List<String> values) {
            addCriterion("task_name not in", values, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameBetween(String value1, String value2) {
            addCriterion("task_name between", value1, value2, "taskName");
            return (Criteria) this;
        }

        public Criteria andTaskNameNotBetween(String value1, String value2) {
            addCriterion("task_name not between", value1, value2, "taskName");
            return (Criteria) this;
        }

        public Criteria andEntityIdsIsNull() {
            addCriterion("entity_ids is null");
            return (Criteria) this;
        }

        public Criteria andEntityIdsIsNotNull() {
            addCriterion("entity_ids is not null");
            return (Criteria) this;
        }

        public Criteria andEntityIdsEqualTo(String value) {
            addCriterion("entity_ids =", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsNotEqualTo(String value) {
            addCriterion("entity_ids <>", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsGreaterThan(String value) {
            addCriterion("entity_ids >", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsGreaterThanOrEqualTo(String value) {
            addCriterion("entity_ids >=", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsLessThan(String value) {
            addCriterion("entity_ids <", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsLessThanOrEqualTo(String value) {
            addCriterion("entity_ids <=", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsLike(String value) {
            addCriterion("entity_ids like", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsNotLike(String value) {
            addCriterion("entity_ids not like", value, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsIn(List<String> values) {
            addCriterion("entity_ids in", values, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsNotIn(List<String> values) {
            addCriterion("entity_ids not in", values, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsBetween(String value1, String value2) {
            addCriterion("entity_ids between", value1, value2, "entityIds");
            return (Criteria) this;
        }

        public Criteria andEntityIdsNotBetween(String value1, String value2) {
            addCriterion("entity_ids not between", value1, value2, "entityIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsIsNull() {
            addCriterion("task_type_ids is null");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsIsNotNull() {
            addCriterion("task_type_ids is not null");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsEqualTo(String value) {
            addCriterion("task_type_ids =", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsNotEqualTo(String value) {
            addCriterion("task_type_ids <>", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsGreaterThan(String value) {
            addCriterion("task_type_ids >", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsGreaterThanOrEqualTo(String value) {
            addCriterion("task_type_ids >=", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsLessThan(String value) {
            addCriterion("task_type_ids <", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsLessThanOrEqualTo(String value) {
            addCriterion("task_type_ids <=", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsLike(String value) {
            addCriterion("task_type_ids like", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsNotLike(String value) {
            addCriterion("task_type_ids not like", value, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsIn(List<String> values) {
            addCriterion("task_type_ids in", values, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsNotIn(List<String> values) {
            addCriterion("task_type_ids not in", values, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsBetween(String value1, String value2) {
            addCriterion("task_type_ids between", value1, value2, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andTaskTypeIdsNotBetween(String value1, String value2) {
            addCriterion("task_type_ids not between", value1, value2, "taskTypeIds");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsIsNull() {
            addCriterion("project_months is null");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsIsNotNull() {
            addCriterion("project_months is not null");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsEqualTo(String value) {
            addCriterion("project_months =", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsNotEqualTo(String value) {
            addCriterion("project_months <>", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsGreaterThan(String value) {
            addCriterion("project_months >", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsGreaterThanOrEqualTo(String value) {
            addCriterion("project_months >=", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsLessThan(String value) {
            addCriterion("project_months <", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsLessThanOrEqualTo(String value) {
            addCriterion("project_months <=", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsLike(String value) {
            addCriterion("project_months like", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsNotLike(String value) {
            addCriterion("project_months not like", value, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsIn(List<String> values) {
            addCriterion("project_months in", values, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsNotIn(List<String> values) {
            addCriterion("project_months not in", values, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsBetween(String value1, String value2) {
            addCriterion("project_months between", value1, value2, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectMonthsNotBetween(String value1, String value2) {
            addCriterion("project_months not between", value1, value2, "projectMonths");
            return (Criteria) this;
        }

        public Criteria andProjectDaysIsNull() {
            addCriterion("project_days is null");
            return (Criteria) this;
        }

        public Criteria andProjectDaysIsNotNull() {
            addCriterion("project_days is not null");
            return (Criteria) this;
        }

        public Criteria andProjectDaysEqualTo(String value) {
            addCriterion("project_days =", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysNotEqualTo(String value) {
            addCriterion("project_days <>", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysGreaterThan(String value) {
            addCriterion("project_days >", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysGreaterThanOrEqualTo(String value) {
            addCriterion("project_days >=", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysLessThan(String value) {
            addCriterion("project_days <", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysLessThanOrEqualTo(String value) {
            addCriterion("project_days <=", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysLike(String value) {
            addCriterion("project_days like", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysNotLike(String value) {
            addCriterion("project_days not like", value, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysIn(List<String> values) {
            addCriterion("project_days in", values, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysNotIn(List<String> values) {
            addCriterion("project_days not in", values, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysBetween(String value1, String value2) {
            addCriterion("project_days between", value1, value2, "projectDays");
            return (Criteria) this;
        }

        public Criteria andProjectDaysNotBetween(String value1, String value2) {
            addCriterion("project_days not between", value1, value2, "projectDays");
            return (Criteria) this;
        }

        public Criteria andValidDateStartIsNull() {
            addCriterion("valid_date_start is null");
            return (Criteria) this;
        }

        public Criteria andValidDateStartIsNotNull() {
            addCriterion("valid_date_start is not null");
            return (Criteria) this;
        }

        public Criteria andValidDateStartEqualTo(Date value) {
            addCriterion("valid_date_start =", value, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartNotEqualTo(Date value) {
            addCriterion("valid_date_start <>", value, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartGreaterThan(Date value) {
            addCriterion("valid_date_start >", value, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartGreaterThanOrEqualTo(Date value) {
            addCriterion("valid_date_start >=", value, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartLessThan(Date value) {
            addCriterion("valid_date_start <", value, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartLessThanOrEqualTo(Date value) {
            addCriterion("valid_date_start <=", value, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartIn(List<Date> values) {
            addCriterion("valid_date_start in", values, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartNotIn(List<Date> values) {
            addCriterion("valid_date_start not in", values, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartBetween(Date value1, Date value2) {
            addCriterion("valid_date_start between", value1, value2, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateStartNotBetween(Date value1, Date value2) {
            addCriterion("valid_date_start not between", value1, value2, "validDateStart");
            return (Criteria) this;
        }

        public Criteria andValidDateEndIsNull() {
            addCriterion("valid_date_end is null");
            return (Criteria) this;
        }

        public Criteria andValidDateEndIsNotNull() {
            addCriterion("valid_date_end is not null");
            return (Criteria) this;
        }

        public Criteria andValidDateEndEqualTo(Date value) {
            addCriterion("valid_date_end =", value, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndNotEqualTo(Date value) {
            addCriterion("valid_date_end <>", value, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndGreaterThan(Date value) {
            addCriterion("valid_date_end >", value, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndGreaterThanOrEqualTo(Date value) {
            addCriterion("valid_date_end >=", value, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndLessThan(Date value) {
            addCriterion("valid_date_end <", value, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndLessThanOrEqualTo(Date value) {
            addCriterion("valid_date_end <=", value, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndIn(List<Date> values) {
            addCriterion("valid_date_end in", values, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndNotIn(List<Date> values) {
            addCriterion("valid_date_end not in", values, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndBetween(Date value1, Date value2) {
            addCriterion("valid_date_end between", value1, value2, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andValidDateEndNotBetween(Date value1, Date value2) {
            addCriterion("valid_date_end not between", value1, value2, "validDateEnd");
            return (Criteria) this;
        }

        public Criteria andStaffIsNull() {
            addCriterion("staff is null");
            return (Criteria) this;
        }

        public Criteria andStaffIsNotNull() {
            addCriterion("staff is not null");
            return (Criteria) this;
        }

        public Criteria andStaffEqualTo(String value) {
            addCriterion("staff =", value, "staff");
            return (Criteria) this;
        }

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

        public Criteria andStaffGreaterThan(String value) {
            addCriterion("staff >", value, "staff");
            return (Criteria) this;
        }

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

        public Criteria andStaffLessThan(String value) {
            addCriterion("staff <", value, "staff");
            return (Criteria) this;
        }

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

        public Criteria andStaffLike(String value) {
            addCriterion("staff like", value, "staff");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andNotesIsNull() {
            addCriterion("notes is null");
            return (Criteria) this;
        }

        public Criteria andNotesIsNotNull() {
            addCriterion("notes is not null");
            return (Criteria) this;
        }

        public Criteria andNotesEqualTo(String value) {
            addCriterion("notes =", value, "notes");
            return (Criteria) this;
        }

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

        public Criteria andNotesGreaterThan(String value) {
            addCriterion("notes >", value, "notes");
            return (Criteria) this;
        }

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

        public Criteria andNotesLessThan(String value) {
            addCriterion("notes <", value, "notes");
            return (Criteria) this;
        }

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

        public Criteria andNotesLike(String value) {
            addCriterion("notes like", value, "notes");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andOrderIndexIsNull() {
            addCriterion("order_index is null");
            return (Criteria) this;
        }

        public Criteria andOrderIndexIsNotNull() {
            addCriterion("order_index is not null");
            return (Criteria) this;
        }

        public Criteria andOrderIndexEqualTo(Integer value) {
            addCriterion("order_index =", value, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexNotEqualTo(Integer value) {
            addCriterion("order_index <>", value, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexGreaterThan(Integer value) {
            addCriterion("order_index >", value, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_index >=", value, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexLessThan(Integer value) {
            addCriterion("order_index <", value, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexLessThanOrEqualTo(Integer value) {
            addCriterion("order_index <=", value, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexIn(List<Integer> values) {
            addCriterion("order_index in", values, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexNotIn(List<Integer> values) {
            addCriterion("order_index not in", values, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexBetween(Integer value1, Integer value2) {
            addCriterion("order_index between", value1, value2, "orderIndex");
            return (Criteria) this;
        }

        public Criteria andOrderIndexNotBetween(Integer value1, Integer value2) {
            addCriterion("order_index not between", value1, value2, "orderIndex");
            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(Byte value) {
            addCriterion("`status` =", value, "status");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andStatusNotBetween(Byte value1, Byte value2) {
            addCriterion("`status` not between", value1, value2, "status");
            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 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;
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table calendar_configuration
     *
     * @mbg.generated 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 calendar_configuration
     *
     * @mbg.generated
     */
    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);
        }
    }
}