package com.hai.entity;

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

public class HighOrderExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Long offset;

    public HighOrderExample() {
        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(Long value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

        public Criteria andMemDiscountIdIsNotNull() {
            addCriterion("mem_discount_id is not null");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdEqualTo(Long value) {
            addCriterion("mem_discount_id =", value, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdNotEqualTo(Long value) {
            addCriterion("mem_discount_id <>", value, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdGreaterThan(Long value) {
            addCriterion("mem_discount_id >", value, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdGreaterThanOrEqualTo(Long value) {
            addCriterion("mem_discount_id >=", value, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdLessThan(Long value) {
            addCriterion("mem_discount_id <", value, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdLessThanOrEqualTo(Long value) {
            addCriterion("mem_discount_id <=", value, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdIn(List<Long> values) {
            addCriterion("mem_discount_id in", values, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdNotIn(List<Long> values) {
            addCriterion("mem_discount_id not in", values, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdBetween(Long value1, Long value2) {
            addCriterion("mem_discount_id between", value1, value2, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountIdNotBetween(Long value1, Long value2) {
            addCriterion("mem_discount_id not between", value1, value2, "memDiscountId");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameIsNull() {
            addCriterion("mem_discount_name is null");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameIsNotNull() {
            addCriterion("mem_discount_name is not null");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameEqualTo(String value) {
            addCriterion("mem_discount_name =", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameNotEqualTo(String value) {
            addCriterion("mem_discount_name <>", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameGreaterThan(String value) {
            addCriterion("mem_discount_name >", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameGreaterThanOrEqualTo(String value) {
            addCriterion("mem_discount_name >=", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameLessThan(String value) {
            addCriterion("mem_discount_name <", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameLessThanOrEqualTo(String value) {
            addCriterion("mem_discount_name <=", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameLike(String value) {
            addCriterion("mem_discount_name like", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameNotLike(String value) {
            addCriterion("mem_discount_name not like", value, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameIn(List<String> values) {
            addCriterion("mem_discount_name in", values, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameNotIn(List<String> values) {
            addCriterion("mem_discount_name not in", values, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameBetween(String value1, String value2) {
            addCriterion("mem_discount_name between", value1, value2, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemDiscountNameNotBetween(String value1, String value2) {
            addCriterion("mem_discount_name not between", value1, value2, "memDiscountName");
            return (Criteria) this;
        }

        public Criteria andMemIdIsNull() {
            addCriterion("mem_id is null");
            return (Criteria) this;
        }

        public Criteria andMemIdIsNotNull() {
            addCriterion("mem_id is not null");
            return (Criteria) this;
        }

        public Criteria andMemIdEqualTo(Long value) {
            addCriterion("mem_id =", value, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdNotEqualTo(Long value) {
            addCriterion("mem_id <>", value, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdGreaterThan(Long value) {
            addCriterion("mem_id >", value, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdGreaterThanOrEqualTo(Long value) {
            addCriterion("mem_id >=", value, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdLessThan(Long value) {
            addCriterion("mem_id <", value, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdLessThanOrEqualTo(Long value) {
            addCriterion("mem_id <=", value, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdIn(List<Long> values) {
            addCriterion("mem_id in", values, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdNotIn(List<Long> values) {
            addCriterion("mem_id not in", values, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdBetween(Long value1, Long value2) {
            addCriterion("mem_id between", value1, value2, "memId");
            return (Criteria) this;
        }

        public Criteria andMemIdNotBetween(Long value1, Long value2) {
            addCriterion("mem_id not between", value1, value2, "memId");
            return (Criteria) this;
        }

        public Criteria andMemNameIsNull() {
            addCriterion("mem_name is null");
            return (Criteria) this;
        }

        public Criteria andMemNameIsNotNull() {
            addCriterion("mem_name is not null");
            return (Criteria) this;
        }

        public Criteria andMemNameEqualTo(String value) {
            addCriterion("mem_name =", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameNotEqualTo(String value) {
            addCriterion("mem_name <>", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameGreaterThan(String value) {
            addCriterion("mem_name >", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameGreaterThanOrEqualTo(String value) {
            addCriterion("mem_name >=", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameLessThan(String value) {
            addCriterion("mem_name <", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameLessThanOrEqualTo(String value) {
            addCriterion("mem_name <=", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameLike(String value) {
            addCriterion("mem_name like", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameNotLike(String value) {
            addCriterion("mem_name not like", value, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameIn(List<String> values) {
            addCriterion("mem_name in", values, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameNotIn(List<String> values) {
            addCriterion("mem_name not in", values, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameBetween(String value1, String value2) {
            addCriterion("mem_name between", value1, value2, "memName");
            return (Criteria) this;
        }

        public Criteria andMemNameNotBetween(String value1, String value2) {
            addCriterion("mem_name not between", value1, value2, "memName");
            return (Criteria) this;
        }

        public Criteria andMemPhoneIsNull() {
            addCriterion("mem_phone is null");
            return (Criteria) this;
        }

        public Criteria andMemPhoneIsNotNull() {
            addCriterion("mem_phone is not null");
            return (Criteria) this;
        }

        public Criteria andMemPhoneEqualTo(String value) {
            addCriterion("mem_phone =", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneNotEqualTo(String value) {
            addCriterion("mem_phone <>", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneGreaterThan(String value) {
            addCriterion("mem_phone >", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("mem_phone >=", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneLessThan(String value) {
            addCriterion("mem_phone <", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneLessThanOrEqualTo(String value) {
            addCriterion("mem_phone <=", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneLike(String value) {
            addCriterion("mem_phone like", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneNotLike(String value) {
            addCriterion("mem_phone not like", value, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneIn(List<String> values) {
            addCriterion("mem_phone in", values, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneNotIn(List<String> values) {
            addCriterion("mem_phone not in", values, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneBetween(String value1, String value2) {
            addCriterion("mem_phone between", value1, value2, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemPhoneNotBetween(String value1, String value2) {
            addCriterion("mem_phone not between", value1, value2, "memPhone");
            return (Criteria) this;
        }

        public Criteria andMemCardIdIsNull() {
            addCriterion("mem_card_id is null");
            return (Criteria) this;
        }

        public Criteria andMemCardIdIsNotNull() {
            addCriterion("mem_card_id is not null");
            return (Criteria) this;
        }

        public Criteria andMemCardIdEqualTo(Long value) {
            addCriterion("mem_card_id =", value, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdNotEqualTo(Long value) {
            addCriterion("mem_card_id <>", value, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdGreaterThan(Long value) {
            addCriterion("mem_card_id >", value, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdGreaterThanOrEqualTo(Long value) {
            addCriterion("mem_card_id >=", value, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdLessThan(Long value) {
            addCriterion("mem_card_id <", value, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdLessThanOrEqualTo(Long value) {
            addCriterion("mem_card_id <=", value, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdIn(List<Long> values) {
            addCriterion("mem_card_id in", values, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdNotIn(List<Long> values) {
            addCriterion("mem_card_id not in", values, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdBetween(Long value1, Long value2) {
            addCriterion("mem_card_id between", value1, value2, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardIdNotBetween(Long value1, Long value2) {
            addCriterion("mem_card_id not between", value1, value2, "memCardId");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeIsNull() {
            addCriterion("mem_card_type is null");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeIsNotNull() {
            addCriterion("mem_card_type is not null");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeEqualTo(Integer value) {
            addCriterion("mem_card_type =", value, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeNotEqualTo(Integer value) {
            addCriterion("mem_card_type <>", value, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeGreaterThan(Integer value) {
            addCriterion("mem_card_type >", value, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("mem_card_type >=", value, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeLessThan(Integer value) {
            addCriterion("mem_card_type <", value, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeLessThanOrEqualTo(Integer value) {
            addCriterion("mem_card_type <=", value, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeIn(List<Integer> values) {
            addCriterion("mem_card_type in", values, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeNotIn(List<Integer> values) {
            addCriterion("mem_card_type not in", values, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeBetween(Integer value1, Integer value2) {
            addCriterion("mem_card_type between", value1, value2, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("mem_card_type not between", value1, value2, "memCardType");
            return (Criteria) this;
        }

        public Criteria andMemCardNoIsNull() {
            addCriterion("mem_card_no is null");
            return (Criteria) this;
        }

        public Criteria andMemCardNoIsNotNull() {
            addCriterion("mem_card_no is not null");
            return (Criteria) this;
        }

        public Criteria andMemCardNoEqualTo(String value) {
            addCriterion("mem_card_no =", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoNotEqualTo(String value) {
            addCriterion("mem_card_no <>", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoGreaterThan(String value) {
            addCriterion("mem_card_no >", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoGreaterThanOrEqualTo(String value) {
            addCriterion("mem_card_no >=", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoLessThan(String value) {
            addCriterion("mem_card_no <", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoLessThanOrEqualTo(String value) {
            addCriterion("mem_card_no <=", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoLike(String value) {
            addCriterion("mem_card_no like", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoNotLike(String value) {
            addCriterion("mem_card_no not like", value, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoIn(List<String> values) {
            addCriterion("mem_card_no in", values, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoNotIn(List<String> values) {
            addCriterion("mem_card_no not in", values, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoBetween(String value1, String value2) {
            addCriterion("mem_card_no between", value1, value2, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andMemCardNoNotBetween(String value1, String value2) {
            addCriterion("mem_card_no not between", value1, value2, "memCardNo");
            return (Criteria) this;
        }

        public Criteria andPayModelIsNull() {
            addCriterion("pay_model is null");
            return (Criteria) this;
        }

        public Criteria andPayModelIsNotNull() {
            addCriterion("pay_model is not null");
            return (Criteria) this;
        }

        public Criteria andPayModelEqualTo(Integer value) {
            addCriterion("pay_model =", value, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelNotEqualTo(Integer value) {
            addCriterion("pay_model <>", value, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelGreaterThan(Integer value) {
            addCriterion("pay_model >", value, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelGreaterThanOrEqualTo(Integer value) {
            addCriterion("pay_model >=", value, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelLessThan(Integer value) {
            addCriterion("pay_model <", value, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelLessThanOrEqualTo(Integer value) {
            addCriterion("pay_model <=", value, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelIn(List<Integer> values) {
            addCriterion("pay_model in", values, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelNotIn(List<Integer> values) {
            addCriterion("pay_model not in", values, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelBetween(Integer value1, Integer value2) {
            addCriterion("pay_model between", value1, value2, "payModel");
            return (Criteria) this;
        }

        public Criteria andPayModelNotBetween(Integer value1, Integer value2) {
            addCriterion("pay_model not between", value1, value2, "payModel");
            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(Integer value) {
            addCriterion("pay_type =", value, "payType");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

        public Criteria andPayablePriceIsNull() {
            addCriterion("payable_price is null");
            return (Criteria) this;
        }

        public Criteria andPayablePriceIsNotNull() {
            addCriterion("payable_price is not null");
            return (Criteria) this;
        }

        public Criteria andPayablePriceEqualTo(BigDecimal value) {
            addCriterion("payable_price =", value, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceNotEqualTo(BigDecimal value) {
            addCriterion("payable_price <>", value, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceGreaterThan(BigDecimal value) {
            addCriterion("payable_price >", value, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("payable_price >=", value, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceLessThan(BigDecimal value) {
            addCriterion("payable_price <", value, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("payable_price <=", value, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceIn(List<BigDecimal> values) {
            addCriterion("payable_price in", values, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceNotIn(List<BigDecimal> values) {
            addCriterion("payable_price not in", values, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("payable_price between", value1, value2, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayablePriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("payable_price not between", value1, value2, "payablePrice");
            return (Criteria) this;
        }

        public Criteria andPayGoldIsNull() {
            addCriterion("pay_gold is null");
            return (Criteria) this;
        }

        public Criteria andPayGoldIsNotNull() {
            addCriterion("pay_gold is not null");
            return (Criteria) this;
        }

        public Criteria andPayGoldEqualTo(Integer value) {
            addCriterion("pay_gold =", value, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldNotEqualTo(Integer value) {
            addCriterion("pay_gold <>", value, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldGreaterThan(Integer value) {
            addCriterion("pay_gold >", value, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldGreaterThanOrEqualTo(Integer value) {
            addCriterion("pay_gold >=", value, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldLessThan(Integer value) {
            addCriterion("pay_gold <", value, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldLessThanOrEqualTo(Integer value) {
            addCriterion("pay_gold <=", value, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldIn(List<Integer> values) {
            addCriterion("pay_gold in", values, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldNotIn(List<Integer> values) {
            addCriterion("pay_gold not in", values, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldBetween(Integer value1, Integer value2) {
            addCriterion("pay_gold between", value1, value2, "payGold");
            return (Criteria) this;
        }

        public Criteria andPayGoldNotBetween(Integer value1, Integer value2) {
            addCriterion("pay_gold not between", value1, value2, "payGold");
            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 andPayRealPriceIsNull() {
            addCriterion("pay_real_price is null");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceIsNotNull() {
            addCriterion("pay_real_price is not null");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceEqualTo(BigDecimal value) {
            addCriterion("pay_real_price =", value, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceNotEqualTo(BigDecimal value) {
            addCriterion("pay_real_price <>", value, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceGreaterThan(BigDecimal value) {
            addCriterion("pay_real_price >", value, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("pay_real_price >=", value, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceLessThan(BigDecimal value) {
            addCriterion("pay_real_price <", value, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("pay_real_price <=", value, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceIn(List<BigDecimal> values) {
            addCriterion("pay_real_price in", values, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceNotIn(List<BigDecimal> values) {
            addCriterion("pay_real_price not in", values, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("pay_real_price between", value1, value2, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPayRealPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("pay_real_price not between", value1, value2, "payRealPrice");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoIsNull() {
            addCriterion("pay_serial_no is null");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoIsNotNull() {
            addCriterion("pay_serial_no is not null");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoEqualTo(String value) {
            addCriterion("pay_serial_no =", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoNotEqualTo(String value) {
            addCriterion("pay_serial_no <>", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoGreaterThan(String value) {
            addCriterion("pay_serial_no >", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoGreaterThanOrEqualTo(String value) {
            addCriterion("pay_serial_no >=", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoLessThan(String value) {
            addCriterion("pay_serial_no <", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoLessThanOrEqualTo(String value) {
            addCriterion("pay_serial_no <=", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoLike(String value) {
            addCriterion("pay_serial_no like", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoNotLike(String value) {
            addCriterion("pay_serial_no not like", value, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoIn(List<String> values) {
            addCriterion("pay_serial_no in", values, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoNotIn(List<String> values) {
            addCriterion("pay_serial_no not in", values, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoBetween(String value1, String value2) {
            addCriterion("pay_serial_no between", value1, value2, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andPaySerialNoNotBetween(String value1, String value2) {
            addCriterion("pay_serial_no not between", value1, value2, "paySerialNo");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceIsNull() {
            addCriterion("deduction_price is null");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceIsNotNull() {
            addCriterion("deduction_price is not null");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceEqualTo(BigDecimal value) {
            addCriterion("deduction_price =", value, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceNotEqualTo(BigDecimal value) {
            addCriterion("deduction_price <>", value, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceGreaterThan(BigDecimal value) {
            addCriterion("deduction_price >", value, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("deduction_price >=", value, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceLessThan(BigDecimal value) {
            addCriterion("deduction_price <", value, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("deduction_price <=", value, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceIn(List<BigDecimal> values) {
            addCriterion("deduction_price in", values, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceNotIn(List<BigDecimal> values) {
            addCriterion("deduction_price not in", values, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("deduction_price between", value1, value2, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andDeductionPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("deduction_price not between", value1, value2, "deductionPrice");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIsNull() {
            addCriterion("order_status is null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIsNotNull() {
            addCriterion("order_status is not null");
            return (Criteria) this;
        }

        public Criteria andOrderStatusEqualTo(Integer value) {
            addCriterion("order_status =", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotEqualTo(Integer value) {
            addCriterion("order_status <>", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusGreaterThan(Integer value) {
            addCriterion("order_status >", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_status >=", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusLessThan(Integer value) {
            addCriterion("order_status <", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusLessThanOrEqualTo(Integer value) {
            addCriterion("order_status <=", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusIn(List<Integer> values) {
            addCriterion("order_status in", values, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotIn(List<Integer> values) {
            addCriterion("order_status not in", values, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusBetween(Integer value1, Integer value2) {
            addCriterion("order_status between", value1, value2, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("order_status not between", value1, value2, "orderStatus");
            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 andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andCancelTimeIsNull() {
            addCriterion("cancel_time is null");
            return (Criteria) this;
        }

        public Criteria andCancelTimeIsNotNull() {
            addCriterion("cancel_time is not null");
            return (Criteria) this;
        }

        public Criteria andCancelTimeEqualTo(Date value) {
            addCriterion("cancel_time =", value, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeNotEqualTo(Date value) {
            addCriterion("cancel_time <>", value, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeGreaterThan(Date value) {
            addCriterion("cancel_time >", value, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("cancel_time >=", value, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeLessThan(Date value) {
            addCriterion("cancel_time <", value, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeLessThanOrEqualTo(Date value) {
            addCriterion("cancel_time <=", value, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeIn(List<Date> values) {
            addCriterion("cancel_time in", values, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeNotIn(List<Date> values) {
            addCriterion("cancel_time not in", values, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeBetween(Date value1, Date value2) {
            addCriterion("cancel_time between", value1, value2, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelTimeNotBetween(Date value1, Date value2) {
            addCriterion("cancel_time not between", value1, value2, "cancelTime");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksIsNull() {
            addCriterion("cancel_remarks is null");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksIsNotNull() {
            addCriterion("cancel_remarks is not null");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksEqualTo(String value) {
            addCriterion("cancel_remarks =", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksNotEqualTo(String value) {
            addCriterion("cancel_remarks <>", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksGreaterThan(String value) {
            addCriterion("cancel_remarks >", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksGreaterThanOrEqualTo(String value) {
            addCriterion("cancel_remarks >=", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksLessThan(String value) {
            addCriterion("cancel_remarks <", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksLessThanOrEqualTo(String value) {
            addCriterion("cancel_remarks <=", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksLike(String value) {
            addCriterion("cancel_remarks like", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksNotLike(String value) {
            addCriterion("cancel_remarks not like", value, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksIn(List<String> values) {
            addCriterion("cancel_remarks in", values, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksNotIn(List<String> values) {
            addCriterion("cancel_remarks not in", values, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksBetween(String value1, String value2) {
            addCriterion("cancel_remarks between", value1, value2, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andCancelRemarksNotBetween(String value1, String value2) {
            addCriterion("cancel_remarks not between", value1, value2, "cancelRemarks");
            return (Criteria) this;
        }

        public Criteria andFinishTimeIsNull() {
            addCriterion("finish_time is null");
            return (Criteria) this;
        }

        public Criteria andFinishTimeIsNotNull() {
            addCriterion("finish_time is not null");
            return (Criteria) this;
        }

        public Criteria andFinishTimeEqualTo(Date value) {
            addCriterion("finish_time =", value, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeNotEqualTo(Date value) {
            addCriterion("finish_time <>", value, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeGreaterThan(Date value) {
            addCriterion("finish_time >", value, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("finish_time >=", value, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeLessThan(Date value) {
            addCriterion("finish_time <", value, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeLessThanOrEqualTo(Date value) {
            addCriterion("finish_time <=", value, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeIn(List<Date> values) {
            addCriterion("finish_time in", values, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeNotIn(List<Date> values) {
            addCriterion("finish_time not in", values, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeBetween(Date value1, Date value2) {
            addCriterion("finish_time between", value1, value2, "finishTime");
            return (Criteria) this;
        }

        public Criteria andFinishTimeNotBetween(Date value1, Date value2) {
            addCriterion("finish_time not between", value1, value2, "finishTime");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion("remarks is null");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion("remarks is not null");
            return (Criteria) this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion("remarks =", value, "remarks");
            return (Criteria) this;
        }

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

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion("remarks >", value, "remarks");
            return (Criteria) this;
        }

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

        public Criteria andRemarksLessThan(String value) {
            addCriterion("remarks <", value, "remarks");
            return (Criteria) this;
        }

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

        public Criteria andRemarksLike(String value) {
            addCriterion("remarks like", value, "remarks");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andRefundNoIsNull() {
            addCriterion("refund_no is null");
            return (Criteria) this;
        }

        public Criteria andRefundNoIsNotNull() {
            addCriterion("refund_no is not null");
            return (Criteria) this;
        }

        public Criteria andRefundNoEqualTo(String value) {
            addCriterion("refund_no =", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoNotEqualTo(String value) {
            addCriterion("refund_no <>", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoGreaterThan(String value) {
            addCriterion("refund_no >", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoGreaterThanOrEqualTo(String value) {
            addCriterion("refund_no >=", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoLessThan(String value) {
            addCriterion("refund_no <", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoLessThanOrEqualTo(String value) {
            addCriterion("refund_no <=", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoLike(String value) {
            addCriterion("refund_no like", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoNotLike(String value) {
            addCriterion("refund_no not like", value, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoIn(List<String> values) {
            addCriterion("refund_no in", values, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoNotIn(List<String> values) {
            addCriterion("refund_no not in", values, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoBetween(String value1, String value2) {
            addCriterion("refund_no between", value1, value2, "refundNo");
            return (Criteria) this;
        }

        public Criteria andRefundNoNotBetween(String value1, String value2) {
            addCriterion("refund_no not between", value1, value2, "refundNo");
            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(Date value) {
            addCriterion("refund_time =", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotEqualTo(Date value) {
            addCriterion("refund_time <>", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeGreaterThan(Date value) {
            addCriterion("refund_time >", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("refund_time >=", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeLessThan(Date value) {
            addCriterion("refund_time <", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeLessThanOrEqualTo(Date value) {
            addCriterion("refund_time <=", value, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIn(List<Date> values) {
            addCriterion("refund_time in", values, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotIn(List<Date> values) {
            addCriterion("refund_time not in", values, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeBetween(Date value1, Date value2) {
            addCriterion("refund_time between", value1, value2, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundTimeNotBetween(Date value1, Date value2) {
            addCriterion("refund_time not between", value1, value2, "refundTime");
            return (Criteria) this;
        }

        public Criteria andRefundPriceIsNull() {
            addCriterion("refund_price is null");
            return (Criteria) this;
        }

        public Criteria andRefundPriceIsNotNull() {
            addCriterion("refund_price is not null");
            return (Criteria) this;
        }

        public Criteria andRefundPriceEqualTo(BigDecimal value) {
            addCriterion("refund_price =", value, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceNotEqualTo(BigDecimal value) {
            addCriterion("refund_price <>", value, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceGreaterThan(BigDecimal value) {
            addCriterion("refund_price >", value, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("refund_price >=", value, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceLessThan(BigDecimal value) {
            addCriterion("refund_price <", value, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("refund_price <=", value, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceIn(List<BigDecimal> values) {
            addCriterion("refund_price in", values, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceNotIn(List<BigDecimal> values) {
            addCriterion("refund_price not in", values, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("refund_price between", value1, value2, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("refund_price not between", value1, value2, "refundPrice");
            return (Criteria) this;
        }

        public Criteria andRefundContentIsNull() {
            addCriterion("refund_content is null");
            return (Criteria) this;
        }

        public Criteria andRefundContentIsNotNull() {
            addCriterion("refund_content is not null");
            return (Criteria) this;
        }

        public Criteria andRefundContentEqualTo(String value) {
            addCriterion("refund_content =", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentNotEqualTo(String value) {
            addCriterion("refund_content <>", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentGreaterThan(String value) {
            addCriterion("refund_content >", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentGreaterThanOrEqualTo(String value) {
            addCriterion("refund_content >=", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentLessThan(String value) {
            addCriterion("refund_content <", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentLessThanOrEqualTo(String value) {
            addCriterion("refund_content <=", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentLike(String value) {
            addCriterion("refund_content like", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentNotLike(String value) {
            addCriterion("refund_content not like", value, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentIn(List<String> values) {
            addCriterion("refund_content in", values, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentNotIn(List<String> values) {
            addCriterion("refund_content not in", values, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentBetween(String value1, String value2) {
            addCriterion("refund_content between", value1, value2, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefundContentNotBetween(String value1, String value2) {
            addCriterion("refund_content not between", value1, value2, "refundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentIsNull() {
            addCriterion("refusal_refund_content is null");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentIsNotNull() {
            addCriterion("refusal_refund_content is not null");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentEqualTo(String value) {
            addCriterion("refusal_refund_content =", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentNotEqualTo(String value) {
            addCriterion("refusal_refund_content <>", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentGreaterThan(String value) {
            addCriterion("refusal_refund_content >", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentGreaterThanOrEqualTo(String value) {
            addCriterion("refusal_refund_content >=", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentLessThan(String value) {
            addCriterion("refusal_refund_content <", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentLessThanOrEqualTo(String value) {
            addCriterion("refusal_refund_content <=", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentLike(String value) {
            addCriterion("refusal_refund_content like", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentNotLike(String value) {
            addCriterion("refusal_refund_content not like", value, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentIn(List<String> values) {
            addCriterion("refusal_refund_content in", values, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentNotIn(List<String> values) {
            addCriterion("refusal_refund_content not in", values, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentBetween(String value1, String value2) {
            addCriterion("refusal_refund_content between", value1, value2, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andRefusalRefundContentNotBetween(String value1, String value2) {
            addCriterion("refusal_refund_content not between", value1, value2, "refusalRefundContent");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeIsNull() {
            addCriterion("Identification_code is null");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeIsNotNull() {
            addCriterion("Identification_code is not null");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeEqualTo(Long value) {
            addCriterion("Identification_code =", value, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeNotEqualTo(Long value) {
            addCriterion("Identification_code <>", value, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeGreaterThan(Long value) {
            addCriterion("Identification_code >", value, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeGreaterThanOrEqualTo(Long value) {
            addCriterion("Identification_code >=", value, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeLessThan(Long value) {
            addCriterion("Identification_code <", value, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeLessThanOrEqualTo(Long value) {
            addCriterion("Identification_code <=", value, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeIn(List<Long> values) {
            addCriterion("Identification_code in", values, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeNotIn(List<Long> values) {
            addCriterion("Identification_code not in", values, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeBetween(Long value1, Long value2) {
            addCriterion("Identification_code between", value1, value2, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andIdentificationCodeNotBetween(Long value1, Long value2) {
            addCriterion("Identification_code not between", value1, value2, "identificationCode");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusIsNull() {
            addCriterion("profit_sharing_status is null");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusIsNotNull() {
            addCriterion("profit_sharing_status is not null");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusEqualTo(Boolean value) {
            addCriterion("profit_sharing_status =", value, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusNotEqualTo(Boolean value) {
            addCriterion("profit_sharing_status <>", value, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusGreaterThan(Boolean value) {
            addCriterion("profit_sharing_status >", value, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusGreaterThanOrEqualTo(Boolean value) {
            addCriterion("profit_sharing_status >=", value, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusLessThan(Boolean value) {
            addCriterion("profit_sharing_status <", value, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusLessThanOrEqualTo(Boolean value) {
            addCriterion("profit_sharing_status <=", value, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusIn(List<Boolean> values) {
            addCriterion("profit_sharing_status in", values, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusNotIn(List<Boolean> values) {
            addCriterion("profit_sharing_status not in", values, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusBetween(Boolean value1, Boolean value2) {
            addCriterion("profit_sharing_status between", value1, value2, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingStatusNotBetween(Boolean value1, Boolean value2) {
            addCriterion("profit_sharing_status not between", value1, value2, "profitSharingStatus");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioIsNull() {
            addCriterion("profit_sharing_ratio is null");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioIsNotNull() {
            addCriterion("profit_sharing_ratio is not null");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioEqualTo(BigDecimal value) {
            addCriterion("profit_sharing_ratio =", value, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioNotEqualTo(BigDecimal value) {
            addCriterion("profit_sharing_ratio <>", value, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioGreaterThan(BigDecimal value) {
            addCriterion("profit_sharing_ratio >", value, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("profit_sharing_ratio >=", value, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioLessThan(BigDecimal value) {
            addCriterion("profit_sharing_ratio <", value, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioLessThanOrEqualTo(BigDecimal value) {
            addCriterion("profit_sharing_ratio <=", value, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioIn(List<BigDecimal> values) {
            addCriterion("profit_sharing_ratio in", values, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioNotIn(List<BigDecimal> values) {
            addCriterion("profit_sharing_ratio not in", values, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("profit_sharing_ratio between", value1, value2, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andProfitSharingRatioNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("profit_sharing_ratio not between", value1, value2, "profitSharingRatio");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumIsNull() {
            addCriterion("account_merchant_num is null");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumIsNotNull() {
            addCriterion("account_merchant_num is not null");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumEqualTo(String value) {
            addCriterion("account_merchant_num =", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumNotEqualTo(String value) {
            addCriterion("account_merchant_num <>", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumGreaterThan(String value) {
            addCriterion("account_merchant_num >", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumGreaterThanOrEqualTo(String value) {
            addCriterion("account_merchant_num >=", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumLessThan(String value) {
            addCriterion("account_merchant_num <", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumLessThanOrEqualTo(String value) {
            addCriterion("account_merchant_num <=", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumLike(String value) {
            addCriterion("account_merchant_num like", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumNotLike(String value) {
            addCriterion("account_merchant_num not like", value, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumIn(List<String> values) {
            addCriterion("account_merchant_num in", values, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumNotIn(List<String> values) {
            addCriterion("account_merchant_num not in", values, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumBetween(String value1, String value2) {
            addCriterion("account_merchant_num between", value1, value2, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andAccountMerchantNumNotBetween(String value1, String value2) {
            addCriterion("account_merchant_num not between", value1, value2, "accountMerchantNum");
            return (Criteria) this;
        }

        public Criteria andProductTypeIsNull() {
            addCriterion("product_type is null");
            return (Criteria) this;
        }

        public Criteria andProductTypeIsNotNull() {
            addCriterion("product_type is not null");
            return (Criteria) this;
        }

        public Criteria andProductTypeEqualTo(Integer value) {
            addCriterion("product_type =", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotEqualTo(Integer value) {
            addCriterion("product_type <>", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeGreaterThan(Integer value) {
            addCriterion("product_type >", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("product_type >=", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeLessThan(Integer value) {
            addCriterion("product_type <", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeLessThanOrEqualTo(Integer value) {
            addCriterion("product_type <=", value, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeIn(List<Integer> values) {
            addCriterion("product_type in", values, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotIn(List<Integer> values) {
            addCriterion("product_type not in", values, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeBetween(Integer value1, Integer value2) {
            addCriterion("product_type between", value1, value2, "productType");
            return (Criteria) this;
        }

        public Criteria andProductTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("product_type not between", value1, value2, "productType");
            return (Criteria) this;
        }

        public Criteria andPrintStatusIsNull() {
            addCriterion("print_status is null");
            return (Criteria) this;
        }

        public Criteria andPrintStatusIsNotNull() {
            addCriterion("print_status is not null");
            return (Criteria) this;
        }

        public Criteria andPrintStatusEqualTo(Boolean value) {
            addCriterion("print_status =", value, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusNotEqualTo(Boolean value) {
            addCriterion("print_status <>", value, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusGreaterThan(Boolean value) {
            addCriterion("print_status >", value, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusGreaterThanOrEqualTo(Boolean value) {
            addCriterion("print_status >=", value, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusLessThan(Boolean value) {
            addCriterion("print_status <", value, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusLessThanOrEqualTo(Boolean value) {
            addCriterion("print_status <=", value, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusIn(List<Boolean> values) {
            addCriterion("print_status in", values, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusNotIn(List<Boolean> values) {
            addCriterion("print_status not in", values, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusBetween(Boolean value1, Boolean value2) {
            addCriterion("print_status between", value1, value2, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintStatusNotBetween(Boolean value1, Boolean value2) {
            addCriterion("print_status not between", value1, value2, "printStatus");
            return (Criteria) this;
        }

        public Criteria andPrintNumIsNull() {
            addCriterion("print_num is null");
            return (Criteria) this;
        }

        public Criteria andPrintNumIsNotNull() {
            addCriterion("print_num is not null");
            return (Criteria) this;
        }

        public Criteria andPrintNumEqualTo(Integer value) {
            addCriterion("print_num =", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumNotEqualTo(Integer value) {
            addCriterion("print_num <>", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumGreaterThan(Integer value) {
            addCriterion("print_num >", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumGreaterThanOrEqualTo(Integer value) {
            addCriterion("print_num >=", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumLessThan(Integer value) {
            addCriterion("print_num <", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumLessThanOrEqualTo(Integer value) {
            addCriterion("print_num <=", value, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumIn(List<Integer> values) {
            addCriterion("print_num in", values, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumNotIn(List<Integer> values) {
            addCriterion("print_num not in", values, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumBetween(Integer value1, Integer value2) {
            addCriterion("print_num between", value1, value2, "printNum");
            return (Criteria) this;
        }

        public Criteria andPrintNumNotBetween(Integer value1, Integer value2) {
            addCriterion("print_num not between", value1, value2, "printNum");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckIsNull() {
            addCriterion("whether_check is null");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckIsNotNull() {
            addCriterion("whether_check is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckEqualTo(Boolean value) {
            addCriterion("whether_check =", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckNotEqualTo(Boolean value) {
            addCriterion("whether_check <>", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckGreaterThan(Boolean value) {
            addCriterion("whether_check >", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckGreaterThanOrEqualTo(Boolean value) {
            addCriterion("whether_check >=", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckLessThan(Boolean value) {
            addCriterion("whether_check <", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckLessThanOrEqualTo(Boolean value) {
            addCriterion("whether_check <=", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckIn(List<Boolean> values) {
            addCriterion("whether_check in", values, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckNotIn(List<Boolean> values) {
            addCriterion("whether_check not in", values, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckBetween(Boolean value1, Boolean value2) {
            addCriterion("whether_check between", value1, value2, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckNotBetween(Boolean value1, Boolean value2) {
            addCriterion("whether_check not between", value1, value2, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateIsNull() {
            addCriterion("whether_rebate is null");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateIsNotNull() {
            addCriterion("whether_rebate is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateEqualTo(Boolean value) {
            addCriterion("whether_rebate =", value, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateNotEqualTo(Boolean value) {
            addCriterion("whether_rebate <>", value, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateGreaterThan(Boolean value) {
            addCriterion("whether_rebate >", value, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateGreaterThanOrEqualTo(Boolean value) {
            addCriterion("whether_rebate >=", value, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateLessThan(Boolean value) {
            addCriterion("whether_rebate <", value, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateLessThanOrEqualTo(Boolean value) {
            addCriterion("whether_rebate <=", value, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateIn(List<Boolean> values) {
            addCriterion("whether_rebate in", values, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateNotIn(List<Boolean> values) {
            addCriterion("whether_rebate not in", values, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateBetween(Boolean value1, Boolean value2) {
            addCriterion("whether_rebate between", value1, value2, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andWhetherRebateNotBetween(Boolean value1, Boolean value2) {
            addCriterion("whether_rebate not between", value1, value2, "whetherRebate");
            return (Criteria) this;
        }

        public Criteria andRegionIdIsNull() {
            addCriterion("region_id is null");
            return (Criteria) this;
        }

        public Criteria andRegionIdIsNotNull() {
            addCriterion("region_id is not null");
            return (Criteria) this;
        }

        public Criteria andRegionIdEqualTo(String value) {
            addCriterion("region_id =", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdNotEqualTo(String value) {
            addCriterion("region_id <>", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdGreaterThan(String value) {
            addCriterion("region_id >", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdGreaterThanOrEqualTo(String value) {
            addCriterion("region_id >=", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdLessThan(String value) {
            addCriterion("region_id <", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdLessThanOrEqualTo(String value) {
            addCriterion("region_id <=", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdLike(String value) {
            addCriterion("region_id like", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdNotLike(String value) {
            addCriterion("region_id not like", value, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdIn(List<String> values) {
            addCriterion("region_id in", values, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdNotIn(List<String> values) {
            addCriterion("region_id not in", values, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdBetween(String value1, String value2) {
            addCriterion("region_id between", value1, value2, "regionId");
            return (Criteria) this;
        }

        public Criteria andRegionIdNotBetween(String value1, String value2) {
            addCriterion("region_id not between", value1, value2, "regionId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNull() {
            addCriterion("company_id is null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIsNotNull() {
            addCriterion("company_id is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyIdEqualTo(Long value) {
            addCriterion("company_id =", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotEqualTo(Long value) {
            addCriterion("company_id <>", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThan(Long value) {
            addCriterion("company_id >", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdGreaterThanOrEqualTo(Long value) {
            addCriterion("company_id >=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThan(Long value) {
            addCriterion("company_id <", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdLessThanOrEqualTo(Long value) {
            addCriterion("company_id <=", value, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdIn(List<Long> values) {
            addCriterion("company_id in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotIn(List<Long> values) {
            addCriterion("company_id not in", values, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdBetween(Long value1, Long value2) {
            addCriterion("company_id between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andCompanyIdNotBetween(Long value1, Long value2) {
            addCriterion("company_id not between", value1, value2, "companyId");
            return (Criteria) this;
        }

        public Criteria andMerchIdIsNull() {
            addCriterion("merch_id is null");
            return (Criteria) this;
        }

        public Criteria andMerchIdIsNotNull() {
            addCriterion("merch_id is not null");
            return (Criteria) this;
        }

        public Criteria andMerchIdEqualTo(String value) {
            addCriterion("merch_id =", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdNotEqualTo(String value) {
            addCriterion("merch_id <>", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdGreaterThan(String value) {
            addCriterion("merch_id >", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdGreaterThanOrEqualTo(String value) {
            addCriterion("merch_id >=", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdLessThan(String value) {
            addCriterion("merch_id <", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdLessThanOrEqualTo(String value) {
            addCriterion("merch_id <=", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdLike(String value) {
            addCriterion("merch_id like", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdNotLike(String value) {
            addCriterion("merch_id not like", value, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdIn(List<String> values) {
            addCriterion("merch_id in", values, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdNotIn(List<String> values) {
            addCriterion("merch_id not in", values, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdBetween(String value1, String value2) {
            addCriterion("merch_id between", value1, value2, "merchId");
            return (Criteria) this;
        }

        public Criteria andMerchIdNotBetween(String value1, String value2) {
            addCriterion("merch_id not between", value1, value2, "merchId");
            return (Criteria) this;
        }

        public Criteria andExt1IsNull() {
            addCriterion("ext_1 is null");
            return (Criteria) this;
        }

        public Criteria andExt1IsNotNull() {
            addCriterion("ext_1 is not null");
            return (Criteria) this;
        }

        public Criteria andExt1EqualTo(String value) {
            addCriterion("ext_1 =", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotEqualTo(String value) {
            addCriterion("ext_1 <>", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1GreaterThan(String value) {
            addCriterion("ext_1 >", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1GreaterThanOrEqualTo(String value) {
            addCriterion("ext_1 >=", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1LessThan(String value) {
            addCriterion("ext_1 <", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1LessThanOrEqualTo(String value) {
            addCriterion("ext_1 <=", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1Like(String value) {
            addCriterion("ext_1 like", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotLike(String value) {
            addCriterion("ext_1 not like", value, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1In(List<String> values) {
            addCriterion("ext_1 in", values, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotIn(List<String> values) {
            addCriterion("ext_1 not in", values, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1Between(String value1, String value2) {
            addCriterion("ext_1 between", value1, value2, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt1NotBetween(String value1, String value2) {
            addCriterion("ext_1 not between", value1, value2, "ext1");
            return (Criteria) this;
        }

        public Criteria andExt2IsNull() {
            addCriterion("ext_2 is null");
            return (Criteria) this;
        }

        public Criteria andExt2IsNotNull() {
            addCriterion("ext_2 is not null");
            return (Criteria) this;
        }

        public Criteria andExt2EqualTo(String value) {
            addCriterion("ext_2 =", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotEqualTo(String value) {
            addCriterion("ext_2 <>", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2GreaterThan(String value) {
            addCriterion("ext_2 >", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2GreaterThanOrEqualTo(String value) {
            addCriterion("ext_2 >=", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2LessThan(String value) {
            addCriterion("ext_2 <", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2LessThanOrEqualTo(String value) {
            addCriterion("ext_2 <=", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2Like(String value) {
            addCriterion("ext_2 like", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotLike(String value) {
            addCriterion("ext_2 not like", value, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2In(List<String> values) {
            addCriterion("ext_2 in", values, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotIn(List<String> values) {
            addCriterion("ext_2 not in", values, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2Between(String value1, String value2) {
            addCriterion("ext_2 between", value1, value2, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt2NotBetween(String value1, String value2) {
            addCriterion("ext_2 not between", value1, value2, "ext2");
            return (Criteria) this;
        }

        public Criteria andExt3IsNull() {
            addCriterion("ext_3 is null");
            return (Criteria) this;
        }

        public Criteria andExt3IsNotNull() {
            addCriterion("ext_3 is not null");
            return (Criteria) this;
        }

        public Criteria andExt3EqualTo(String value) {
            addCriterion("ext_3 =", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotEqualTo(String value) {
            addCriterion("ext_3 <>", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3GreaterThan(String value) {
            addCriterion("ext_3 >", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3GreaterThanOrEqualTo(String value) {
            addCriterion("ext_3 >=", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3LessThan(String value) {
            addCriterion("ext_3 <", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3LessThanOrEqualTo(String value) {
            addCriterion("ext_3 <=", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3Like(String value) {
            addCriterion("ext_3 like", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotLike(String value) {
            addCriterion("ext_3 not like", value, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3In(List<String> values) {
            addCriterion("ext_3 in", values, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotIn(List<String> values) {
            addCriterion("ext_3 not in", values, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3Between(String value1, String value2) {
            addCriterion("ext_3 between", value1, value2, "ext3");
            return (Criteria) this;
        }

        public Criteria andExt3NotBetween(String value1, String value2) {
            addCriterion("ext_3 not between", value1, value2, "ext3");
            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);
        }
    }
}