package com.bailuntec.domain.example;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

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

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

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

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    protected Integer offset;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    protected Integer rows;

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

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

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

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

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

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

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

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @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 dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcAutoWeekSalesExample orderBy(String orderByClause) {
        this.setOrderByClause(orderByClause);
        return this;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcAutoWeekSalesExample orderBy(String ... orderByClauses) {
        StringBuffer sb = new StringBuffer();
        for (int i = 0; i < orderByClauses.length; i++) {
            sb.append(orderByClauses[i]);
            if (i < orderByClauses.length - 1) {
                sb.append(" , ");
            }
        }
        this.setOrderByClause(sb.toString());
        return this;
    }

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

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

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public static Criteria newAndCreateCriteria() {
        DcAutoWeekSalesExample example = new DcAutoWeekSalesExample();
        return example.createCriteria();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcAutoWeekSalesExample when(boolean condition, IExampleWhen then) {
        if (condition) {
            then.example(this);
        }
        return this;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcAutoWeekSalesExample when(boolean condition, IExampleWhen then, IExampleWhen otherwise) {
        if (condition) {
            then.example(this);
        } else {
            otherwise.example(this);
        }
        return this;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public Integer getOffset() {
        return this.offset;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public void setRows(Integer rows) {
        this.rows = rows;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public Integer getRows() {
        return this.rows;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcAutoWeekSalesExample limit(Integer rows) {
        this.rows = rows;
        return this;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcAutoWeekSalesExample limit(Integer offset, Integer rows) {
        this.offset = offset;
        this.rows = rows;
        return this;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcAutoWeekSalesExample page(Integer page, Integer pageSize) {
        this.offset = page * pageSize;
        this.rows = pageSize;
        return this;
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table dc_auto_week_sales
     *
     * @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(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

        public Criteria andBailunSkuIsNull() {
            addCriterion("bailun_sku is null");
            return (Criteria) this;
        }

        public Criteria andBailunSkuIsNotNull() {
            addCriterion("bailun_sku is not null");
            return (Criteria) this;
        }

        public Criteria andBailunSkuEqualTo(String value) {
            addCriterion("bailun_sku =", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuNotEqualTo(String value) {
            addCriterion("bailun_sku <>", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuGreaterThan(String value) {
            addCriterion("bailun_sku >", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuGreaterThanOrEqualTo(String value) {
            addCriterion("bailun_sku >=", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuLessThan(String value) {
            addCriterion("bailun_sku <", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuLessThanOrEqualTo(String value) {
            addCriterion("bailun_sku <=", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuLike(String value) {
            addCriterion("bailun_sku like", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuNotLike(String value) {
            addCriterion("bailun_sku not like", value, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuIn(List<String> values) {
            addCriterion("bailun_sku in", values, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuNotIn(List<String> values) {
            addCriterion("bailun_sku not in", values, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuBetween(String value1, String value2) {
            addCriterion("bailun_sku between", value1, value2, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andBailunSkuNotBetween(String value1, String value2) {
            addCriterion("bailun_sku not between", value1, value2, "bailunSku");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeIsNull() {
            addCriterion("warehouse_code is null");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeIsNotNull() {
            addCriterion("warehouse_code is not null");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeEqualTo(String value) {
            addCriterion("warehouse_code =", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotEqualTo(String value) {
            addCriterion("warehouse_code <>", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeGreaterThan(String value) {
            addCriterion("warehouse_code >", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeGreaterThanOrEqualTo(String value) {
            addCriterion("warehouse_code >=", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeLessThan(String value) {
            addCriterion("warehouse_code <", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeLessThanOrEqualTo(String value) {
            addCriterion("warehouse_code <=", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeLike(String value) {
            addCriterion("warehouse_code like", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotLike(String value) {
            addCriterion("warehouse_code not like", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeIn(List<String> values) {
            addCriterion("warehouse_code in", values, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotIn(List<String> values) {
            addCriterion("warehouse_code not in", values, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeBetween(String value1, String value2) {
            addCriterion("warehouse_code between", value1, value2, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotBetween(String value1, String value2) {
            addCriterion("warehouse_code not between", value1, value2, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andReportDateIsNull() {
            addCriterion("report_date is null");
            return (Criteria) this;
        }

        public Criteria andReportDateIsNotNull() {
            addCriterion("report_date is not null");
            return (Criteria) this;
        }

        public Criteria andReportDateEqualTo(Integer value) {
            addCriterion("report_date =", value, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateNotEqualTo(Integer value) {
            addCriterion("report_date <>", value, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateGreaterThan(Integer value) {
            addCriterion("report_date >", value, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateGreaterThanOrEqualTo(Integer value) {
            addCriterion("report_date >=", value, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateLessThan(Integer value) {
            addCriterion("report_date <", value, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateLessThanOrEqualTo(Integer value) {
            addCriterion("report_date <=", value, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateIn(List<Integer> values) {
            addCriterion("report_date in", values, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateNotIn(List<Integer> values) {
            addCriterion("report_date not in", values, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateBetween(Integer value1, Integer value2) {
            addCriterion("report_date between", value1, value2, "reportDate");
            return (Criteria) this;
        }

        public Criteria andReportDateNotBetween(Integer value1, Integer value2) {
            addCriterion("report_date not between", value1, value2, "reportDate");
            return (Criteria) this;
        }

        public Criteria andWeekTimeIsNull() {
            addCriterion("week_time is null");
            return (Criteria) this;
        }

        public Criteria andWeekTimeIsNotNull() {
            addCriterion("week_time is not null");
            return (Criteria) this;
        }

        public Criteria andWeekTimeEqualTo(String value) {
            addCriterion("week_time =", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeNotEqualTo(String value) {
            addCriterion("week_time <>", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeGreaterThan(String value) {
            addCriterion("week_time >", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeGreaterThanOrEqualTo(String value) {
            addCriterion("week_time >=", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeLessThan(String value) {
            addCriterion("week_time <", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeLessThanOrEqualTo(String value) {
            addCriterion("week_time <=", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeLike(String value) {
            addCriterion("week_time like", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeNotLike(String value) {
            addCriterion("week_time not like", value, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeIn(List<String> values) {
            addCriterion("week_time in", values, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeNotIn(List<String> values) {
            addCriterion("week_time not in", values, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeBetween(String value1, String value2) {
            addCriterion("week_time between", value1, value2, "weekTime");
            return (Criteria) this;
        }

        public Criteria andWeekTimeNotBetween(String value1, String value2) {
            addCriterion("week_time not between", value1, value2, "weekTime");
            return (Criteria) this;
        }

        public Criteria andBjCreateIsNull() {
            addCriterion("bj_create is null");
            return (Criteria) this;
        }

        public Criteria andBjCreateIsNotNull() {
            addCriterion("bj_create is not null");
            return (Criteria) this;
        }

        public Criteria andBjCreateEqualTo(LocalDateTime value) {
            addCriterion("bj_create =", value, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateNotEqualTo(LocalDateTime value) {
            addCriterion("bj_create <>", value, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateGreaterThan(LocalDateTime value) {
            addCriterion("bj_create >", value, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("bj_create >=", value, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateLessThan(LocalDateTime value) {
            addCriterion("bj_create <", value, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("bj_create <=", value, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateIn(List<LocalDateTime> values) {
            addCriterion("bj_create in", values, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateNotIn(List<LocalDateTime> values) {
            addCriterion("bj_create not in", values, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("bj_create between", value1, value2, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjCreateNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("bj_create not between", value1, value2, "bjCreate");
            return (Criteria) this;
        }

        public Criteria andBjModifiedIsNull() {
            addCriterion("bj_modified is null");
            return (Criteria) this;
        }

        public Criteria andBjModifiedIsNotNull() {
            addCriterion("bj_modified is not null");
            return (Criteria) this;
        }

        public Criteria andBjModifiedEqualTo(LocalDateTime value) {
            addCriterion("bj_modified =", value, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedNotEqualTo(LocalDateTime value) {
            addCriterion("bj_modified <>", value, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedGreaterThan(LocalDateTime value) {
            addCriterion("bj_modified >", value, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("bj_modified >=", value, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedLessThan(LocalDateTime value) {
            addCriterion("bj_modified <", value, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("bj_modified <=", value, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedIn(List<LocalDateTime> values) {
            addCriterion("bj_modified in", values, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedNotIn(List<LocalDateTime> values) {
            addCriterion("bj_modified not in", values, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("bj_modified between", value1, value2, "bjModified");
            return (Criteria) this;
        }

        public Criteria andBjModifiedNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("bj_modified not between", value1, value2, "bjModified");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateIsNull() {
            addCriterion("one_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateIsNotNull() {
            addCriterion("one_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateEqualTo(BigDecimal value) {
            addCriterion("one_week_rate =", value, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("one_week_rate <>", value, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("one_week_rate >", value, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("one_week_rate >=", value, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateLessThan(BigDecimal value) {
            addCriterion("one_week_rate <", value, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("one_week_rate <=", value, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateIn(List<BigDecimal> values) {
            addCriterion("one_week_rate in", values, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("one_week_rate not in", values, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("one_week_rate between", value1, value2, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andOneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("one_week_rate not between", value1, value2, "oneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateIsNull() {
            addCriterion("two_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateIsNotNull() {
            addCriterion("two_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateEqualTo(BigDecimal value) {
            addCriterion("two_week_rate =", value, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("two_week_rate <>", value, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateGreaterThan(BigDecimal value) {
            addCriterion("two_week_rate >", value, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("two_week_rate >=", value, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateLessThan(BigDecimal value) {
            addCriterion("two_week_rate <", value, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("two_week_rate <=", value, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateIn(List<BigDecimal> values) {
            addCriterion("two_week_rate in", values, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("two_week_rate not in", values, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("two_week_rate between", value1, value2, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwoWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("two_week_rate not between", value1, value2, "twoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateIsNull() {
            addCriterion("three_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateIsNotNull() {
            addCriterion("three_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateEqualTo(BigDecimal value) {
            addCriterion("three_week_rate =", value, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("three_week_rate <>", value, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateGreaterThan(BigDecimal value) {
            addCriterion("three_week_rate >", value, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("three_week_rate >=", value, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateLessThan(BigDecimal value) {
            addCriterion("three_week_rate <", value, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("three_week_rate <=", value, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateIn(List<BigDecimal> values) {
            addCriterion("three_week_rate in", values, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("three_week_rate not in", values, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("three_week_rate between", value1, value2, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThreeWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("three_week_rate not between", value1, value2, "threeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateIsNull() {
            addCriterion("fourth_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateIsNotNull() {
            addCriterion("fourth_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateEqualTo(BigDecimal value) {
            addCriterion("fourth_week_rate =", value, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("fourth_week_rate <>", value, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateGreaterThan(BigDecimal value) {
            addCriterion("fourth_week_rate >", value, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fourth_week_rate >=", value, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateLessThan(BigDecimal value) {
            addCriterion("fourth_week_rate <", value, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fourth_week_rate <=", value, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateIn(List<BigDecimal> values) {
            addCriterion("fourth_week_rate in", values, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("fourth_week_rate not in", values, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fourth_week_rate between", value1, value2, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourthWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fourth_week_rate not between", value1, value2, "fourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateIsNull() {
            addCriterion("five_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateIsNotNull() {
            addCriterion("five_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateEqualTo(BigDecimal value) {
            addCriterion("five_week_rate =", value, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("five_week_rate <>", value, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateGreaterThan(BigDecimal value) {
            addCriterion("five_week_rate >", value, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("five_week_rate >=", value, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateLessThan(BigDecimal value) {
            addCriterion("five_week_rate <", value, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("five_week_rate <=", value, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateIn(List<BigDecimal> values) {
            addCriterion("five_week_rate in", values, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("five_week_rate not in", values, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("five_week_rate between", value1, value2, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiveWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("five_week_rate not between", value1, value2, "fiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateIsNull() {
            addCriterion("six_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateIsNotNull() {
            addCriterion("six_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateEqualTo(BigDecimal value) {
            addCriterion("six_week_rate =", value, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("six_week_rate <>", value, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateGreaterThan(BigDecimal value) {
            addCriterion("six_week_rate >", value, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("six_week_rate >=", value, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateLessThan(BigDecimal value) {
            addCriterion("six_week_rate <", value, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("six_week_rate <=", value, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateIn(List<BigDecimal> values) {
            addCriterion("six_week_rate in", values, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("six_week_rate not in", values, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("six_week_rate between", value1, value2, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("six_week_rate not between", value1, value2, "sixWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateIsNull() {
            addCriterion("seven_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateIsNotNull() {
            addCriterion("seven_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateEqualTo(BigDecimal value) {
            addCriterion("seven_week_rate =", value, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("seven_week_rate <>", value, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("seven_week_rate >", value, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("seven_week_rate >=", value, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateLessThan(BigDecimal value) {
            addCriterion("seven_week_rate <", value, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("seven_week_rate <=", value, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateIn(List<BigDecimal> values) {
            addCriterion("seven_week_rate in", values, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("seven_week_rate not in", values, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("seven_week_rate between", value1, value2, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSevenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("seven_week_rate not between", value1, value2, "sevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateIsNull() {
            addCriterion("eight_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateIsNotNull() {
            addCriterion("eight_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateEqualTo(BigDecimal value) {
            addCriterion("eight_week_rate =", value, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("eight_week_rate <>", value, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateGreaterThan(BigDecimal value) {
            addCriterion("eight_week_rate >", value, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("eight_week_rate >=", value, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateLessThan(BigDecimal value) {
            addCriterion("eight_week_rate <", value, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("eight_week_rate <=", value, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateIn(List<BigDecimal> values) {
            addCriterion("eight_week_rate in", values, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("eight_week_rate not in", values, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("eight_week_rate between", value1, value2, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andEightWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("eight_week_rate not between", value1, value2, "eightWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateIsNull() {
            addCriterion("nine_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateIsNotNull() {
            addCriterion("nine_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateEqualTo(BigDecimal value) {
            addCriterion("nine_week_rate =", value, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("nine_week_rate <>", value, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateGreaterThan(BigDecimal value) {
            addCriterion("nine_week_rate >", value, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("nine_week_rate >=", value, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateLessThan(BigDecimal value) {
            addCriterion("nine_week_rate <", value, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("nine_week_rate <=", value, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateIn(List<BigDecimal> values) {
            addCriterion("nine_week_rate in", values, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("nine_week_rate not in", values, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("nine_week_rate between", value1, value2, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("nine_week_rate not between", value1, value2, "nineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateIsNull() {
            addCriterion("ten_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateIsNotNull() {
            addCriterion("ten_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateEqualTo(BigDecimal value) {
            addCriterion("ten_week_rate =", value, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("ten_week_rate <>", value, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("ten_week_rate >", value, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("ten_week_rate >=", value, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateLessThan(BigDecimal value) {
            addCriterion("ten_week_rate <", value, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("ten_week_rate <=", value, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateIn(List<BigDecimal> values) {
            addCriterion("ten_week_rate in", values, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("ten_week_rate not in", values, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ten_week_rate between", value1, value2, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("ten_week_rate not between", value1, value2, "tenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateIsNull() {
            addCriterion("eleven_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateIsNotNull() {
            addCriterion("eleven_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateEqualTo(BigDecimal value) {
            addCriterion("eleven_week_rate =", value, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("eleven_week_rate <>", value, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("eleven_week_rate >", value, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("eleven_week_rate >=", value, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateLessThan(BigDecimal value) {
            addCriterion("eleven_week_rate <", value, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("eleven_week_rate <=", value, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateIn(List<BigDecimal> values) {
            addCriterion("eleven_week_rate in", values, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("eleven_week_rate not in", values, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("eleven_week_rate between", value1, value2, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andElevenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("eleven_week_rate not between", value1, value2, "elevenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateIsNull() {
            addCriterion("twelve_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateIsNotNull() {
            addCriterion("twelve_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateEqualTo(BigDecimal value) {
            addCriterion("twelve_week_rate =", value, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twelve_week_rate <>", value, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twelve_week_rate >", value, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twelve_week_rate >=", value, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateLessThan(BigDecimal value) {
            addCriterion("twelve_week_rate <", value, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twelve_week_rate <=", value, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateIn(List<BigDecimal> values) {
            addCriterion("twelve_week_rate in", values, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twelve_week_rate not in", values, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twelve_week_rate between", value1, value2, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwelveWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twelve_week_rate not between", value1, value2, "twelveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateIsNull() {
            addCriterion("thridteen_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateIsNotNull() {
            addCriterion("thridteen_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateEqualTo(BigDecimal value) {
            addCriterion("thridteen_week_rate =", value, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thridteen_week_rate <>", value, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thridteen_week_rate >", value, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thridteen_week_rate >=", value, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateLessThan(BigDecimal value) {
            addCriterion("thridteen_week_rate <", value, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thridteen_week_rate <=", value, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateIn(List<BigDecimal> values) {
            addCriterion("thridteen_week_rate in", values, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thridteen_week_rate not in", values, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thridteen_week_rate between", value1, value2, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andThridteenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thridteen_week_rate not between", value1, value2, "thridteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateIsNull() {
            addCriterion("fourteen_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateIsNotNull() {
            addCriterion("fourteen_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateEqualTo(BigDecimal value) {
            addCriterion("fourteen_week_rate =", value, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("fourteen_week_rate <>", value, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("fourteen_week_rate >", value, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fourteen_week_rate >=", value, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateLessThan(BigDecimal value) {
            addCriterion("fourteen_week_rate <", value, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fourteen_week_rate <=", value, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateIn(List<BigDecimal> values) {
            addCriterion("fourteen_week_rate in", values, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("fourteen_week_rate not in", values, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fourteen_week_rate between", value1, value2, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFourteenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fourteen_week_rate not between", value1, value2, "fourteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateIsNull() {
            addCriterion("fifteen_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateIsNotNull() {
            addCriterion("fifteen_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateEqualTo(BigDecimal value) {
            addCriterion("fifteen_week_rate =", value, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("fifteen_week_rate <>", value, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("fifteen_week_rate >", value, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fifteen_week_rate >=", value, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateLessThan(BigDecimal value) {
            addCriterion("fifteen_week_rate <", value, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fifteen_week_rate <=", value, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateIn(List<BigDecimal> values) {
            addCriterion("fifteen_week_rate in", values, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("fifteen_week_rate not in", values, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifteen_week_rate between", value1, value2, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andFifteenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifteen_week_rate not between", value1, value2, "fifteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateIsNull() {
            addCriterion("sixteen_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateIsNotNull() {
            addCriterion("sixteen_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateEqualTo(BigDecimal value) {
            addCriterion("sixteen_week_rate =", value, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("sixteen_week_rate <>", value, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("sixteen_week_rate >", value, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("sixteen_week_rate >=", value, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateLessThan(BigDecimal value) {
            addCriterion("sixteen_week_rate <", value, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("sixteen_week_rate <=", value, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateIn(List<BigDecimal> values) {
            addCriterion("sixteen_week_rate in", values, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("sixteen_week_rate not in", values, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("sixteen_week_rate between", value1, value2, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSixteenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("sixteen_week_rate not between", value1, value2, "sixteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateIsNull() {
            addCriterion("seventeen_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateIsNotNull() {
            addCriterion("seventeen_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateEqualTo(BigDecimal value) {
            addCriterion("seventeen_week_rate =", value, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("seventeen_week_rate <>", value, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("seventeen_week_rate >", value, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("seventeen_week_rate >=", value, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateLessThan(BigDecimal value) {
            addCriterion("seventeen_week_rate <", value, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("seventeen_week_rate <=", value, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateIn(List<BigDecimal> values) {
            addCriterion("seventeen_week_rate in", values, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("seventeen_week_rate not in", values, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("seventeen_week_rate between", value1, value2, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andSeventeenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("seventeen_week_rate not between", value1, value2, "seventeenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateIsNull() {
            addCriterion("eighteen_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateIsNotNull() {
            addCriterion("eighteen_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateEqualTo(BigDecimal value) {
            addCriterion("eighteen_week_rate =", value, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("eighteen_week_rate <>", value, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("eighteen_week_rate >", value, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("eighteen_week_rate >=", value, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateLessThan(BigDecimal value) {
            addCriterion("eighteen_week_rate <", value, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("eighteen_week_rate <=", value, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateIn(List<BigDecimal> values) {
            addCriterion("eighteen_week_rate in", values, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("eighteen_week_rate not in", values, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("eighteen_week_rate between", value1, value2, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andEighteenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("eighteen_week_rate not between", value1, value2, "eighteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateIsNull() {
            addCriterion("nineteen_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateIsNotNull() {
            addCriterion("nineteen_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateEqualTo(BigDecimal value) {
            addCriterion("nineteen_week_rate =", value, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("nineteen_week_rate <>", value, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateGreaterThan(BigDecimal value) {
            addCriterion("nineteen_week_rate >", value, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("nineteen_week_rate >=", value, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateLessThan(BigDecimal value) {
            addCriterion("nineteen_week_rate <", value, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("nineteen_week_rate <=", value, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateIn(List<BigDecimal> values) {
            addCriterion("nineteen_week_rate in", values, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("nineteen_week_rate not in", values, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("nineteen_week_rate between", value1, value2, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andNineteenWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("nineteen_week_rate not between", value1, value2, "nineteenWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateIsNull() {
            addCriterion("twenty_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateIsNotNull() {
            addCriterion("twenty_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_week_rate =", value, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_week_rate <>", value, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_week_rate >", value, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_week_rate >=", value, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_week_rate <", value, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_week_rate <=", value, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_week_rate in", values, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_week_rate not in", values, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_week_rate between", value1, value2, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_week_rate not between", value1, value2, "twentyWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateIsNull() {
            addCriterion("twenty_one_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateIsNotNull() {
            addCriterion("twenty_one_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_one_week_rate =", value, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_one_week_rate <>", value, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_one_week_rate >", value, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_one_week_rate >=", value, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_one_week_rate <", value, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_one_week_rate <=", value, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_one_week_rate in", values, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_one_week_rate not in", values, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_one_week_rate between", value1, value2, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyOneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_one_week_rate not between", value1, value2, "twentyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateIsNull() {
            addCriterion("twenty_two_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateIsNotNull() {
            addCriterion("twenty_two_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_two_week_rate =", value, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_two_week_rate <>", value, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_two_week_rate >", value, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_two_week_rate >=", value, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_two_week_rate <", value, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_two_week_rate <=", value, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_two_week_rate in", values, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_two_week_rate not in", values, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_two_week_rate between", value1, value2, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyTwoWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_two_week_rate not between", value1, value2, "twentyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateIsNull() {
            addCriterion("twenty_three_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateIsNotNull() {
            addCriterion("twenty_three_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_three_week_rate =", value, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_three_week_rate <>", value, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_three_week_rate >", value, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_three_week_rate >=", value, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_three_week_rate <", value, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_three_week_rate <=", value, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_three_week_rate in", values, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_three_week_rate not in", values, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_three_week_rate between", value1, value2, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyThreeWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_three_week_rate not between", value1, value2, "twentyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateIsNull() {
            addCriterion("twenty_fourth_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateIsNotNull() {
            addCriterion("twenty_fourth_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_fourth_week_rate =", value, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_fourth_week_rate <>", value, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_fourth_week_rate >", value, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_fourth_week_rate >=", value, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_fourth_week_rate <", value, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_fourth_week_rate <=", value, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_fourth_week_rate in", values, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_fourth_week_rate not in", values, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_fourth_week_rate between", value1, value2, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFourthWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_fourth_week_rate not between", value1, value2, "twentyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateIsNull() {
            addCriterion("twenty_five_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateIsNotNull() {
            addCriterion("twenty_five_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_five_week_rate =", value, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_five_week_rate <>", value, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_five_week_rate >", value, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_five_week_rate >=", value, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_five_week_rate <", value, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_five_week_rate <=", value, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_five_week_rate in", values, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_five_week_rate not in", values, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_five_week_rate between", value1, value2, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyFiveWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_five_week_rate not between", value1, value2, "twentyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateIsNull() {
            addCriterion("twenty_six_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateIsNotNull() {
            addCriterion("twenty_six_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_six_week_rate =", value, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_six_week_rate <>", value, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_six_week_rate >", value, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_six_week_rate >=", value, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_six_week_rate <", value, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_six_week_rate <=", value, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_six_week_rate in", values, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_six_week_rate not in", values, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_six_week_rate between", value1, value2, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySixWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_six_week_rate not between", value1, value2, "twentySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateIsNull() {
            addCriterion("twenty_sevene_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateIsNotNull() {
            addCriterion("twenty_sevene_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_sevene_week_rate =", value, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_sevene_week_rate <>", value, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_sevene_week_rate >", value, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_sevene_week_rate >=", value, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_sevene_week_rate <", value, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_sevene_week_rate <=", value, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_sevene_week_rate in", values, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_sevene_week_rate not in", values, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_sevene_week_rate between", value1, value2, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentySeveneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_sevene_week_rate not between", value1, value2, "twentySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateIsNull() {
            addCriterion("twenty_eight_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateIsNotNull() {
            addCriterion("twenty_eight_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_eight_week_rate =", value, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_eight_week_rate <>", value, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_eight_week_rate >", value, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_eight_week_rate >=", value, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_eight_week_rate <", value, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_eight_week_rate <=", value, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_eight_week_rate in", values, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_eight_week_rate not in", values, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_eight_week_rate between", value1, value2, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyEightWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_eight_week_rate not between", value1, value2, "twentyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateIsNull() {
            addCriterion("twenty_nine_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateIsNotNull() {
            addCriterion("twenty_nine_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateEqualTo(BigDecimal value) {
            addCriterion("twenty_nine_week_rate =", value, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("twenty_nine_week_rate <>", value, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateGreaterThan(BigDecimal value) {
            addCriterion("twenty_nine_week_rate >", value, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_nine_week_rate >=", value, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateLessThan(BigDecimal value) {
            addCriterion("twenty_nine_week_rate <", value, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("twenty_nine_week_rate <=", value, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateIn(List<BigDecimal> values) {
            addCriterion("twenty_nine_week_rate in", values, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("twenty_nine_week_rate not in", values, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_nine_week_rate between", value1, value2, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andTwentyNineWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("twenty_nine_week_rate not between", value1, value2, "twentyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateIsNull() {
            addCriterion("thirty_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateIsNotNull() {
            addCriterion("thirty_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_week_rate =", value, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_week_rate <>", value, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_week_rate >", value, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_week_rate >=", value, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_week_rate <", value, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_week_rate <=", value, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_week_rate in", values, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_week_rate not in", values, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_week_rate between", value1, value2, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_week_rate not between", value1, value2, "thirtyWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateIsNull() {
            addCriterion("thirty_one_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateIsNotNull() {
            addCriterion("thirty_one_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_one_week_rate =", value, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_one_week_rate <>", value, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_one_week_rate >", value, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_one_week_rate >=", value, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_one_week_rate <", value, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_one_week_rate <=", value, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_one_week_rate in", values, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_one_week_rate not in", values, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_one_week_rate between", value1, value2, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyOneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_one_week_rate not between", value1, value2, "thirtyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateIsNull() {
            addCriterion("thirty_two_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateIsNotNull() {
            addCriterion("thirty_two_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_two_week_rate =", value, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_two_week_rate <>", value, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_two_week_rate >", value, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_two_week_rate >=", value, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_two_week_rate <", value, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_two_week_rate <=", value, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_two_week_rate in", values, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_two_week_rate not in", values, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_two_week_rate between", value1, value2, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyTwoWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_two_week_rate not between", value1, value2, "thirtyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateIsNull() {
            addCriterion("thirty_three_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateIsNotNull() {
            addCriterion("thirty_three_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_three_week_rate =", value, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_three_week_rate <>", value, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_three_week_rate >", value, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_three_week_rate >=", value, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_three_week_rate <", value, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_three_week_rate <=", value, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_three_week_rate in", values, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_three_week_rate not in", values, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_three_week_rate between", value1, value2, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyThreeWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_three_week_rate not between", value1, value2, "thirtyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateIsNull() {
            addCriterion("thirty_fourth_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateIsNotNull() {
            addCriterion("thirty_fourth_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_fourth_week_rate =", value, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_fourth_week_rate <>", value, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_fourth_week_rate >", value, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_fourth_week_rate >=", value, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_fourth_week_rate <", value, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_fourth_week_rate <=", value, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_fourth_week_rate in", values, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_fourth_week_rate not in", values, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_fourth_week_rate between", value1, value2, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFourthWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_fourth_week_rate not between", value1, value2, "thirtyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateIsNull() {
            addCriterion("thirty_five_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateIsNotNull() {
            addCriterion("thirty_five_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_five_week_rate =", value, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_five_week_rate <>", value, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_five_week_rate >", value, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_five_week_rate >=", value, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_five_week_rate <", value, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_five_week_rate <=", value, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_five_week_rate in", values, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_five_week_rate not in", values, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_five_week_rate between", value1, value2, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyFiveWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_five_week_rate not between", value1, value2, "thirtyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateIsNull() {
            addCriterion("thirty_six_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateIsNotNull() {
            addCriterion("thirty_six_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_six_week_rate =", value, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_six_week_rate <>", value, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_six_week_rate >", value, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_six_week_rate >=", value, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_six_week_rate <", value, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_six_week_rate <=", value, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_six_week_rate in", values, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_six_week_rate not in", values, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_six_week_rate between", value1, value2, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySixWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_six_week_rate not between", value1, value2, "thirtySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateIsNull() {
            addCriterion("thirty_sevene_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateIsNotNull() {
            addCriterion("thirty_sevene_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_sevene_week_rate =", value, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_sevene_week_rate <>", value, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_sevene_week_rate >", value, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_sevene_week_rate >=", value, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_sevene_week_rate <", value, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_sevene_week_rate <=", value, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_sevene_week_rate in", values, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_sevene_week_rate not in", values, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_sevene_week_rate between", value1, value2, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtySeveneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_sevene_week_rate not between", value1, value2, "thirtySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateIsNull() {
            addCriterion("thirty_eight_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateIsNotNull() {
            addCriterion("thirty_eight_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_eight_week_rate =", value, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_eight_week_rate <>", value, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_eight_week_rate >", value, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_eight_week_rate >=", value, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_eight_week_rate <", value, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_eight_week_rate <=", value, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_eight_week_rate in", values, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_eight_week_rate not in", values, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_eight_week_rate between", value1, value2, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyEightWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_eight_week_rate not between", value1, value2, "thirtyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateIsNull() {
            addCriterion("thirty_nine_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateIsNotNull() {
            addCriterion("thirty_nine_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateEqualTo(BigDecimal value) {
            addCriterion("thirty_nine_week_rate =", value, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("thirty_nine_week_rate <>", value, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateGreaterThan(BigDecimal value) {
            addCriterion("thirty_nine_week_rate >", value, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_nine_week_rate >=", value, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateLessThan(BigDecimal value) {
            addCriterion("thirty_nine_week_rate <", value, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("thirty_nine_week_rate <=", value, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateIn(List<BigDecimal> values) {
            addCriterion("thirty_nine_week_rate in", values, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("thirty_nine_week_rate not in", values, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_nine_week_rate between", value1, value2, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andThirtyNineWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("thirty_nine_week_rate not between", value1, value2, "thirtyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateIsNull() {
            addCriterion("forty_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateIsNotNull() {
            addCriterion("forty_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_week_rate =", value, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_week_rate <>", value, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_week_rate >", value, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_week_rate >=", value, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_week_rate <", value, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_week_rate <=", value, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_week_rate in", values, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_week_rate not in", values, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_week_rate between", value1, value2, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_week_rate not between", value1, value2, "fortyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateIsNull() {
            addCriterion("forty_one_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateIsNotNull() {
            addCriterion("forty_one_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_one_week_rate =", value, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_one_week_rate <>", value, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_one_week_rate >", value, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_one_week_rate >=", value, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_one_week_rate <", value, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_one_week_rate <=", value, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_one_week_rate in", values, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_one_week_rate not in", values, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_one_week_rate between", value1, value2, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyOneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_one_week_rate not between", value1, value2, "fortyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateIsNull() {
            addCriterion("forty_two_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateIsNotNull() {
            addCriterion("forty_two_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_two_week_rate =", value, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_two_week_rate <>", value, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_two_week_rate >", value, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_two_week_rate >=", value, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_two_week_rate <", value, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_two_week_rate <=", value, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_two_week_rate in", values, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_two_week_rate not in", values, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_two_week_rate between", value1, value2, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyTwoWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_two_week_rate not between", value1, value2, "fortyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateIsNull() {
            addCriterion("forty_three_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateIsNotNull() {
            addCriterion("forty_three_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_three_week_rate =", value, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_three_week_rate <>", value, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_three_week_rate >", value, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_three_week_rate >=", value, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_three_week_rate <", value, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_three_week_rate <=", value, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_three_week_rate in", values, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_three_week_rate not in", values, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_three_week_rate between", value1, value2, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyThreeWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_three_week_rate not between", value1, value2, "fortyThreeWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateIsNull() {
            addCriterion("forty_fourth_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateIsNotNull() {
            addCriterion("forty_fourth_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_fourth_week_rate =", value, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_fourth_week_rate <>", value, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_fourth_week_rate >", value, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_fourth_week_rate >=", value, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_fourth_week_rate <", value, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_fourth_week_rate <=", value, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_fourth_week_rate in", values, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_fourth_week_rate not in", values, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_fourth_week_rate between", value1, value2, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFourthWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_fourth_week_rate not between", value1, value2, "fortyFourthWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateIsNull() {
            addCriterion("forty_five_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateIsNotNull() {
            addCriterion("forty_five_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_five_week_rate =", value, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_five_week_rate <>", value, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_five_week_rate >", value, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_five_week_rate >=", value, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_five_week_rate <", value, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_five_week_rate <=", value, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_five_week_rate in", values, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_five_week_rate not in", values, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_five_week_rate between", value1, value2, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyFiveWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_five_week_rate not between", value1, value2, "fortyFiveWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateIsNull() {
            addCriterion("forty_six_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateIsNotNull() {
            addCriterion("forty_six_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_six_week_rate =", value, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_six_week_rate <>", value, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_six_week_rate >", value, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_six_week_rate >=", value, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_six_week_rate <", value, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_six_week_rate <=", value, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_six_week_rate in", values, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_six_week_rate not in", values, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_six_week_rate between", value1, value2, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySixWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_six_week_rate not between", value1, value2, "fortySixWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateIsNull() {
            addCriterion("forty_sevene_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateIsNotNull() {
            addCriterion("forty_sevene_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_sevene_week_rate =", value, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_sevene_week_rate <>", value, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_sevene_week_rate >", value, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_sevene_week_rate >=", value, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_sevene_week_rate <", value, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_sevene_week_rate <=", value, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_sevene_week_rate in", values, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_sevene_week_rate not in", values, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_sevene_week_rate between", value1, value2, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortySeveneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_sevene_week_rate not between", value1, value2, "fortySeveneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateIsNull() {
            addCriterion("forty_eight_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateIsNotNull() {
            addCriterion("forty_eight_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_eight_week_rate =", value, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_eight_week_rate <>", value, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_eight_week_rate >", value, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_eight_week_rate >=", value, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_eight_week_rate <", value, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_eight_week_rate <=", value, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_eight_week_rate in", values, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_eight_week_rate not in", values, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_eight_week_rate between", value1, value2, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyEightWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_eight_week_rate not between", value1, value2, "fortyEightWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateIsNull() {
            addCriterion("forty_nine_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateIsNotNull() {
            addCriterion("forty_nine_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateEqualTo(BigDecimal value) {
            addCriterion("forty_nine_week_rate =", value, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("forty_nine_week_rate <>", value, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateGreaterThan(BigDecimal value) {
            addCriterion("forty_nine_week_rate >", value, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_nine_week_rate >=", value, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateLessThan(BigDecimal value) {
            addCriterion("forty_nine_week_rate <", value, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("forty_nine_week_rate <=", value, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateIn(List<BigDecimal> values) {
            addCriterion("forty_nine_week_rate in", values, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("forty_nine_week_rate not in", values, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_nine_week_rate between", value1, value2, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFortyNineWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("forty_nine_week_rate not between", value1, value2, "fortyNineWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateIsNull() {
            addCriterion("fifty_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateIsNotNull() {
            addCriterion("fifty_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateEqualTo(BigDecimal value) {
            addCriterion("fifty_week_rate =", value, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("fifty_week_rate <>", value, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateGreaterThan(BigDecimal value) {
            addCriterion("fifty_week_rate >", value, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fifty_week_rate >=", value, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateLessThan(BigDecimal value) {
            addCriterion("fifty_week_rate <", value, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fifty_week_rate <=", value, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateIn(List<BigDecimal> values) {
            addCriterion("fifty_week_rate in", values, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("fifty_week_rate not in", values, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifty_week_rate between", value1, value2, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifty_week_rate not between", value1, value2, "fiftyWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateIsNull() {
            addCriterion("fifty_one_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateIsNotNull() {
            addCriterion("fifty_one_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateEqualTo(BigDecimal value) {
            addCriterion("fifty_one_week_rate =", value, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("fifty_one_week_rate <>", value, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateGreaterThan(BigDecimal value) {
            addCriterion("fifty_one_week_rate >", value, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fifty_one_week_rate >=", value, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateLessThan(BigDecimal value) {
            addCriterion("fifty_one_week_rate <", value, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fifty_one_week_rate <=", value, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateIn(List<BigDecimal> values) {
            addCriterion("fifty_one_week_rate in", values, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("fifty_one_week_rate not in", values, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifty_one_week_rate between", value1, value2, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyOneWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifty_one_week_rate not between", value1, value2, "fiftyOneWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateIsNull() {
            addCriterion("fifty_two_week_rate is null");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateIsNotNull() {
            addCriterion("fifty_two_week_rate is not null");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateEqualTo(BigDecimal value) {
            addCriterion("fifty_two_week_rate =", value, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateNotEqualTo(BigDecimal value) {
            addCriterion("fifty_two_week_rate <>", value, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateGreaterThan(BigDecimal value) {
            addCriterion("fifty_two_week_rate >", value, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fifty_two_week_rate >=", value, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateLessThan(BigDecimal value) {
            addCriterion("fifty_two_week_rate <", value, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fifty_two_week_rate <=", value, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateIn(List<BigDecimal> values) {
            addCriterion("fifty_two_week_rate in", values, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateNotIn(List<BigDecimal> values) {
            addCriterion("fifty_two_week_rate not in", values, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifty_two_week_rate between", value1, value2, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andFiftyTwoWeekRateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fifty_two_week_rate not between", value1, value2, "fiftyTwoWeekRate");
            return (Criteria) this;
        }

        public Criteria andSaleDetailIsNull() {
            addCriterion("sale_detail is null");
            return (Criteria) this;
        }

        public Criteria andSaleDetailIsNotNull() {
            addCriterion("sale_detail is not null");
            return (Criteria) this;
        }

        public Criteria andSaleDetailEqualTo(String value) {
            addCriterion("sale_detail =", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailNotEqualTo(String value) {
            addCriterion("sale_detail <>", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailGreaterThan(String value) {
            addCriterion("sale_detail >", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailGreaterThanOrEqualTo(String value) {
            addCriterion("sale_detail >=", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailLessThan(String value) {
            addCriterion("sale_detail <", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailLessThanOrEqualTo(String value) {
            addCriterion("sale_detail <=", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailLike(String value) {
            addCriterion("sale_detail like", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailNotLike(String value) {
            addCriterion("sale_detail not like", value, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailIn(List<String> values) {
            addCriterion("sale_detail in", values, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailNotIn(List<String> values) {
            addCriterion("sale_detail not in", values, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailBetween(String value1, String value2) {
            addCriterion("sale_detail between", value1, value2, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andSaleDetailNotBetween(String value1, String value2) {
            addCriterion("sale_detail not between", value1, value2, "saleDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailIsNull() {
            addCriterion("rate_detail is null");
            return (Criteria) this;
        }

        public Criteria andRateDetailIsNotNull() {
            addCriterion("rate_detail is not null");
            return (Criteria) this;
        }

        public Criteria andRateDetailEqualTo(String value) {
            addCriterion("rate_detail =", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailNotEqualTo(String value) {
            addCriterion("rate_detail <>", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailGreaterThan(String value) {
            addCriterion("rate_detail >", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailGreaterThanOrEqualTo(String value) {
            addCriterion("rate_detail >=", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailLessThan(String value) {
            addCriterion("rate_detail <", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailLessThanOrEqualTo(String value) {
            addCriterion("rate_detail <=", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailLike(String value) {
            addCriterion("rate_detail like", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailNotLike(String value) {
            addCriterion("rate_detail not like", value, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailIn(List<String> values) {
            addCriterion("rate_detail in", values, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailNotIn(List<String> values) {
            addCriterion("rate_detail not in", values, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailBetween(String value1, String value2) {
            addCriterion("rate_detail between", value1, value2, "rateDetail");
            return (Criteria) this;
        }

        public Criteria andRateDetailNotBetween(String value1, String value2) {
            addCriterion("rate_detail not between", value1, value2, "rateDetail");
            return (Criteria) this;
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated do_not_delete_during_merge
     */
    public static class Criteria extends GeneratedCriteria {
        /**
         * This field was generated by MyBatis Generator.
         * This field corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        private DcAutoWeekSalesExample example;

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        protected Criteria(DcAutoWeekSalesExample example) {
            super();
            this.example = example;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        public DcAutoWeekSalesExample example() {
            return this.example;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        @Deprecated
        public Criteria andIf(boolean ifAdd, ICriteriaAdd add) {
            if (ifAdd) {
                add.add(this);
            }
            return this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        public Criteria when(boolean condition, ICriteriaWhen then) {
            if (condition) {
                then.criteria(this);
            }
            return this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        public Criteria when(boolean condition, ICriteriaWhen then, ICriteriaWhen otherwise) {
            if (condition) {
                then.criteria(this);
            } else {
                otherwise.criteria(this);
            }
            return this;
        }

        /**
         * This interface was generated by MyBatis Generator.
         * This interface corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        @Deprecated
        public interface ICriteriaAdd {
            /**
             * This method was generated by MyBatis Generator.
             * This method corresponds to the database table dc_auto_week_sales
             *
             * @mbg.generated
             * @project https://github.com/itfsw/mybatis-generator-plugin
             */
            Criteria add(Criteria add);
        }
    }

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

    /**
     * This interface was generated by MyBatis Generator.
     * This interface corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public interface ICriteriaWhen {
        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        void criteria(Criteria criteria);
    }

    /**
     * This interface was generated by MyBatis Generator.
     * This interface corresponds to the database table dc_auto_week_sales
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public interface IExampleWhen {
        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_auto_week_sales
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        void example(DcAutoWeekSalesExample example);
    }
}