package com.hfkj.entity;

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

public class CyymallOrderExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Long offset;

    public CyymallOrderExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Long offset) {
        this.offset = offset;
    }

    public Long getOffset() {
        return offset;
    }

    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 andStoreIdIsNull() {
            addCriterion("store_id is null");
            return (Criteria) this;
        }

        public Criteria andStoreIdIsNotNull() {
            addCriterion("store_id is not null");
            return (Criteria) this;
        }

        public Criteria andStoreIdEqualTo(Integer value) {
            addCriterion("store_id =", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotEqualTo(Integer value) {
            addCriterion("store_id <>", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThan(Integer value) {
            addCriterion("store_id >", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("store_id >=", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThan(Integer value) {
            addCriterion("store_id <", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdLessThanOrEqualTo(Integer value) {
            addCriterion("store_id <=", value, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdIn(List<Integer> values) {
            addCriterion("store_id in", values, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotIn(List<Integer> values) {
            addCriterion("store_id not in", values, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdBetween(Integer value1, Integer value2) {
            addCriterion("store_id between", value1, value2, "storeId");
            return (Criteria) this;
        }

        public Criteria andStoreIdNotBetween(Integer value1, Integer value2) {
            addCriterion("store_id not between", value1, value2, "storeId");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNull() {
            addCriterion("user_id is null");
            return (Criteria) this;
        }

        public Criteria andUserIdIsNotNull() {
            addCriterion("user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserIdEqualTo(Integer value) {
            addCriterion("user_id =", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotEqualTo(Integer value) {
            addCriterion("user_id <>", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThan(Integer value) {
            addCriterion("user_id >", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_id >=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThan(Integer value) {
            addCriterion("user_id <", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("user_id <=", value, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdIn(List<Integer> values) {
            addCriterion("user_id in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotIn(List<Integer> values) {
            addCriterion("user_id not in", values, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdBetween(Integer value1, Integer value2) {
            addCriterion("user_id between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("user_id not between", value1, value2, "userId");
            return (Criteria) this;
        }

        public Criteria andOrderNoIsNull() {
            addCriterion("order_no is null");
            return (Criteria) this;
        }

        public Criteria andOrderNoIsNotNull() {
            addCriterion("order_no is not null");
            return (Criteria) this;
        }

        public Criteria andOrderNoEqualTo(String value) {
            addCriterion("order_no =", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoNotEqualTo(String value) {
            addCriterion("order_no <>", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoGreaterThan(String value) {
            addCriterion("order_no >", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoGreaterThanOrEqualTo(String value) {
            addCriterion("order_no >=", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoLessThan(String value) {
            addCriterion("order_no <", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoLessThanOrEqualTo(String value) {
            addCriterion("order_no <=", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoLike(String value) {
            addCriterion("order_no like", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoNotLike(String value) {
            addCriterion("order_no not like", value, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoIn(List<String> values) {
            addCriterion("order_no in", values, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoNotIn(List<String> values) {
            addCriterion("order_no not in", values, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoBetween(String value1, String value2) {
            addCriterion("order_no between", value1, value2, "orderNo");
            return (Criteria) this;
        }

        public Criteria andOrderNoNotBetween(String value1, String value2) {
            addCriterion("order_no not between", value1, value2, "orderNo");
            return (Criteria) this;
        }

        public Criteria andTotalPriceIsNull() {
            addCriterion("total_price is null");
            return (Criteria) this;
        }

        public Criteria andTotalPriceIsNotNull() {
            addCriterion("total_price is not null");
            return (Criteria) this;
        }

        public Criteria andTotalPriceEqualTo(BigDecimal value) {
            addCriterion("total_price =", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceNotEqualTo(BigDecimal value) {
            addCriterion("total_price <>", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceGreaterThan(BigDecimal value) {
            addCriterion("total_price >", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("total_price >=", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceLessThan(BigDecimal value) {
            addCriterion("total_price <", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("total_price <=", value, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceIn(List<BigDecimal> values) {
            addCriterion("total_price in", values, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceNotIn(List<BigDecimal> values) {
            addCriterion("total_price not in", values, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("total_price between", value1, value2, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andTotalPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("total_price not between", value1, value2, "totalPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceIsNull() {
            addCriterion("pay_price is null");
            return (Criteria) this;
        }

        public Criteria andPayPriceIsNotNull() {
            addCriterion("pay_price is not null");
            return (Criteria) this;
        }

        public Criteria andPayPriceEqualTo(BigDecimal value) {
            addCriterion("pay_price =", value, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceNotEqualTo(BigDecimal value) {
            addCriterion("pay_price <>", value, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceGreaterThan(BigDecimal value) {
            addCriterion("pay_price >", value, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("pay_price >=", value, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceLessThan(BigDecimal value) {
            addCriterion("pay_price <", value, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("pay_price <=", value, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceIn(List<BigDecimal> values) {
            addCriterion("pay_price in", values, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceNotIn(List<BigDecimal> values) {
            addCriterion("pay_price not in", values, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("pay_price between", value1, value2, "payPrice");
            return (Criteria) this;
        }

        public Criteria andPayPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("pay_price not between", value1, value2, "payPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceIsNull() {
            addCriterion("express_price is null");
            return (Criteria) this;
        }

        public Criteria andExpressPriceIsNotNull() {
            addCriterion("express_price is not null");
            return (Criteria) this;
        }

        public Criteria andExpressPriceEqualTo(BigDecimal value) {
            addCriterion("express_price =", value, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceNotEqualTo(BigDecimal value) {
            addCriterion("express_price <>", value, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceGreaterThan(BigDecimal value) {
            addCriterion("express_price >", value, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("express_price >=", value, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceLessThan(BigDecimal value) {
            addCriterion("express_price <", value, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("express_price <=", value, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceIn(List<BigDecimal> values) {
            addCriterion("express_price in", values, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceNotIn(List<BigDecimal> values) {
            addCriterion("express_price not in", values, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("express_price between", value1, value2, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andExpressPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("express_price not between", value1, value2, "expressPrice");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("`name` is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("`name` is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("`name` =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("`name` <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("`name` >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("`name` >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("`name` <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("`name` <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("`name` like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("`name` not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("`name` in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("`name` not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("`name` between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("`name` not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andMobileIsNull() {
            addCriterion("mobile is null");
            return (Criteria) this;
        }

        public Criteria andMobileIsNotNull() {
            addCriterion("mobile is not null");
            return (Criteria) this;
        }

        public Criteria andMobileEqualTo(String value) {
            addCriterion("mobile =", value, "mobile");
            return (Criteria) this;
        }

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

        public Criteria andMobileGreaterThan(String value) {
            addCriterion("mobile >", value, "mobile");
            return (Criteria) this;
        }

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

        public Criteria andMobileLessThan(String value) {
            addCriterion("mobile <", value, "mobile");
            return (Criteria) this;
        }

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

        public Criteria andMobileLike(String value) {
            addCriterion("mobile like", value, "mobile");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andAddressIsNull() {
            addCriterion("address is null");
            return (Criteria) this;
        }

        public Criteria andAddressIsNotNull() {
            addCriterion("address is not null");
            return (Criteria) this;
        }

        public Criteria andAddressEqualTo(String value) {
            addCriterion("address =", value, "address");
            return (Criteria) this;
        }

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

        public Criteria andAddressGreaterThan(String value) {
            addCriterion("address >", value, "address");
            return (Criteria) this;
        }

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

        public Criteria andAddressLessThan(String value) {
            addCriterion("address <", value, "address");
            return (Criteria) this;
        }

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

        public Criteria andAddressLike(String value) {
            addCriterion("address like", value, "address");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andIsPayIsNull() {
            addCriterion("is_pay is null");
            return (Criteria) this;
        }

        public Criteria andIsPayIsNotNull() {
            addCriterion("is_pay is not null");
            return (Criteria) this;
        }

        public Criteria andIsPayEqualTo(Short value) {
            addCriterion("is_pay =", value, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayNotEqualTo(Short value) {
            addCriterion("is_pay <>", value, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayGreaterThan(Short value) {
            addCriterion("is_pay >", value, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayGreaterThanOrEqualTo(Short value) {
            addCriterion("is_pay >=", value, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayLessThan(Short value) {
            addCriterion("is_pay <", value, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayLessThanOrEqualTo(Short value) {
            addCriterion("is_pay <=", value, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayIn(List<Short> values) {
            addCriterion("is_pay in", values, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayNotIn(List<Short> values) {
            addCriterion("is_pay not in", values, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayBetween(Short value1, Short value2) {
            addCriterion("is_pay between", value1, value2, "isPay");
            return (Criteria) this;
        }

        public Criteria andIsPayNotBetween(Short value1, Short value2) {
            addCriterion("is_pay not between", value1, value2, "isPay");
            return (Criteria) this;
        }

        public Criteria andPayTypeIsNull() {
            addCriterion("pay_type is null");
            return (Criteria) this;
        }

        public Criteria andPayTypeIsNotNull() {
            addCriterion("pay_type is not null");
            return (Criteria) this;
        }

        public Criteria andPayTypeEqualTo(Short value) {
            addCriterion("pay_type =", value, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeNotEqualTo(Short value) {
            addCriterion("pay_type <>", value, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeGreaterThan(Short value) {
            addCriterion("pay_type >", value, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeGreaterThanOrEqualTo(Short value) {
            addCriterion("pay_type >=", value, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeLessThan(Short value) {
            addCriterion("pay_type <", value, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeLessThanOrEqualTo(Short value) {
            addCriterion("pay_type <=", value, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeIn(List<Short> values) {
            addCriterion("pay_type in", values, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeNotIn(List<Short> values) {
            addCriterion("pay_type not in", values, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeBetween(Short value1, Short value2) {
            addCriterion("pay_type between", value1, value2, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTypeNotBetween(Short value1, Short value2) {
            addCriterion("pay_type not between", value1, value2, "payType");
            return (Criteria) this;
        }

        public Criteria andPayTimeIsNull() {
            addCriterion("pay_time is null");
            return (Criteria) this;
        }

        public Criteria andPayTimeIsNotNull() {
            addCriterion("pay_time is not null");
            return (Criteria) this;
        }

        public Criteria andPayTimeEqualTo(Integer value) {
            addCriterion("pay_time =", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotEqualTo(Integer value) {
            addCriterion("pay_time <>", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeGreaterThan(Integer value) {
            addCriterion("pay_time >", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("pay_time >=", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeLessThan(Integer value) {
            addCriterion("pay_time <", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeLessThanOrEqualTo(Integer value) {
            addCriterion("pay_time <=", value, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeIn(List<Integer> values) {
            addCriterion("pay_time in", values, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotIn(List<Integer> values) {
            addCriterion("pay_time not in", values, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeBetween(Integer value1, Integer value2) {
            addCriterion("pay_time between", value1, value2, "payTime");
            return (Criteria) this;
        }

        public Criteria andPayTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("pay_time not between", value1, value2, "payTime");
            return (Criteria) this;
        }

        public Criteria andIsSendIsNull() {
            addCriterion("is_send is null");
            return (Criteria) this;
        }

        public Criteria andIsSendIsNotNull() {
            addCriterion("is_send is not null");
            return (Criteria) this;
        }

        public Criteria andIsSendEqualTo(Short value) {
            addCriterion("is_send =", value, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendNotEqualTo(Short value) {
            addCriterion("is_send <>", value, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendGreaterThan(Short value) {
            addCriterion("is_send >", value, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendGreaterThanOrEqualTo(Short value) {
            addCriterion("is_send >=", value, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendLessThan(Short value) {
            addCriterion("is_send <", value, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendLessThanOrEqualTo(Short value) {
            addCriterion("is_send <=", value, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendIn(List<Short> values) {
            addCriterion("is_send in", values, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendNotIn(List<Short> values) {
            addCriterion("is_send not in", values, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendBetween(Short value1, Short value2) {
            addCriterion("is_send between", value1, value2, "isSend");
            return (Criteria) this;
        }

        public Criteria andIsSendNotBetween(Short value1, Short value2) {
            addCriterion("is_send not between", value1, value2, "isSend");
            return (Criteria) this;
        }

        public Criteria andSendTimeIsNull() {
            addCriterion("send_time is null");
            return (Criteria) this;
        }

        public Criteria andSendTimeIsNotNull() {
            addCriterion("send_time is not null");
            return (Criteria) this;
        }

        public Criteria andSendTimeEqualTo(Integer value) {
            addCriterion("send_time =", value, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeNotEqualTo(Integer value) {
            addCriterion("send_time <>", value, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeGreaterThan(Integer value) {
            addCriterion("send_time >", value, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("send_time >=", value, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeLessThan(Integer value) {
            addCriterion("send_time <", value, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeLessThanOrEqualTo(Integer value) {
            addCriterion("send_time <=", value, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeIn(List<Integer> values) {
            addCriterion("send_time in", values, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeNotIn(List<Integer> values) {
            addCriterion("send_time not in", values, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeBetween(Integer value1, Integer value2) {
            addCriterion("send_time between", value1, value2, "sendTime");
            return (Criteria) this;
        }

        public Criteria andSendTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("send_time not between", value1, value2, "sendTime");
            return (Criteria) this;
        }

        public Criteria andExpressIsNull() {
            addCriterion("express is null");
            return (Criteria) this;
        }

        public Criteria andExpressIsNotNull() {
            addCriterion("express is not null");
            return (Criteria) this;
        }

        public Criteria andExpressEqualTo(String value) {
            addCriterion("express =", value, "express");
            return (Criteria) this;
        }

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

        public Criteria andExpressGreaterThan(String value) {
            addCriterion("express >", value, "express");
            return (Criteria) this;
        }

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

        public Criteria andExpressLessThan(String value) {
            addCriterion("express <", value, "express");
            return (Criteria) this;
        }

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

        public Criteria andExpressLike(String value) {
            addCriterion("express like", value, "express");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andExpressNoIsNull() {
            addCriterion("express_no is null");
            return (Criteria) this;
        }

        public Criteria andExpressNoIsNotNull() {
            addCriterion("express_no is not null");
            return (Criteria) this;
        }

        public Criteria andExpressNoEqualTo(String value) {
            addCriterion("express_no =", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoNotEqualTo(String value) {
            addCriterion("express_no <>", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoGreaterThan(String value) {
            addCriterion("express_no >", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoGreaterThanOrEqualTo(String value) {
            addCriterion("express_no >=", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoLessThan(String value) {
            addCriterion("express_no <", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoLessThanOrEqualTo(String value) {
            addCriterion("express_no <=", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoLike(String value) {
            addCriterion("express_no like", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoNotLike(String value) {
            addCriterion("express_no not like", value, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoIn(List<String> values) {
            addCriterion("express_no in", values, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoNotIn(List<String> values) {
            addCriterion("express_no not in", values, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoBetween(String value1, String value2) {
            addCriterion("express_no between", value1, value2, "expressNo");
            return (Criteria) this;
        }

        public Criteria andExpressNoNotBetween(String value1, String value2) {
            addCriterion("express_no not between", value1, value2, "expressNo");
            return (Criteria) this;
        }

        public Criteria andIsConfirmIsNull() {
            addCriterion("is_confirm is null");
            return (Criteria) this;
        }

        public Criteria andIsConfirmIsNotNull() {
            addCriterion("is_confirm is not null");
            return (Criteria) this;
        }

        public Criteria andIsConfirmEqualTo(Short value) {
            addCriterion("is_confirm =", value, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmNotEqualTo(Short value) {
            addCriterion("is_confirm <>", value, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmGreaterThan(Short value) {
            addCriterion("is_confirm >", value, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmGreaterThanOrEqualTo(Short value) {
            addCriterion("is_confirm >=", value, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmLessThan(Short value) {
            addCriterion("is_confirm <", value, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmLessThanOrEqualTo(Short value) {
            addCriterion("is_confirm <=", value, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmIn(List<Short> values) {
            addCriterion("is_confirm in", values, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmNotIn(List<Short> values) {
            addCriterion("is_confirm not in", values, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmBetween(Short value1, Short value2) {
            addCriterion("is_confirm between", value1, value2, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andIsConfirmNotBetween(Short value1, Short value2) {
            addCriterion("is_confirm not between", value1, value2, "isConfirm");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeIsNull() {
            addCriterion("confirm_time is null");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeIsNotNull() {
            addCriterion("confirm_time is not null");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeEqualTo(Integer value) {
            addCriterion("confirm_time =", value, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeNotEqualTo(Integer value) {
            addCriterion("confirm_time <>", value, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeGreaterThan(Integer value) {
            addCriterion("confirm_time >", value, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("confirm_time >=", value, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeLessThan(Integer value) {
            addCriterion("confirm_time <", value, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeLessThanOrEqualTo(Integer value) {
            addCriterion("confirm_time <=", value, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeIn(List<Integer> values) {
            addCriterion("confirm_time in", values, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeNotIn(List<Integer> values) {
            addCriterion("confirm_time not in", values, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeBetween(Integer value1, Integer value2) {
            addCriterion("confirm_time between", value1, value2, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andConfirmTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("confirm_time not between", value1, value2, "confirmTime");
            return (Criteria) this;
        }

        public Criteria andIsCommentIsNull() {
            addCriterion("is_comment is null");
            return (Criteria) this;
        }

        public Criteria andIsCommentIsNotNull() {
            addCriterion("is_comment is not null");
            return (Criteria) this;
        }

        public Criteria andIsCommentEqualTo(Short value) {
            addCriterion("is_comment =", value, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentNotEqualTo(Short value) {
            addCriterion("is_comment <>", value, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentGreaterThan(Short value) {
            addCriterion("is_comment >", value, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentGreaterThanOrEqualTo(Short value) {
            addCriterion("is_comment >=", value, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentLessThan(Short value) {
            addCriterion("is_comment <", value, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentLessThanOrEqualTo(Short value) {
            addCriterion("is_comment <=", value, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentIn(List<Short> values) {
            addCriterion("is_comment in", values, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentNotIn(List<Short> values) {
            addCriterion("is_comment not in", values, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentBetween(Short value1, Short value2) {
            addCriterion("is_comment between", value1, value2, "isComment");
            return (Criteria) this;
        }

        public Criteria andIsCommentNotBetween(Short value1, Short value2) {
            addCriterion("is_comment not between", value1, value2, "isComment");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteIsNull() {
            addCriterion("apply_delete is null");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteIsNotNull() {
            addCriterion("apply_delete is not null");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteEqualTo(Short value) {
            addCriterion("apply_delete =", value, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteNotEqualTo(Short value) {
            addCriterion("apply_delete <>", value, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteGreaterThan(Short value) {
            addCriterion("apply_delete >", value, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteGreaterThanOrEqualTo(Short value) {
            addCriterion("apply_delete >=", value, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteLessThan(Short value) {
            addCriterion("apply_delete <", value, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteLessThanOrEqualTo(Short value) {
            addCriterion("apply_delete <=", value, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteIn(List<Short> values) {
            addCriterion("apply_delete in", values, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteNotIn(List<Short> values) {
            addCriterion("apply_delete not in", values, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteBetween(Short value1, Short value2) {
            addCriterion("apply_delete between", value1, value2, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andApplyDeleteNotBetween(Short value1, Short value2) {
            addCriterion("apply_delete not between", value1, value2, "applyDelete");
            return (Criteria) this;
        }

        public Criteria andAddtimeIsNull() {
            addCriterion("addtime is null");
            return (Criteria) this;
        }

        public Criteria andAddtimeIsNotNull() {
            addCriterion("addtime is not null");
            return (Criteria) this;
        }

        public Criteria andAddtimeEqualTo(Integer value) {
            addCriterion("addtime =", value, "addtime");
            return (Criteria) this;
        }

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

        public Criteria andAddtimeGreaterThan(Integer value) {
            addCriterion("addtime >", value, "addtime");
            return (Criteria) this;
        }

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

        public Criteria andAddtimeLessThan(Integer value) {
            addCriterion("addtime <", value, "addtime");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andIsDeleteIsNull() {
            addCriterion("is_delete is null");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIsNotNull() {
            addCriterion("is_delete is not null");
            return (Criteria) this;
        }

        public Criteria andIsDeleteEqualTo(Short value) {
            addCriterion("is_delete =", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotEqualTo(Short value) {
            addCriterion("is_delete <>", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteGreaterThan(Short value) {
            addCriterion("is_delete >", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteGreaterThanOrEqualTo(Short value) {
            addCriterion("is_delete >=", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteLessThan(Short value) {
            addCriterion("is_delete <", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteLessThanOrEqualTo(Short value) {
            addCriterion("is_delete <=", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIn(List<Short> values) {
            addCriterion("is_delete in", values, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotIn(List<Short> values) {
            addCriterion("is_delete not in", values, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteBetween(Short value1, Short value2) {
            addCriterion("is_delete between", value1, value2, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotBetween(Short value1, Short value2) {
            addCriterion("is_delete not between", value1, value2, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsPriceIsNull() {
            addCriterion("is_price is null");
            return (Criteria) this;
        }

        public Criteria andIsPriceIsNotNull() {
            addCriterion("is_price is not null");
            return (Criteria) this;
        }

        public Criteria andIsPriceEqualTo(Short value) {
            addCriterion("is_price =", value, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceNotEqualTo(Short value) {
            addCriterion("is_price <>", value, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceGreaterThan(Short value) {
            addCriterion("is_price >", value, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceGreaterThanOrEqualTo(Short value) {
            addCriterion("is_price >=", value, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceLessThan(Short value) {
            addCriterion("is_price <", value, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceLessThanOrEqualTo(Short value) {
            addCriterion("is_price <=", value, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceIn(List<Short> values) {
            addCriterion("is_price in", values, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceNotIn(List<Short> values) {
            addCriterion("is_price not in", values, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceBetween(Short value1, Short value2) {
            addCriterion("is_price between", value1, value2, "isPrice");
            return (Criteria) this;
        }

        public Criteria andIsPriceNotBetween(Short value1, Short value2) {
            addCriterion("is_price not between", value1, value2, "isPrice");
            return (Criteria) this;
        }

        public Criteria andParentIdIsNull() {
            addCriterion("parent_id is null");
            return (Criteria) this;
        }

        public Criteria andParentIdIsNotNull() {
            addCriterion("parent_id is not null");
            return (Criteria) this;
        }

        public Criteria andParentIdEqualTo(Integer value) {
            addCriterion("parent_id =", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdNotEqualTo(Integer value) {
            addCriterion("parent_id <>", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdGreaterThan(Integer value) {
            addCriterion("parent_id >", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("parent_id >=", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdLessThan(Integer value) {
            addCriterion("parent_id <", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdLessThanOrEqualTo(Integer value) {
            addCriterion("parent_id <=", value, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdIn(List<Integer> values) {
            addCriterion("parent_id in", values, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdNotIn(List<Integer> values) {
            addCriterion("parent_id not in", values, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdBetween(Integer value1, Integer value2) {
            addCriterion("parent_id between", value1, value2, "parentId");
            return (Criteria) this;
        }

        public Criteria andParentIdNotBetween(Integer value1, Integer value2) {
            addCriterion("parent_id not between", value1, value2, "parentId");
            return (Criteria) this;
        }

        public Criteria andFirstPriceIsNull() {
            addCriterion("first_price is null");
            return (Criteria) this;
        }

        public Criteria andFirstPriceIsNotNull() {
            addCriterion("first_price is not null");
            return (Criteria) this;
        }

        public Criteria andFirstPriceEqualTo(BigDecimal value) {
            addCriterion("first_price =", value, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceNotEqualTo(BigDecimal value) {
            addCriterion("first_price <>", value, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceGreaterThan(BigDecimal value) {
            addCriterion("first_price >", value, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("first_price >=", value, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceLessThan(BigDecimal value) {
            addCriterion("first_price <", value, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("first_price <=", value, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceIn(List<BigDecimal> values) {
            addCriterion("first_price in", values, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceNotIn(List<BigDecimal> values) {
            addCriterion("first_price not in", values, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("first_price between", value1, value2, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andFirstPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("first_price not between", value1, value2, "firstPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceIsNull() {
            addCriterion("second_price is null");
            return (Criteria) this;
        }

        public Criteria andSecondPriceIsNotNull() {
            addCriterion("second_price is not null");
            return (Criteria) this;
        }

        public Criteria andSecondPriceEqualTo(BigDecimal value) {
            addCriterion("second_price =", value, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceNotEqualTo(BigDecimal value) {
            addCriterion("second_price <>", value, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceGreaterThan(BigDecimal value) {
            addCriterion("second_price >", value, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("second_price >=", value, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceLessThan(BigDecimal value) {
            addCriterion("second_price <", value, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("second_price <=", value, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceIn(List<BigDecimal> values) {
            addCriterion("second_price in", values, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceNotIn(List<BigDecimal> values) {
            addCriterion("second_price not in", values, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("second_price between", value1, value2, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andSecondPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("second_price not between", value1, value2, "secondPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceIsNull() {
            addCriterion("third_price is null");
            return (Criteria) this;
        }

        public Criteria andThirdPriceIsNotNull() {
            addCriterion("third_price is not null");
            return (Criteria) this;
        }

        public Criteria andThirdPriceEqualTo(BigDecimal value) {
            addCriterion("third_price =", value, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceNotEqualTo(BigDecimal value) {
            addCriterion("third_price <>", value, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceGreaterThan(BigDecimal value) {
            addCriterion("third_price >", value, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("third_price >=", value, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceLessThan(BigDecimal value) {
            addCriterion("third_price <", value, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("third_price <=", value, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceIn(List<BigDecimal> values) {
            addCriterion("third_price in", values, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceNotIn(List<BigDecimal> values) {
            addCriterion("third_price not in", values, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("third_price between", value1, value2, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andThirdPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("third_price not between", value1, value2, "thirdPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceIsNull() {
            addCriterion("coupon_sub_price is null");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceIsNotNull() {
            addCriterion("coupon_sub_price is not null");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceEqualTo(BigDecimal value) {
            addCriterion("coupon_sub_price =", value, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceNotEqualTo(BigDecimal value) {
            addCriterion("coupon_sub_price <>", value, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceGreaterThan(BigDecimal value) {
            addCriterion("coupon_sub_price >", value, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("coupon_sub_price >=", value, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceLessThan(BigDecimal value) {
            addCriterion("coupon_sub_price <", value, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("coupon_sub_price <=", value, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceIn(List<BigDecimal> values) {
            addCriterion("coupon_sub_price in", values, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceNotIn(List<BigDecimal> values) {
            addCriterion("coupon_sub_price not in", values, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coupon_sub_price between", value1, value2, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andCouponSubPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("coupon_sub_price not between", value1, value2, "couponSubPrice");
            return (Criteria) this;
        }

        public Criteria andIsOfflineIsNull() {
            addCriterion("is_offline is null");
            return (Criteria) this;
        }

        public Criteria andIsOfflineIsNotNull() {
            addCriterion("is_offline is not null");
            return (Criteria) this;
        }

        public Criteria andIsOfflineEqualTo(Integer value) {
            addCriterion("is_offline =", value, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineNotEqualTo(Integer value) {
            addCriterion("is_offline <>", value, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineGreaterThan(Integer value) {
            addCriterion("is_offline >", value, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_offline >=", value, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineLessThan(Integer value) {
            addCriterion("is_offline <", value, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineLessThanOrEqualTo(Integer value) {
            addCriterion("is_offline <=", value, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineIn(List<Integer> values) {
            addCriterion("is_offline in", values, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineNotIn(List<Integer> values) {
            addCriterion("is_offline not in", values, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineBetween(Integer value1, Integer value2) {
            addCriterion("is_offline between", value1, value2, "isOffline");
            return (Criteria) this;
        }

        public Criteria andIsOfflineNotBetween(Integer value1, Integer value2) {
            addCriterion("is_offline not between", value1, value2, "isOffline");
            return (Criteria) this;
        }

        public Criteria andClerkIdIsNull() {
            addCriterion("clerk_id is null");
            return (Criteria) this;
        }

        public Criteria andClerkIdIsNotNull() {
            addCriterion("clerk_id is not null");
            return (Criteria) this;
        }

        public Criteria andClerkIdEqualTo(Integer value) {
            addCriterion("clerk_id =", value, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdNotEqualTo(Integer value) {
            addCriterion("clerk_id <>", value, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdGreaterThan(Integer value) {
            addCriterion("clerk_id >", value, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("clerk_id >=", value, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdLessThan(Integer value) {
            addCriterion("clerk_id <", value, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdLessThanOrEqualTo(Integer value) {
            addCriterion("clerk_id <=", value, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdIn(List<Integer> values) {
            addCriterion("clerk_id in", values, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdNotIn(List<Integer> values) {
            addCriterion("clerk_id not in", values, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdBetween(Integer value1, Integer value2) {
            addCriterion("clerk_id between", value1, value2, "clerkId");
            return (Criteria) this;
        }

        public Criteria andClerkIdNotBetween(Integer value1, Integer value2) {
            addCriterion("clerk_id not between", value1, value2, "clerkId");
            return (Criteria) this;
        }

        public Criteria andIsCancelIsNull() {
            addCriterion("is_cancel is null");
            return (Criteria) this;
        }

        public Criteria andIsCancelIsNotNull() {
            addCriterion("is_cancel is not null");
            return (Criteria) this;
        }

        public Criteria andIsCancelEqualTo(Short value) {
            addCriterion("is_cancel =", value, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelNotEqualTo(Short value) {
            addCriterion("is_cancel <>", value, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelGreaterThan(Short value) {
            addCriterion("is_cancel >", value, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelGreaterThanOrEqualTo(Short value) {
            addCriterion("is_cancel >=", value, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelLessThan(Short value) {
            addCriterion("is_cancel <", value, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelLessThanOrEqualTo(Short value) {
            addCriterion("is_cancel <=", value, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelIn(List<Short> values) {
            addCriterion("is_cancel in", values, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelNotIn(List<Short> values) {
            addCriterion("is_cancel not in", values, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelBetween(Short value1, Short value2) {
            addCriterion("is_cancel between", value1, value2, "isCancel");
            return (Criteria) this;
        }

        public Criteria andIsCancelNotBetween(Short value1, Short value2) {
            addCriterion("is_cancel not between", value1, value2, "isCancel");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceIsNull() {
            addCriterion("before_update_price is null");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceIsNotNull() {
            addCriterion("before_update_price is not null");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceEqualTo(BigDecimal value) {
            addCriterion("before_update_price =", value, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceNotEqualTo(BigDecimal value) {
            addCriterion("before_update_price <>", value, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceGreaterThan(BigDecimal value) {
            addCriterion("before_update_price >", value, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("before_update_price >=", value, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceLessThan(BigDecimal value) {
            addCriterion("before_update_price <", value, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("before_update_price <=", value, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceIn(List<BigDecimal> values) {
            addCriterion("before_update_price in", values, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceNotIn(List<BigDecimal> values) {
            addCriterion("before_update_price not in", values, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("before_update_price between", value1, value2, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdatePriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("before_update_price not between", value1, value2, "beforeUpdatePrice");
            return (Criteria) this;
        }

        public Criteria andShopIdIsNull() {
            addCriterion("shop_id is null");
            return (Criteria) this;
        }

        public Criteria andShopIdIsNotNull() {
            addCriterion("shop_id is not null");
            return (Criteria) this;
        }

        public Criteria andShopIdEqualTo(Integer value) {
            addCriterion("shop_id =", value, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdNotEqualTo(Integer value) {
            addCriterion("shop_id <>", value, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdGreaterThan(Integer value) {
            addCriterion("shop_id >", value, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("shop_id >=", value, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdLessThan(Integer value) {
            addCriterion("shop_id <", value, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdLessThanOrEqualTo(Integer value) {
            addCriterion("shop_id <=", value, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdIn(List<Integer> values) {
            addCriterion("shop_id in", values, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdNotIn(List<Integer> values) {
            addCriterion("shop_id not in", values, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdBetween(Integer value1, Integer value2) {
            addCriterion("shop_id between", value1, value2, "shopId");
            return (Criteria) this;
        }

        public Criteria andShopIdNotBetween(Integer value1, Integer value2) {
            addCriterion("shop_id not between", value1, value2, "shopId");
            return (Criteria) this;
        }

        public Criteria andDiscountIsNull() {
            addCriterion("discount is null");
            return (Criteria) this;
        }

        public Criteria andDiscountIsNotNull() {
            addCriterion("discount is not null");
            return (Criteria) this;
        }

        public Criteria andDiscountEqualTo(BigDecimal value) {
            addCriterion("discount =", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountNotEqualTo(BigDecimal value) {
            addCriterion("discount <>", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountGreaterThan(BigDecimal value) {
            addCriterion("discount >", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("discount >=", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountLessThan(BigDecimal value) {
            addCriterion("discount <", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("discount <=", value, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountIn(List<BigDecimal> values) {
            addCriterion("discount in", values, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountNotIn(List<BigDecimal> values) {
            addCriterion("discount not in", values, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount between", value1, value2, "discount");
            return (Criteria) this;
        }

        public Criteria andDiscountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount not between", value1, value2, "discount");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdIsNull() {
            addCriterion("user_coupon_id is null");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdIsNotNull() {
            addCriterion("user_coupon_id is not null");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdEqualTo(Integer value) {
            addCriterion("user_coupon_id =", value, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdNotEqualTo(Integer value) {
            addCriterion("user_coupon_id <>", value, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdGreaterThan(Integer value) {
            addCriterion("user_coupon_id >", value, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("user_coupon_id >=", value, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdLessThan(Integer value) {
            addCriterion("user_coupon_id <", value, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdLessThanOrEqualTo(Integer value) {
            addCriterion("user_coupon_id <=", value, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdIn(List<Integer> values) {
            addCriterion("user_coupon_id in", values, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdNotIn(List<Integer> values) {
            addCriterion("user_coupon_id not in", values, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdBetween(Integer value1, Integer value2) {
            addCriterion("user_coupon_id between", value1, value2, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andUserCouponIdNotBetween(Integer value1, Integer value2) {
            addCriterion("user_coupon_id not between", value1, value2, "userCouponId");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralIsNull() {
            addCriterion("give_integral is null");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralIsNotNull() {
            addCriterion("give_integral is not null");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralEqualTo(Short value) {
            addCriterion("give_integral =", value, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralNotEqualTo(Short value) {
            addCriterion("give_integral <>", value, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralGreaterThan(Short value) {
            addCriterion("give_integral >", value, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralGreaterThanOrEqualTo(Short value) {
            addCriterion("give_integral >=", value, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralLessThan(Short value) {
            addCriterion("give_integral <", value, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralLessThanOrEqualTo(Short value) {
            addCriterion("give_integral <=", value, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralIn(List<Short> values) {
            addCriterion("give_integral in", values, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralNotIn(List<Short> values) {
            addCriterion("give_integral not in", values, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralBetween(Short value1, Short value2) {
            addCriterion("give_integral between", value1, value2, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andGiveIntegralNotBetween(Short value1, Short value2) {
            addCriterion("give_integral not between", value1, value2, "giveIntegral");
            return (Criteria) this;
        }

        public Criteria andParentId1IsNull() {
            addCriterion("parent_id_1 is null");
            return (Criteria) this;
        }

        public Criteria andParentId1IsNotNull() {
            addCriterion("parent_id_1 is not null");
            return (Criteria) this;
        }

        public Criteria andParentId1EqualTo(Integer value) {
            addCriterion("parent_id_1 =", value, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1NotEqualTo(Integer value) {
            addCriterion("parent_id_1 <>", value, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1GreaterThan(Integer value) {
            addCriterion("parent_id_1 >", value, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1GreaterThanOrEqualTo(Integer value) {
            addCriterion("parent_id_1 >=", value, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1LessThan(Integer value) {
            addCriterion("parent_id_1 <", value, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1LessThanOrEqualTo(Integer value) {
            addCriterion("parent_id_1 <=", value, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1In(List<Integer> values) {
            addCriterion("parent_id_1 in", values, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1NotIn(List<Integer> values) {
            addCriterion("parent_id_1 not in", values, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1Between(Integer value1, Integer value2) {
            addCriterion("parent_id_1 between", value1, value2, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId1NotBetween(Integer value1, Integer value2) {
            addCriterion("parent_id_1 not between", value1, value2, "parentId1");
            return (Criteria) this;
        }

        public Criteria andParentId2IsNull() {
            addCriterion("parent_id_2 is null");
            return (Criteria) this;
        }

        public Criteria andParentId2IsNotNull() {
            addCriterion("parent_id_2 is not null");
            return (Criteria) this;
        }

        public Criteria andParentId2EqualTo(Integer value) {
            addCriterion("parent_id_2 =", value, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2NotEqualTo(Integer value) {
            addCriterion("parent_id_2 <>", value, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2GreaterThan(Integer value) {
            addCriterion("parent_id_2 >", value, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2GreaterThanOrEqualTo(Integer value) {
            addCriterion("parent_id_2 >=", value, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2LessThan(Integer value) {
            addCriterion("parent_id_2 <", value, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2LessThanOrEqualTo(Integer value) {
            addCriterion("parent_id_2 <=", value, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2In(List<Integer> values) {
            addCriterion("parent_id_2 in", values, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2NotIn(List<Integer> values) {
            addCriterion("parent_id_2 not in", values, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2Between(Integer value1, Integer value2) {
            addCriterion("parent_id_2 between", value1, value2, "parentId2");
            return (Criteria) this;
        }

        public Criteria andParentId2NotBetween(Integer value1, Integer value2) {
            addCriterion("parent_id_2 not between", value1, value2, "parentId2");
            return (Criteria) this;
        }

        public Criteria andIsSaleIsNull() {
            addCriterion("is_sale is null");
            return (Criteria) this;
        }

        public Criteria andIsSaleIsNotNull() {
            addCriterion("is_sale is not null");
            return (Criteria) this;
        }

        public Criteria andIsSaleEqualTo(Integer value) {
            addCriterion("is_sale =", value, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleNotEqualTo(Integer value) {
            addCriterion("is_sale <>", value, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleGreaterThan(Integer value) {
            addCriterion("is_sale >", value, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_sale >=", value, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleLessThan(Integer value) {
            addCriterion("is_sale <", value, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleLessThanOrEqualTo(Integer value) {
            addCriterion("is_sale <=", value, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleIn(List<Integer> values) {
            addCriterion("is_sale in", values, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleNotIn(List<Integer> values) {
            addCriterion("is_sale not in", values, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleBetween(Integer value1, Integer value2) {
            addCriterion("is_sale between", value1, value2, "isSale");
            return (Criteria) this;
        }

        public Criteria andIsSaleNotBetween(Integer value1, Integer value2) {
            addCriterion("is_sale not between", value1, value2, "isSale");
            return (Criteria) this;
        }

        public Criteria andVersionIsNull() {
            addCriterion("version is null");
            return (Criteria) this;
        }

        public Criteria andVersionIsNotNull() {
            addCriterion("version is not null");
            return (Criteria) this;
        }

        public Criteria andVersionEqualTo(String value) {
            addCriterion("version =", value, "version");
            return (Criteria) this;
        }

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

        public Criteria andVersionGreaterThan(String value) {
            addCriterion("version >", value, "version");
            return (Criteria) this;
        }

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

        public Criteria andVersionLessThan(String value) {
            addCriterion("version <", value, "version");
            return (Criteria) this;
        }

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

        public Criteria andVersionLike(String value) {
            addCriterion("version like", value, "version");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andExpressPrice1IsNull() {
            addCriterion("express_price_1 is null");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1IsNotNull() {
            addCriterion("express_price_1 is not null");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1EqualTo(BigDecimal value) {
            addCriterion("express_price_1 =", value, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1NotEqualTo(BigDecimal value) {
            addCriterion("express_price_1 <>", value, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1GreaterThan(BigDecimal value) {
            addCriterion("express_price_1 >", value, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1GreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("express_price_1 >=", value, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1LessThan(BigDecimal value) {
            addCriterion("express_price_1 <", value, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1LessThanOrEqualTo(BigDecimal value) {
            addCriterion("express_price_1 <=", value, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1In(List<BigDecimal> values) {
            addCriterion("express_price_1 in", values, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1NotIn(List<BigDecimal> values) {
            addCriterion("express_price_1 not in", values, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1Between(BigDecimal value1, BigDecimal value2) {
            addCriterion("express_price_1 between", value1, value2, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andExpressPrice1NotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("express_price_1 not between", value1, value2, "expressPrice1");
            return (Criteria) this;
        }

        public Criteria andIsRecycleIsNull() {
            addCriterion("is_recycle is null");
            return (Criteria) this;
        }

        public Criteria andIsRecycleIsNotNull() {
            addCriterion("is_recycle is not null");
            return (Criteria) this;
        }

        public Criteria andIsRecycleEqualTo(Short value) {
            addCriterion("is_recycle =", value, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleNotEqualTo(Short value) {
            addCriterion("is_recycle <>", value, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleGreaterThan(Short value) {
            addCriterion("is_recycle >", value, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleGreaterThanOrEqualTo(Short value) {
            addCriterion("is_recycle >=", value, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleLessThan(Short value) {
            addCriterion("is_recycle <", value, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleLessThanOrEqualTo(Short value) {
            addCriterion("is_recycle <=", value, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleIn(List<Short> values) {
            addCriterion("is_recycle in", values, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleNotIn(List<Short> values) {
            addCriterion("is_recycle not in", values, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleBetween(Short value1, Short value2) {
            addCriterion("is_recycle between", value1, value2, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andIsRecycleNotBetween(Short value1, Short value2) {
            addCriterion("is_recycle not between", value1, value2, "isRecycle");
            return (Criteria) this;
        }

        public Criteria andRebateIsNull() {
            addCriterion("rebate is null");
            return (Criteria) this;
        }

        public Criteria andRebateIsNotNull() {
            addCriterion("rebate is not null");
            return (Criteria) this;
        }

        public Criteria andRebateEqualTo(BigDecimal value) {
            addCriterion("rebate =", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateNotEqualTo(BigDecimal value) {
            addCriterion("rebate <>", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateGreaterThan(BigDecimal value) {
            addCriterion("rebate >", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("rebate >=", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateLessThan(BigDecimal value) {
            addCriterion("rebate <", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateLessThanOrEqualTo(BigDecimal value) {
            addCriterion("rebate <=", value, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateIn(List<BigDecimal> values) {
            addCriterion("rebate in", values, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateNotIn(List<BigDecimal> values) {
            addCriterion("rebate not in", values, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("rebate between", value1, value2, "rebate");
            return (Criteria) this;
        }

        public Criteria andRebateNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("rebate not between", value1, value2, "rebate");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressIsNull() {
            addCriterion("before_update_express is null");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressIsNotNull() {
            addCriterion("before_update_express is not null");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressEqualTo(BigDecimal value) {
            addCriterion("before_update_express =", value, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressNotEqualTo(BigDecimal value) {
            addCriterion("before_update_express <>", value, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressGreaterThan(BigDecimal value) {
            addCriterion("before_update_express >", value, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("before_update_express >=", value, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressLessThan(BigDecimal value) {
            addCriterion("before_update_express <", value, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressLessThanOrEqualTo(BigDecimal value) {
            addCriterion("before_update_express <=", value, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressIn(List<BigDecimal> values) {
            addCriterion("before_update_express in", values, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressNotIn(List<BigDecimal> values) {
            addCriterion("before_update_express not in", values, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("before_update_express between", value1, value2, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andBeforeUpdateExpressNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("before_update_express not between", value1, value2, "beforeUpdateExpress");
            return (Criteria) this;
        }

        public Criteria andMchIdIsNull() {
            addCriterion("mch_id is null");
            return (Criteria) this;
        }

        public Criteria andMchIdIsNotNull() {
            addCriterion("mch_id is not null");
            return (Criteria) this;
        }

        public Criteria andMchIdEqualTo(Integer value) {
            addCriterion("mch_id =", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdNotEqualTo(Integer value) {
            addCriterion("mch_id <>", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdGreaterThan(Integer value) {
            addCriterion("mch_id >", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("mch_id >=", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdLessThan(Integer value) {
            addCriterion("mch_id <", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdLessThanOrEqualTo(Integer value) {
            addCriterion("mch_id <=", value, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdIn(List<Integer> values) {
            addCriterion("mch_id in", values, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdNotIn(List<Integer> values) {
            addCriterion("mch_id not in", values, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdBetween(Integer value1, Integer value2) {
            addCriterion("mch_id between", value1, value2, "mchId");
            return (Criteria) this;
        }

        public Criteria andMchIdNotBetween(Integer value1, Integer value2) {
            addCriterion("mch_id not between", value1, value2, "mchId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdIsNull() {
            addCriterion("order_union_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdIsNotNull() {
            addCriterion("order_union_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdEqualTo(Integer value) {
            addCriterion("order_union_id =", value, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdNotEqualTo(Integer value) {
            addCriterion("order_union_id <>", value, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdGreaterThan(Integer value) {
            addCriterion("order_union_id >", value, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_union_id >=", value, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdLessThan(Integer value) {
            addCriterion("order_union_id <", value, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdLessThanOrEqualTo(Integer value) {
            addCriterion("order_union_id <=", value, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdIn(List<Integer> values) {
            addCriterion("order_union_id in", values, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdNotIn(List<Integer> values) {
            addCriterion("order_union_id not in", values, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdBetween(Integer value1, Integer value2) {
            addCriterion("order_union_id between", value1, value2, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andOrderUnionIdNotBetween(Integer value1, Integer value2) {
            addCriterion("order_union_id not between", value1, value2, "orderUnionId");
            return (Criteria) this;
        }

        public Criteria andIsTransferIsNull() {
            addCriterion("is_transfer is null");
            return (Criteria) this;
        }

        public Criteria andIsTransferIsNotNull() {
            addCriterion("is_transfer is not null");
            return (Criteria) this;
        }

        public Criteria andIsTransferEqualTo(Short value) {
            addCriterion("is_transfer =", value, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferNotEqualTo(Short value) {
            addCriterion("is_transfer <>", value, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferGreaterThan(Short value) {
            addCriterion("is_transfer >", value, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferGreaterThanOrEqualTo(Short value) {
            addCriterion("is_transfer >=", value, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferLessThan(Short value) {
            addCriterion("is_transfer <", value, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferLessThanOrEqualTo(Short value) {
            addCriterion("is_transfer <=", value, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferIn(List<Short> values) {
            addCriterion("is_transfer in", values, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferNotIn(List<Short> values) {
            addCriterion("is_transfer not in", values, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferBetween(Short value1, Short value2) {
            addCriterion("is_transfer between", value1, value2, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andIsTransferNotBetween(Short value1, Short value2) {
            addCriterion("is_transfer not between", value1, value2, "isTransfer");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("`type` is null");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("`type` is not null");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("`type` =", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("`type` <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("`type` >", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("`type` >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("`type` <", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("`type` <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("`type` in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("`type` not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("`type` between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("`type` not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andSharePriceIsNull() {
            addCriterion("share_price is null");
            return (Criteria) this;
        }

        public Criteria andSharePriceIsNotNull() {
            addCriterion("share_price is not null");
            return (Criteria) this;
        }

        public Criteria andSharePriceEqualTo(BigDecimal value) {
            addCriterion("share_price =", value, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceNotEqualTo(BigDecimal value) {
            addCriterion("share_price <>", value, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceGreaterThan(BigDecimal value) {
            addCriterion("share_price >", value, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("share_price >=", value, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceLessThan(BigDecimal value) {
            addCriterion("share_price <", value, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("share_price <=", value, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceIn(List<BigDecimal> values) {
            addCriterion("share_price in", values, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceNotIn(List<BigDecimal> values) {
            addCriterion("share_price not in", values, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("share_price between", value1, value2, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andSharePriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("share_price not between", value1, value2, "sharePrice");
            return (Criteria) this;
        }

        public Criteria andIsShowIsNull() {
            addCriterion("is_show is null");
            return (Criteria) this;
        }

        public Criteria andIsShowIsNotNull() {
            addCriterion("is_show is not null");
            return (Criteria) this;
        }

        public Criteria andIsShowEqualTo(Short value) {
            addCriterion("is_show =", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowNotEqualTo(Short value) {
            addCriterion("is_show <>", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowGreaterThan(Short value) {
            addCriterion("is_show >", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowGreaterThanOrEqualTo(Short value) {
            addCriterion("is_show >=", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowLessThan(Short value) {
            addCriterion("is_show <", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowLessThanOrEqualTo(Short value) {
            addCriterion("is_show <=", value, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowIn(List<Short> values) {
            addCriterion("is_show in", values, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowNotIn(List<Short> values) {
            addCriterion("is_show not in", values, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowBetween(Short value1, Short value2) {
            addCriterion("is_show between", value1, value2, "isShow");
            return (Criteria) this;
        }

        public Criteria andIsShowNotBetween(Short value1, Short value2) {
            addCriterion("is_show not between", value1, value2, "isShow");
            return (Criteria) this;
        }

        public Criteria andCurrencyIsNull() {
            addCriterion("currency is null");
            return (Criteria) this;
        }

        public Criteria andCurrencyIsNotNull() {
            addCriterion("currency is not null");
            return (Criteria) this;
        }

        public Criteria andCurrencyEqualTo(BigDecimal value) {
            addCriterion("currency =", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyNotEqualTo(BigDecimal value) {
            addCriterion("currency <>", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyGreaterThan(BigDecimal value) {
            addCriterion("currency >", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("currency >=", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyLessThan(BigDecimal value) {
            addCriterion("currency <", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("currency <=", value, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyIn(List<BigDecimal> values) {
            addCriterion("currency in", values, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyNotIn(List<BigDecimal> values) {
            addCriterion("currency not in", values, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("currency between", value1, value2, "currency");
            return (Criteria) this;
        }

        public Criteria andCurrencyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("currency not between", value1, value2, "currency");
            return (Criteria) this;
        }

        public Criteria andOrderOriginIsNull() {
            addCriterion("order_origin is null");
            return (Criteria) this;
        }

        public Criteria andOrderOriginIsNotNull() {
            addCriterion("order_origin is not null");
            return (Criteria) this;
        }

        public Criteria andOrderOriginEqualTo(Boolean value) {
            addCriterion("order_origin =", value, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginNotEqualTo(Boolean value) {
            addCriterion("order_origin <>", value, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginGreaterThan(Boolean value) {
            addCriterion("order_origin >", value, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginGreaterThanOrEqualTo(Boolean value) {
            addCriterion("order_origin >=", value, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginLessThan(Boolean value) {
            addCriterion("order_origin <", value, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginLessThanOrEqualTo(Boolean value) {
            addCriterion("order_origin <=", value, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginIn(List<Boolean> values) {
            addCriterion("order_origin in", values, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginNotIn(List<Boolean> values) {
            addCriterion("order_origin not in", values, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginBetween(Boolean value1, Boolean value2) {
            addCriterion("order_origin between", value1, value2, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andOrderOriginNotBetween(Boolean value1, Boolean value2) {
            addCriterion("order_origin not between", value1, value2, "orderOrigin");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdIsNull() {
            addCriterion("delivery_id is null");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdIsNotNull() {
            addCriterion("delivery_id is not null");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdEqualTo(Integer value) {
            addCriterion("delivery_id =", value, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdNotEqualTo(Integer value) {
            addCriterion("delivery_id <>", value, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdGreaterThan(Integer value) {
            addCriterion("delivery_id >", value, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("delivery_id >=", value, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdLessThan(Integer value) {
            addCriterion("delivery_id <", value, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdLessThanOrEqualTo(Integer value) {
            addCriterion("delivery_id <=", value, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdIn(List<Integer> values) {
            addCriterion("delivery_id in", values, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdNotIn(List<Integer> values) {
            addCriterion("delivery_id not in", values, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdBetween(Integer value1, Integer value2) {
            addCriterion("delivery_id between", value1, value2, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryIdNotBetween(Integer value1, Integer value2) {
            addCriterion("delivery_id not between", value1, value2, "deliveryId");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusIsNull() {
            addCriterion("delivery_status is null");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusIsNotNull() {
            addCriterion("delivery_status is not null");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusEqualTo(Boolean value) {
            addCriterion("delivery_status =", value, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusNotEqualTo(Boolean value) {
            addCriterion("delivery_status <>", value, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusGreaterThan(Boolean value) {
            addCriterion("delivery_status >", value, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusGreaterThanOrEqualTo(Boolean value) {
            addCriterion("delivery_status >=", value, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusLessThan(Boolean value) {
            addCriterion("delivery_status <", value, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusLessThanOrEqualTo(Boolean value) {
            addCriterion("delivery_status <=", value, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusIn(List<Boolean> values) {
            addCriterion("delivery_status in", values, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusNotIn(List<Boolean> values) {
            addCriterion("delivery_status not in", values, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusBetween(Boolean value1, Boolean value2) {
            addCriterion("delivery_status between", value1, value2, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andDeliveryStatusNotBetween(Boolean value1, Boolean value2) {
            addCriterion("delivery_status not between", value1, value2, "deliveryStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusIsNull() {
            addCriterion("fy_status is null");
            return (Criteria) this;
        }

        public Criteria andFyStatusIsNotNull() {
            addCriterion("fy_status is not null");
            return (Criteria) this;
        }

        public Criteria andFyStatusEqualTo(Boolean value) {
            addCriterion("fy_status =", value, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusNotEqualTo(Boolean value) {
            addCriterion("fy_status <>", value, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusGreaterThan(Boolean value) {
            addCriterion("fy_status >", value, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusGreaterThanOrEqualTo(Boolean value) {
            addCriterion("fy_status >=", value, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusLessThan(Boolean value) {
            addCriterion("fy_status <", value, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusLessThanOrEqualTo(Boolean value) {
            addCriterion("fy_status <=", value, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusIn(List<Boolean> values) {
            addCriterion("fy_status in", values, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusNotIn(List<Boolean> values) {
            addCriterion("fy_status not in", values, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusBetween(Boolean value1, Boolean value2) {
            addCriterion("fy_status between", value1, value2, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyStatusNotBetween(Boolean value1, Boolean value2) {
            addCriterion("fy_status not between", value1, value2, "fyStatus");
            return (Criteria) this;
        }

        public Criteria andFyjineIsNull() {
            addCriterion("fyjine is null");
            return (Criteria) this;
        }

        public Criteria andFyjineIsNotNull() {
            addCriterion("fyjine is not null");
            return (Criteria) this;
        }

        public Criteria andFyjineEqualTo(BigDecimal value) {
            addCriterion("fyjine =", value, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineNotEqualTo(BigDecimal value) {
            addCriterion("fyjine <>", value, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineGreaterThan(BigDecimal value) {
            addCriterion("fyjine >", value, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fyjine >=", value, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineLessThan(BigDecimal value) {
            addCriterion("fyjine <", value, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fyjine <=", value, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineIn(List<BigDecimal> values) {
            addCriterion("fyjine in", values, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineNotIn(List<BigDecimal> values) {
            addCriterion("fyjine not in", values, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fyjine between", value1, value2, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFyjineNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fyjine not between", value1, value2, "fyjine");
            return (Criteria) this;
        }

        public Criteria andFysingleIsNull() {
            addCriterion("fysingle is null");
            return (Criteria) this;
        }

        public Criteria andFysingleIsNotNull() {
            addCriterion("fysingle is not null");
            return (Criteria) this;
        }

        public Criteria andFysingleEqualTo(BigDecimal value) {
            addCriterion("fysingle =", value, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleNotEqualTo(BigDecimal value) {
            addCriterion("fysingle <>", value, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleGreaterThan(BigDecimal value) {
            addCriterion("fysingle >", value, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("fysingle >=", value, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleLessThan(BigDecimal value) {
            addCriterion("fysingle <", value, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleLessThanOrEqualTo(BigDecimal value) {
            addCriterion("fysingle <=", value, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleIn(List<BigDecimal> values) {
            addCriterion("fysingle in", values, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleNotIn(List<BigDecimal> values) {
            addCriterion("fysingle not in", values, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fysingle between", value1, value2, "fysingle");
            return (Criteria) this;
        }

        public Criteria andFysingleNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("fysingle not between", value1, value2, "fysingle");
            return (Criteria) this;
        }

        public Criteria andMchFyjineIsNull() {
            addCriterion("mch_fyjine is null");
            return (Criteria) this;
        }

        public Criteria andMchFyjineIsNotNull() {
            addCriterion("mch_fyjine is not null");
            return (Criteria) this;
        }

        public Criteria andMchFyjineEqualTo(BigDecimal value) {
            addCriterion("mch_fyjine =", value, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineNotEqualTo(BigDecimal value) {
            addCriterion("mch_fyjine <>", value, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineGreaterThan(BigDecimal value) {
            addCriterion("mch_fyjine >", value, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("mch_fyjine >=", value, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineLessThan(BigDecimal value) {
            addCriterion("mch_fyjine <", value, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineLessThanOrEqualTo(BigDecimal value) {
            addCriterion("mch_fyjine <=", value, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineIn(List<BigDecimal> values) {
            addCriterion("mch_fyjine in", values, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineNotIn(List<BigDecimal> values) {
            addCriterion("mch_fyjine not in", values, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("mch_fyjine between", value1, value2, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFyjineNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("mch_fyjine not between", value1, value2, "mchFyjine");
            return (Criteria) this;
        }

        public Criteria andMchFysingleIsNull() {
            addCriterion("mch_fysingle is null");
            return (Criteria) this;
        }

        public Criteria andMchFysingleIsNotNull() {
            addCriterion("mch_fysingle is not null");
            return (Criteria) this;
        }

        public Criteria andMchFysingleEqualTo(BigDecimal value) {
            addCriterion("mch_fysingle =", value, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleNotEqualTo(BigDecimal value) {
            addCriterion("mch_fysingle <>", value, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleGreaterThan(BigDecimal value) {
            addCriterion("mch_fysingle >", value, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("mch_fysingle >=", value, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleLessThan(BigDecimal value) {
            addCriterion("mch_fysingle <", value, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleLessThanOrEqualTo(BigDecimal value) {
            addCriterion("mch_fysingle <=", value, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleIn(List<BigDecimal> values) {
            addCriterion("mch_fysingle in", values, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleNotIn(List<BigDecimal> values) {
            addCriterion("mch_fysingle not in", values, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("mch_fysingle between", value1, value2, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andMchFysingleNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("mch_fysingle not between", value1, value2, "mchFysingle");
            return (Criteria) this;
        }

        public Criteria andIsFanIsNull() {
            addCriterion("is_fan is null");
            return (Criteria) this;
        }

        public Criteria andIsFanIsNotNull() {
            addCriterion("is_fan is not null");
            return (Criteria) this;
        }

        public Criteria andIsFanEqualTo(Boolean value) {
            addCriterion("is_fan =", value, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanNotEqualTo(Boolean value) {
            addCriterion("is_fan <>", value, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanGreaterThan(Boolean value) {
            addCriterion("is_fan >", value, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_fan >=", value, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanLessThan(Boolean value) {
            addCriterion("is_fan <", value, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanLessThanOrEqualTo(Boolean value) {
            addCriterion("is_fan <=", value, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanIn(List<Boolean> values) {
            addCriterion("is_fan in", values, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanNotIn(List<Boolean> values) {
            addCriterion("is_fan not in", values, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanBetween(Boolean value1, Boolean value2) {
            addCriterion("is_fan between", value1, value2, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsFanNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_fan not between", value1, value2, "isFan");
            return (Criteria) this;
        }

        public Criteria andIsDadaIsNull() {
            addCriterion("is_dada is null");
            return (Criteria) this;
        }

        public Criteria andIsDadaIsNotNull() {
            addCriterion("is_dada is not null");
            return (Criteria) this;
        }

        public Criteria andIsDadaEqualTo(Boolean value) {
            addCriterion("is_dada =", value, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaNotEqualTo(Boolean value) {
            addCriterion("is_dada <>", value, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaGreaterThan(Boolean value) {
            addCriterion("is_dada >", value, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_dada >=", value, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaLessThan(Boolean value) {
            addCriterion("is_dada <", value, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaLessThanOrEqualTo(Boolean value) {
            addCriterion("is_dada <=", value, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaIn(List<Boolean> values) {
            addCriterion("is_dada in", values, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaNotIn(List<Boolean> values) {
            addCriterion("is_dada not in", values, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaBetween(Boolean value1, Boolean value2) {
            addCriterion("is_dada between", value1, value2, "isDada");
            return (Criteria) this;
        }

        public Criteria andIsDadaNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_dada not between", value1, value2, "isDada");
            return (Criteria) this;
        }

        public Criteria andShopPeisongIsNull() {
            addCriterion("shop_peisong is null");
            return (Criteria) this;
        }

        public Criteria andShopPeisongIsNotNull() {
            addCriterion("shop_peisong is not null");
            return (Criteria) this;
        }

        public Criteria andShopPeisongEqualTo(Integer value) {
            addCriterion("shop_peisong =", value, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongNotEqualTo(Integer value) {
            addCriterion("shop_peisong <>", value, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongGreaterThan(Integer value) {
            addCriterion("shop_peisong >", value, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongGreaterThanOrEqualTo(Integer value) {
            addCriterion("shop_peisong >=", value, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongLessThan(Integer value) {
            addCriterion("shop_peisong <", value, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongLessThanOrEqualTo(Integer value) {
            addCriterion("shop_peisong <=", value, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongIn(List<Integer> values) {
            addCriterion("shop_peisong in", values, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongNotIn(List<Integer> values) {
            addCriterion("shop_peisong not in", values, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongBetween(Integer value1, Integer value2) {
            addCriterion("shop_peisong between", value1, value2, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andShopPeisongNotBetween(Integer value1, Integer value2) {
            addCriterion("shop_peisong not between", value1, value2, "shopPeisong");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineIsNull() {
            addCriterion("is_open_offline is null");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineIsNotNull() {
            addCriterion("is_open_offline is not null");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineEqualTo(Boolean value) {
            addCriterion("is_open_offline =", value, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineNotEqualTo(Boolean value) {
            addCriterion("is_open_offline <>", value, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineGreaterThan(Boolean value) {
            addCriterion("is_open_offline >", value, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_open_offline >=", value, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineLessThan(Boolean value) {
            addCriterion("is_open_offline <", value, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineLessThanOrEqualTo(Boolean value) {
            addCriterion("is_open_offline <=", value, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineIn(List<Boolean> values) {
            addCriterion("is_open_offline in", values, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineNotIn(List<Boolean> values) {
            addCriterion("is_open_offline not in", values, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineBetween(Boolean value1, Boolean value2) {
            addCriterion("is_open_offline between", value1, value2, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andIsOpenOfflineNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_open_offline not between", value1, value2, "isOpenOffline");
            return (Criteria) this;
        }

        public Criteria andSupplierIdIsNull() {
            addCriterion("supplier_id is null");
            return (Criteria) this;
        }

        public Criteria andSupplierIdIsNotNull() {
            addCriterion("supplier_id is not null");
            return (Criteria) this;
        }

        public Criteria andSupplierIdEqualTo(Integer value) {
            addCriterion("supplier_id =", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdNotEqualTo(Integer value) {
            addCriterion("supplier_id <>", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdGreaterThan(Integer value) {
            addCriterion("supplier_id >", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("supplier_id >=", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdLessThan(Integer value) {
            addCriterion("supplier_id <", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdLessThanOrEqualTo(Integer value) {
            addCriterion("supplier_id <=", value, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdIn(List<Integer> values) {
            addCriterion("supplier_id in", values, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdNotIn(List<Integer> values) {
            addCriterion("supplier_id not in", values, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdBetween(Integer value1, Integer value2) {
            addCriterion("supplier_id between", value1, value2, "supplierId");
            return (Criteria) this;
        }

        public Criteria andSupplierIdNotBetween(Integer value1, Integer value2) {
            addCriterion("supplier_id not between", value1, value2, "supplierId");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferIsNull() {
            addCriterion("is_sup_transfer is null");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferIsNotNull() {
            addCriterion("is_sup_transfer is not null");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferEqualTo(Boolean value) {
            addCriterion("is_sup_transfer =", value, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferNotEqualTo(Boolean value) {
            addCriterion("is_sup_transfer <>", value, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferGreaterThan(Boolean value) {
            addCriterion("is_sup_transfer >", value, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_sup_transfer >=", value, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferLessThan(Boolean value) {
            addCriterion("is_sup_transfer <", value, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferLessThanOrEqualTo(Boolean value) {
            addCriterion("is_sup_transfer <=", value, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferIn(List<Boolean> values) {
            addCriterion("is_sup_transfer in", values, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferNotIn(List<Boolean> values) {
            addCriterion("is_sup_transfer not in", values, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferBetween(Boolean value1, Boolean value2) {
            addCriterion("is_sup_transfer between", value1, value2, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andIsSupTransferNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_sup_transfer not between", value1, value2, "isSupTransfer");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceIsNull() {
            addCriterion("dabao_price is null");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceIsNotNull() {
            addCriterion("dabao_price is not null");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceEqualTo(BigDecimal value) {
            addCriterion("dabao_price =", value, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceNotEqualTo(BigDecimal value) {
            addCriterion("dabao_price <>", value, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceGreaterThan(BigDecimal value) {
            addCriterion("dabao_price >", value, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("dabao_price >=", value, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceLessThan(BigDecimal value) {
            addCriterion("dabao_price <", value, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("dabao_price <=", value, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceIn(List<BigDecimal> values) {
            addCriterion("dabao_price in", values, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceNotIn(List<BigDecimal> values) {
            addCriterion("dabao_price not in", values, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("dabao_price between", value1, value2, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andDabaoPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("dabao_price not between", value1, value2, "dabaoPrice");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountIsNull() {
            addCriterion("settlement_amount is null");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountIsNotNull() {
            addCriterion("settlement_amount is not null");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountEqualTo(BigDecimal value) {
            addCriterion("settlement_amount =", value, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountNotEqualTo(BigDecimal value) {
            addCriterion("settlement_amount <>", value, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountGreaterThan(BigDecimal value) {
            addCriterion("settlement_amount >", value, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("settlement_amount >=", value, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountLessThan(BigDecimal value) {
            addCriterion("settlement_amount <", value, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("settlement_amount <=", value, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountIn(List<BigDecimal> values) {
            addCriterion("settlement_amount in", values, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountNotIn(List<BigDecimal> values) {
            addCriterion("settlement_amount not in", values, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("settlement_amount between", value1, value2, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andSettlementAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("settlement_amount not between", value1, value2, "settlementAmount");
            return (Criteria) this;
        }

        public Criteria andIsSettlementIsNull() {
            addCriterion("is_settlement is null");
            return (Criteria) this;
        }

        public Criteria andIsSettlementIsNotNull() {
            addCriterion("is_settlement is not null");
            return (Criteria) this;
        }

        public Criteria andIsSettlementEqualTo(Short value) {
            addCriterion("is_settlement =", value, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementNotEqualTo(Short value) {
            addCriterion("is_settlement <>", value, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementGreaterThan(Short value) {
            addCriterion("is_settlement >", value, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementGreaterThanOrEqualTo(Short value) {
            addCriterion("is_settlement >=", value, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementLessThan(Short value) {
            addCriterion("is_settlement <", value, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementLessThanOrEqualTo(Short value) {
            addCriterion("is_settlement <=", value, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementIn(List<Short> values) {
            addCriterion("is_settlement in", values, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementNotIn(List<Short> values) {
            addCriterion("is_settlement not in", values, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementBetween(Short value1, Short value2) {
            addCriterion("is_settlement between", value1, value2, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andIsSettlementNotBetween(Short value1, Short value2) {
            addCriterion("is_settlement not between", value1, value2, "isSettlement");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeIsNull() {
            addCriterion("settlement_time is null");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeIsNotNull() {
            addCriterion("settlement_time is not null");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeEqualTo(Integer value) {
            addCriterion("settlement_time =", value, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeNotEqualTo(Integer value) {
            addCriterion("settlement_time <>", value, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeGreaterThan(Integer value) {
            addCriterion("settlement_time >", value, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("settlement_time >=", value, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeLessThan(Integer value) {
            addCriterion("settlement_time <", value, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeLessThanOrEqualTo(Integer value) {
            addCriterion("settlement_time <=", value, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeIn(List<Integer> values) {
            addCriterion("settlement_time in", values, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeNotIn(List<Integer> values) {
            addCriterion("settlement_time not in", values, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeBetween(Integer value1, Integer value2) {
            addCriterion("settlement_time between", value1, value2, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andSettlementTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("settlement_time not between", value1, value2, "settlementTime");
            return (Criteria) this;
        }

        public Criteria andIsMchShopIsNull() {
            addCriterion("is_mch_shop is null");
            return (Criteria) this;
        }

        public Criteria andIsMchShopIsNotNull() {
            addCriterion("is_mch_shop is not null");
            return (Criteria) this;
        }

        public Criteria andIsMchShopEqualTo(Boolean value) {
            addCriterion("is_mch_shop =", value, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopNotEqualTo(Boolean value) {
            addCriterion("is_mch_shop <>", value, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopGreaterThan(Boolean value) {
            addCriterion("is_mch_shop >", value, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_mch_shop >=", value, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopLessThan(Boolean value) {
            addCriterion("is_mch_shop <", value, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopLessThanOrEqualTo(Boolean value) {
            addCriterion("is_mch_shop <=", value, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopIn(List<Boolean> values) {
            addCriterion("is_mch_shop in", values, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopNotIn(List<Boolean> values) {
            addCriterion("is_mch_shop not in", values, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopBetween(Boolean value1, Boolean value2) {
            addCriterion("is_mch_shop between", value1, value2, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsMchShopNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_mch_shop not between", value1, value2, "isMchShop");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyIsNull() {
            addCriterion("is_divide_money is null");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyIsNotNull() {
            addCriterion("is_divide_money is not null");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyEqualTo(Boolean value) {
            addCriterion("is_divide_money =", value, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyNotEqualTo(Boolean value) {
            addCriterion("is_divide_money <>", value, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyGreaterThan(Boolean value) {
            addCriterion("is_divide_money >", value, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_divide_money >=", value, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyLessThan(Boolean value) {
            addCriterion("is_divide_money <", value, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyLessThanOrEqualTo(Boolean value) {
            addCriterion("is_divide_money <=", value, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyIn(List<Boolean> values) {
            addCriterion("is_divide_money in", values, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyNotIn(List<Boolean> values) {
            addCriterion("is_divide_money not in", values, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyBetween(Boolean value1, Boolean value2) {
            addCriterion("is_divide_money between", value1, value2, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andIsDivideMoneyNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_divide_money not between", value1, value2, "isDivideMoney");
            return (Criteria) this;
        }

        public Criteria andTransactionIdIsNull() {
            addCriterion("transaction_id is null");
            return (Criteria) this;
        }

        public Criteria andTransactionIdIsNotNull() {
            addCriterion("transaction_id is not null");
            return (Criteria) this;
        }

        public Criteria andTransactionIdEqualTo(String value) {
            addCriterion("transaction_id =", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdNotEqualTo(String value) {
            addCriterion("transaction_id <>", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdGreaterThan(String value) {
            addCriterion("transaction_id >", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdGreaterThanOrEqualTo(String value) {
            addCriterion("transaction_id >=", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdLessThan(String value) {
            addCriterion("transaction_id <", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdLessThanOrEqualTo(String value) {
            addCriterion("transaction_id <=", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdLike(String value) {
            addCriterion("transaction_id like", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdNotLike(String value) {
            addCriterion("transaction_id not like", value, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdIn(List<String> values) {
            addCriterion("transaction_id in", values, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdNotIn(List<String> values) {
            addCriterion("transaction_id not in", values, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdBetween(String value1, String value2) {
            addCriterion("transaction_id between", value1, value2, "transactionId");
            return (Criteria) this;
        }

        public Criteria andTransactionIdNotBetween(String value1, String value2) {
            addCriterion("transaction_id not between", value1, value2, "transactionId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdIsNull() {
            addCriterion("pay_user_id is null");
            return (Criteria) this;
        }

        public Criteria andPayUserIdIsNotNull() {
            addCriterion("pay_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andPayUserIdEqualTo(Integer value) {
            addCriterion("pay_user_id =", value, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdNotEqualTo(Integer value) {
            addCriterion("pay_user_id <>", value, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdGreaterThan(Integer value) {
            addCriterion("pay_user_id >", value, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("pay_user_id >=", value, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdLessThan(Integer value) {
            addCriterion("pay_user_id <", value, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("pay_user_id <=", value, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdIn(List<Integer> values) {
            addCriterion("pay_user_id in", values, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdNotIn(List<Integer> values) {
            addCriterion("pay_user_id not in", values, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdBetween(Integer value1, Integer value2) {
            addCriterion("pay_user_id between", value1, value2, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("pay_user_id not between", value1, value2, "payUserId");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueIsNull() {
            addCriterion("pay_type_true is null");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueIsNotNull() {
            addCriterion("pay_type_true is not null");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueEqualTo(Boolean value) {
            addCriterion("pay_type_true =", value, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueNotEqualTo(Boolean value) {
            addCriterion("pay_type_true <>", value, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueGreaterThan(Boolean value) {
            addCriterion("pay_type_true >", value, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueGreaterThanOrEqualTo(Boolean value) {
            addCriterion("pay_type_true >=", value, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueLessThan(Boolean value) {
            addCriterion("pay_type_true <", value, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueLessThanOrEqualTo(Boolean value) {
            addCriterion("pay_type_true <=", value, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueIn(List<Boolean> values) {
            addCriterion("pay_type_true in", values, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueNotIn(List<Boolean> values) {
            addCriterion("pay_type_true not in", values, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueBetween(Boolean value1, Boolean value2) {
            addCriterion("pay_type_true between", value1, value2, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andPayTypeTrueNotBetween(Boolean value1, Boolean value2) {
            addCriterion("pay_type_true not between", value1, value2, "payTypeTrue");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsIsNull() {
            addCriterion("is_vgoods is null");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsIsNotNull() {
            addCriterion("is_vgoods is not null");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsEqualTo(Integer value) {
            addCriterion("is_vgoods =", value, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsNotEqualTo(Integer value) {
            addCriterion("is_vgoods <>", value, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsGreaterThan(Integer value) {
            addCriterion("is_vgoods >", value, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_vgoods >=", value, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsLessThan(Integer value) {
            addCriterion("is_vgoods <", value, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsLessThanOrEqualTo(Integer value) {
            addCriterion("is_vgoods <=", value, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsIn(List<Integer> values) {
            addCriterion("is_vgoods in", values, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsNotIn(List<Integer> values) {
            addCriterion("is_vgoods not in", values, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsBetween(Integer value1, Integer value2) {
            addCriterion("is_vgoods between", value1, value2, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andIsVgoodsNotBetween(Integer value1, Integer value2) {
            addCriterion("is_vgoods not between", value1, value2, "isVgoods");
            return (Criteria) this;
        }

        public Criteria andReductionPriceIsNull() {
            addCriterion("reduction_price is null");
            return (Criteria) this;
        }

        public Criteria andReductionPriceIsNotNull() {
            addCriterion("reduction_price is not null");
            return (Criteria) this;
        }

        public Criteria andReductionPriceEqualTo(BigDecimal value) {
            addCriterion("reduction_price =", value, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceNotEqualTo(BigDecimal value) {
            addCriterion("reduction_price <>", value, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceGreaterThan(BigDecimal value) {
            addCriterion("reduction_price >", value, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("reduction_price >=", value, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceLessThan(BigDecimal value) {
            addCriterion("reduction_price <", value, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("reduction_price <=", value, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceIn(List<BigDecimal> values) {
            addCriterion("reduction_price in", values, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceNotIn(List<BigDecimal> values) {
            addCriterion("reduction_price not in", values, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("reduction_price between", value1, value2, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andReductionPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("reduction_price not between", value1, value2, "reductionPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceIsNull() {
            addCriterion("minus_price is null");
            return (Criteria) this;
        }

        public Criteria andMinusPriceIsNotNull() {
            addCriterion("minus_price is not null");
            return (Criteria) this;
        }

        public Criteria andMinusPriceEqualTo(BigDecimal value) {
            addCriterion("minus_price =", value, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceNotEqualTo(BigDecimal value) {
            addCriterion("minus_price <>", value, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceGreaterThan(BigDecimal value) {
            addCriterion("minus_price >", value, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("minus_price >=", value, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceLessThan(BigDecimal value) {
            addCriterion("minus_price <", value, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("minus_price <=", value, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceIn(List<BigDecimal> values) {
            addCriterion("minus_price in", values, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceNotIn(List<BigDecimal> values) {
            addCriterion("minus_price not in", values, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("minus_price between", value1, value2, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andMinusPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("minus_price not between", value1, value2, "minusPrice");
            return (Criteria) this;
        }

        public Criteria andOrderFromIsNull() {
            addCriterion("order_from is null");
            return (Criteria) this;
        }

        public Criteria andOrderFromIsNotNull() {
            addCriterion("order_from is not null");
            return (Criteria) this;
        }

        public Criteria andOrderFromEqualTo(Integer value) {
            addCriterion("order_from =", value, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromNotEqualTo(Integer value) {
            addCriterion("order_from <>", value, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromGreaterThan(Integer value) {
            addCriterion("order_from >", value, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_from >=", value, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromLessThan(Integer value) {
            addCriterion("order_from <", value, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromLessThanOrEqualTo(Integer value) {
            addCriterion("order_from <=", value, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromIn(List<Integer> values) {
            addCriterion("order_from in", values, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromNotIn(List<Integer> values) {
            addCriterion("order_from not in", values, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromBetween(Integer value1, Integer value2) {
            addCriterion("order_from between", value1, value2, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andOrderFromNotBetween(Integer value1, Integer value2) {
            addCriterion("order_from not between", value1, value2, "orderFrom");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceIsNull() {
            addCriterion("discount_price is null");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceIsNotNull() {
            addCriterion("discount_price is not null");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceEqualTo(BigDecimal value) {
            addCriterion("discount_price =", value, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceNotEqualTo(BigDecimal value) {
            addCriterion("discount_price <>", value, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceGreaterThan(BigDecimal value) {
            addCriterion("discount_price >", value, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("discount_price >=", value, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceLessThan(BigDecimal value) {
            addCriterion("discount_price <", value, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("discount_price <=", value, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceIn(List<BigDecimal> values) {
            addCriterion("discount_price in", values, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceNotIn(List<BigDecimal> values) {
            addCriterion("discount_price not in", values, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount_price between", value1, value2, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount_price not between", value1, value2, "discountPrice");
            return (Criteria) this;
        }

        public Criteria andDiscountNumIsNull() {
            addCriterion("discount_num is null");
            return (Criteria) this;
        }

        public Criteria andDiscountNumIsNotNull() {
            addCriterion("discount_num is not null");
            return (Criteria) this;
        }

        public Criteria andDiscountNumEqualTo(BigDecimal value) {
            addCriterion("discount_num =", value, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumNotEqualTo(BigDecimal value) {
            addCriterion("discount_num <>", value, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumGreaterThan(BigDecimal value) {
            addCriterion("discount_num >", value, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("discount_num >=", value, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumLessThan(BigDecimal value) {
            addCriterion("discount_num <", value, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumLessThanOrEqualTo(BigDecimal value) {
            addCriterion("discount_num <=", value, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumIn(List<BigDecimal> values) {
            addCriterion("discount_num in", values, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumNotIn(List<BigDecimal> values) {
            addCriterion("discount_num not in", values, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount_num between", value1, value2, "discountNum");
            return (Criteria) this;
        }

        public Criteria andDiscountNumNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("discount_num not between", value1, value2, "discountNum");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdIsNull() {
            addCriterion("give_goods_id is null");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdIsNotNull() {
            addCriterion("give_goods_id is not null");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdEqualTo(Integer value) {
            addCriterion("give_goods_id =", value, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdNotEqualTo(Integer value) {
            addCriterion("give_goods_id <>", value, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdGreaterThan(Integer value) {
            addCriterion("give_goods_id >", value, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("give_goods_id >=", value, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdLessThan(Integer value) {
            addCriterion("give_goods_id <", value, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdLessThanOrEqualTo(Integer value) {
            addCriterion("give_goods_id <=", value, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdIn(List<Integer> values) {
            addCriterion("give_goods_id in", values, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdNotIn(List<Integer> values) {
            addCriterion("give_goods_id not in", values, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdBetween(Integer value1, Integer value2) {
            addCriterion("give_goods_id between", value1, value2, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andGiveGoodsIdNotBetween(Integer value1, Integer value2) {
            addCriterion("give_goods_id not between", value1, value2, "giveGoodsId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdIsNull() {
            addCriterion("coupon_record_id is null");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdIsNotNull() {
            addCriterion("coupon_record_id is not null");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdEqualTo(String value) {
            addCriterion("coupon_record_id =", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdNotEqualTo(String value) {
            addCriterion("coupon_record_id <>", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdGreaterThan(String value) {
            addCriterion("coupon_record_id >", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdGreaterThanOrEqualTo(String value) {
            addCriterion("coupon_record_id >=", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdLessThan(String value) {
            addCriterion("coupon_record_id <", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdLessThanOrEqualTo(String value) {
            addCriterion("coupon_record_id <=", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdLike(String value) {
            addCriterion("coupon_record_id like", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdNotLike(String value) {
            addCriterion("coupon_record_id not like", value, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdIn(List<String> values) {
            addCriterion("coupon_record_id in", values, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdNotIn(List<String> values) {
            addCriterion("coupon_record_id not in", values, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdBetween(String value1, String value2) {
            addCriterion("coupon_record_id between", value1, value2, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andCouponRecordIdNotBetween(String value1, String value2) {
            addCriterion("coupon_record_id not between", value1, value2, "couponRecordId");
            return (Criteria) this;
        }

        public Criteria andIdCardNoIsNull() {
            addCriterion("id_card_no is null");
            return (Criteria) this;
        }

        public Criteria andIdCardNoIsNotNull() {
            addCriterion("id_card_no is not null");
            return (Criteria) this;
        }

        public Criteria andIdCardNoEqualTo(String value) {
            addCriterion("id_card_no =", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoNotEqualTo(String value) {
            addCriterion("id_card_no <>", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoGreaterThan(String value) {
            addCriterion("id_card_no >", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoGreaterThanOrEqualTo(String value) {
            addCriterion("id_card_no >=", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoLessThan(String value) {
            addCriterion("id_card_no <", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoLessThanOrEqualTo(String value) {
            addCriterion("id_card_no <=", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoLike(String value) {
            addCriterion("id_card_no like", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoNotLike(String value) {
            addCriterion("id_card_no not like", value, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoIn(List<String> values) {
            addCriterion("id_card_no in", values, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoNotIn(List<String> values) {
            addCriterion("id_card_no not in", values, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoBetween(String value1, String value2) {
            addCriterion("id_card_no between", value1, value2, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andIdCardNoNotBetween(String value1, String value2) {
            addCriterion("id_card_no not between", value1, value2, "idCardNo");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIsNull() {
            addCriterion("refund_time is null");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIsNotNull() {
            addCriterion("refund_time is not null");
            return (Criteria) this;
        }

        public Criteria andRefundTimeEqualTo(Integer value) {
            addCriterion("refund_time =", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotEqualTo(Integer value) {
            addCriterion("refund_time <>", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeGreaterThan(Integer value) {
            addCriterion("refund_time >", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("refund_time >=", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeLessThan(Integer value) {
            addCriterion("refund_time <", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeLessThanOrEqualTo(Integer value) {
            addCriterion("refund_time <=", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIn(List<Integer> values) {
            addCriterion("refund_time in", values, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotIn(List<Integer> values) {
            addCriterion("refund_time not in", values, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeBetween(Integer value1, Integer value2) {
            addCriterion("refund_time between", value1, value2, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("refund_time not between", value1, value2, "refundTime");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    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);
        }
    }
}