package cn.superdesk.uniorder.dao.entity.thirdpart.qchjc.accounting;

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

public class QchjcAccountingUnifiedSupplierEntityExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public QchjcAccountingUnifiedSupplierEntityExample() {
        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;
    }

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

        public Criteria andUnifiedIdIsNotNull() {
            addCriterion("unified_id is not null");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdEqualTo(Long value) {
            addCriterion("unified_id =", value, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdNotEqualTo(Long value) {
            addCriterion("unified_id <>", value, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdGreaterThan(Long value) {
            addCriterion("unified_id >", value, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdGreaterThanOrEqualTo(Long value) {
            addCriterion("unified_id >=", value, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdLessThan(Long value) {
            addCriterion("unified_id <", value, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdLessThanOrEqualTo(Long value) {
            addCriterion("unified_id <=", value, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdIn(List<Long> values) {
            addCriterion("unified_id in", values, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdNotIn(List<Long> values) {
            addCriterion("unified_id not in", values, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdBetween(Long value1, Long value2) {
            addCriterion("unified_id between", value1, value2, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andUnifiedIdNotBetween(Long value1, Long value2) {
            addCriterion("unified_id not between", value1, value2, "unifiedId");
            return (Criteria) this;
        }

        public Criteria andDimCreateByIsNull() {
            addCriterion("dim_create_by is null");
            return (Criteria) this;
        }

        public Criteria andDimCreateByIsNotNull() {
            addCriterion("dim_create_by is not null");
            return (Criteria) this;
        }

        public Criteria andDimCreateByEqualTo(Integer value) {
            addCriterion("dim_create_by =", value, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByNotEqualTo(Integer value) {
            addCriterion("dim_create_by <>", value, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByGreaterThan(Integer value) {
            addCriterion("dim_create_by >", value, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByGreaterThanOrEqualTo(Integer value) {
            addCriterion("dim_create_by >=", value, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByLessThan(Integer value) {
            addCriterion("dim_create_by <", value, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByLessThanOrEqualTo(Integer value) {
            addCriterion("dim_create_by <=", value, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByIn(List<Integer> values) {
            addCriterion("dim_create_by in", values, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByNotIn(List<Integer> values) {
            addCriterion("dim_create_by not in", values, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByBetween(Integer value1, Integer value2) {
            addCriterion("dim_create_by between", value1, value2, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andDimCreateByNotBetween(Integer value1, Integer value2) {
            addCriterion("dim_create_by not between", value1, value2, "dimCreateBy");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnIsNull() {
            addCriterion("accounting_order_sn is null");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnIsNotNull() {
            addCriterion("accounting_order_sn is not null");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnEqualTo(String value) {
            addCriterion("accounting_order_sn =", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnNotEqualTo(String value) {
            addCriterion("accounting_order_sn <>", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnGreaterThan(String value) {
            addCriterion("accounting_order_sn >", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnGreaterThanOrEqualTo(String value) {
            addCriterion("accounting_order_sn >=", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnLessThan(String value) {
            addCriterion("accounting_order_sn <", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnLessThanOrEqualTo(String value) {
            addCriterion("accounting_order_sn <=", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnLike(String value) {
            addCriterion("accounting_order_sn like", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnNotLike(String value) {
            addCriterion("accounting_order_sn not like", value, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnIn(List<String> values) {
            addCriterion("accounting_order_sn in", values, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnNotIn(List<String> values) {
            addCriterion("accounting_order_sn not in", values, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnBetween(String value1, String value2) {
            addCriterion("accounting_order_sn between", value1, value2, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderSnNotBetween(String value1, String value2) {
            addCriterion("accounting_order_sn not between", value1, value2, "accountingOrderSn");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusIsNull() {
            addCriterion("accounting_status is null");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusIsNotNull() {
            addCriterion("accounting_status is not null");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusEqualTo(Integer value) {
            addCriterion("accounting_status =", value, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusNotEqualTo(Integer value) {
            addCriterion("accounting_status <>", value, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusGreaterThan(Integer value) {
            addCriterion("accounting_status >", value, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("accounting_status >=", value, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusLessThan(Integer value) {
            addCriterion("accounting_status <", value, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusLessThanOrEqualTo(Integer value) {
            addCriterion("accounting_status <=", value, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusIn(List<Integer> values) {
            addCriterion("accounting_status in", values, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusNotIn(List<Integer> values) {
            addCriterion("accounting_status not in", values, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusBetween(Integer value1, Integer value2) {
            addCriterion("accounting_status between", value1, value2, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andAccountingStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("accounting_status not between", value1, value2, "accountingStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusIsNull() {
            addCriterion("invoice_status is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusIsNotNull() {
            addCriterion("invoice_status is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusEqualTo(Integer value) {
            addCriterion("invoice_status =", value, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusNotEqualTo(Integer value) {
            addCriterion("invoice_status <>", value, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusGreaterThan(Integer value) {
            addCriterion("invoice_status >", value, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_status >=", value, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusLessThan(Integer value) {
            addCriterion("invoice_status <", value, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_status <=", value, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusIn(List<Integer> values) {
            addCriterion("invoice_status in", values, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusNotIn(List<Integer> values) {
            addCriterion("invoice_status not in", values, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusBetween(Integer value1, Integer value2) {
            addCriterion("invoice_status between", value1, value2, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_status not between", value1, value2, "invoiceStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleIsNull() {
            addCriterion("invoice_title is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleIsNotNull() {
            addCriterion("invoice_title is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleEqualTo(String value) {
            addCriterion("invoice_title =", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleNotEqualTo(String value) {
            addCriterion("invoice_title <>", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleGreaterThan(String value) {
            addCriterion("invoice_title >", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_title >=", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleLessThan(String value) {
            addCriterion("invoice_title <", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleLessThanOrEqualTo(String value) {
            addCriterion("invoice_title <=", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleLike(String value) {
            addCriterion("invoice_title like", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleNotLike(String value) {
            addCriterion("invoice_title not like", value, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleIn(List<String> values) {
            addCriterion("invoice_title in", values, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleNotIn(List<String> values) {
            addCriterion("invoice_title not in", values, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleBetween(String value1, String value2) {
            addCriterion("invoice_title between", value1, value2, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTitleNotBetween(String value1, String value2) {
            addCriterion("invoice_title not between", value1, value2, "invoiceTitle");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeIsNull() {
            addCriterion("invoice_type is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeIsNotNull() {
            addCriterion("invoice_type is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeEqualTo(Integer value) {
            addCriterion("invoice_type =", value, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeNotEqualTo(Integer value) {
            addCriterion("invoice_type <>", value, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeGreaterThan(Integer value) {
            addCriterion("invoice_type >", value, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_type >=", value, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeLessThan(Integer value) {
            addCriterion("invoice_type <", value, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_type <=", value, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeIn(List<Integer> values) {
            addCriterion("invoice_type in", values, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeNotIn(List<Integer> values) {
            addCriterion("invoice_type not in", values, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeBetween(Integer value1, Integer value2) {
            addCriterion("invoice_type between", value1, value2, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andInvoiceTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_type not between", value1, value2, "invoiceType");
            return (Criteria) this;
        }

        public Criteria andTaxCodeIsNull() {
            addCriterion("tax_code is null");
            return (Criteria) this;
        }

        public Criteria andTaxCodeIsNotNull() {
            addCriterion("tax_code is not null");
            return (Criteria) this;
        }

        public Criteria andTaxCodeEqualTo(String value) {
            addCriterion("tax_code =", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeNotEqualTo(String value) {
            addCriterion("tax_code <>", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeGreaterThan(String value) {
            addCriterion("tax_code >", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeGreaterThanOrEqualTo(String value) {
            addCriterion("tax_code >=", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeLessThan(String value) {
            addCriterion("tax_code <", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeLessThanOrEqualTo(String value) {
            addCriterion("tax_code <=", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeLike(String value) {
            addCriterion("tax_code like", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeNotLike(String value) {
            addCriterion("tax_code not like", value, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeIn(List<String> values) {
            addCriterion("tax_code in", values, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeNotIn(List<String> values) {
            addCriterion("tax_code not in", values, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeBetween(String value1, String value2) {
            addCriterion("tax_code between", value1, value2, "taxCode");
            return (Criteria) this;
        }

        public Criteria andTaxCodeNotBetween(String value1, String value2) {
            addCriterion("tax_code not between", value1, value2, "taxCode");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andSaleIdIsNull() {
            addCriterion("sale_id is null");
            return (Criteria) this;
        }

        public Criteria andSaleIdIsNotNull() {
            addCriterion("sale_id is not null");
            return (Criteria) this;
        }

        public Criteria andSaleIdEqualTo(String value) {
            addCriterion("sale_id =", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdNotEqualTo(String value) {
            addCriterion("sale_id <>", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdGreaterThan(String value) {
            addCriterion("sale_id >", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdGreaterThanOrEqualTo(String value) {
            addCriterion("sale_id >=", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdLessThan(String value) {
            addCriterion("sale_id <", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdLessThanOrEqualTo(String value) {
            addCriterion("sale_id <=", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdLike(String value) {
            addCriterion("sale_id like", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdNotLike(String value) {
            addCriterion("sale_id not like", value, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdIn(List<String> values) {
            addCriterion("sale_id in", values, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdNotIn(List<String> values) {
            addCriterion("sale_id not in", values, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdBetween(String value1, String value2) {
            addCriterion("sale_id between", value1, value2, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleIdNotBetween(String value1, String value2) {
            addCriterion("sale_id not between", value1, value2, "saleId");
            return (Criteria) this;
        }

        public Criteria andSaleNameIsNull() {
            addCriterion("sale_name is null");
            return (Criteria) this;
        }

        public Criteria andSaleNameIsNotNull() {
            addCriterion("sale_name is not null");
            return (Criteria) this;
        }

        public Criteria andSaleNameEqualTo(String value) {
            addCriterion("sale_name =", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameNotEqualTo(String value) {
            addCriterion("sale_name <>", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameGreaterThan(String value) {
            addCriterion("sale_name >", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameGreaterThanOrEqualTo(String value) {
            addCriterion("sale_name >=", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameLessThan(String value) {
            addCriterion("sale_name <", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameLessThanOrEqualTo(String value) {
            addCriterion("sale_name <=", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameLike(String value) {
            addCriterion("sale_name like", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameNotLike(String value) {
            addCriterion("sale_name not like", value, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameIn(List<String> values) {
            addCriterion("sale_name in", values, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameNotIn(List<String> values) {
            addCriterion("sale_name not in", values, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameBetween(String value1, String value2) {
            addCriterion("sale_name between", value1, value2, "saleName");
            return (Criteria) this;
        }

        public Criteria andSaleNameNotBetween(String value1, String value2) {
            addCriterion("sale_name not between", value1, value2, "saleName");
            return (Criteria) this;
        }

        public Criteria andContactsEmailIsNull() {
            addCriterion("contacts_email is null");
            return (Criteria) this;
        }

        public Criteria andContactsEmailIsNotNull() {
            addCriterion("contacts_email is not null");
            return (Criteria) this;
        }

        public Criteria andContactsEmailEqualTo(String value) {
            addCriterion("contacts_email =", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailNotEqualTo(String value) {
            addCriterion("contacts_email <>", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailGreaterThan(String value) {
            addCriterion("contacts_email >", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailGreaterThanOrEqualTo(String value) {
            addCriterion("contacts_email >=", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailLessThan(String value) {
            addCriterion("contacts_email <", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailLessThanOrEqualTo(String value) {
            addCriterion("contacts_email <=", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailLike(String value) {
            addCriterion("contacts_email like", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailNotLike(String value) {
            addCriterion("contacts_email not like", value, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailIn(List<String> values) {
            addCriterion("contacts_email in", values, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailNotIn(List<String> values) {
            addCriterion("contacts_email not in", values, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailBetween(String value1, String value2) {
            addCriterion("contacts_email between", value1, value2, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsEmailNotBetween(String value1, String value2) {
            addCriterion("contacts_email not between", value1, value2, "contactsEmail");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressIsNull() {
            addCriterion("contacts_full_address is null");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressIsNotNull() {
            addCriterion("contacts_full_address is not null");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressEqualTo(String value) {
            addCriterion("contacts_full_address =", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressNotEqualTo(String value) {
            addCriterion("contacts_full_address <>", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressGreaterThan(String value) {
            addCriterion("contacts_full_address >", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressGreaterThanOrEqualTo(String value) {
            addCriterion("contacts_full_address >=", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressLessThan(String value) {
            addCriterion("contacts_full_address <", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressLessThanOrEqualTo(String value) {
            addCriterion("contacts_full_address <=", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressLike(String value) {
            addCriterion("contacts_full_address like", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressNotLike(String value) {
            addCriterion("contacts_full_address not like", value, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressIn(List<String> values) {
            addCriterion("contacts_full_address in", values, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressNotIn(List<String> values) {
            addCriterion("contacts_full_address not in", values, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressBetween(String value1, String value2) {
            addCriterion("contacts_full_address between", value1, value2, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsFullAddressNotBetween(String value1, String value2) {
            addCriterion("contacts_full_address not between", value1, value2, "contactsFullAddress");
            return (Criteria) this;
        }

        public Criteria andContactsNameIsNull() {
            addCriterion("contacts_name is null");
            return (Criteria) this;
        }

        public Criteria andContactsNameIsNotNull() {
            addCriterion("contacts_name is not null");
            return (Criteria) this;
        }

        public Criteria andContactsNameEqualTo(String value) {
            addCriterion("contacts_name =", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameNotEqualTo(String value) {
            addCriterion("contacts_name <>", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameGreaterThan(String value) {
            addCriterion("contacts_name >", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameGreaterThanOrEqualTo(String value) {
            addCriterion("contacts_name >=", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameLessThan(String value) {
            addCriterion("contacts_name <", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameLessThanOrEqualTo(String value) {
            addCriterion("contacts_name <=", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameLike(String value) {
            addCriterion("contacts_name like", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameNotLike(String value) {
            addCriterion("contacts_name not like", value, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameIn(List<String> values) {
            addCriterion("contacts_name in", values, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameNotIn(List<String> values) {
            addCriterion("contacts_name not in", values, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameBetween(String value1, String value2) {
            addCriterion("contacts_name between", value1, value2, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsNameNotBetween(String value1, String value2) {
            addCriterion("contacts_name not between", value1, value2, "contactsName");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneIsNull() {
            addCriterion("contacts_phone is null");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneIsNotNull() {
            addCriterion("contacts_phone is not null");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneEqualTo(String value) {
            addCriterion("contacts_phone =", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneNotEqualTo(String value) {
            addCriterion("contacts_phone <>", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneGreaterThan(String value) {
            addCriterion("contacts_phone >", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("contacts_phone >=", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneLessThan(String value) {
            addCriterion("contacts_phone <", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneLessThanOrEqualTo(String value) {
            addCriterion("contacts_phone <=", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneLike(String value) {
            addCriterion("contacts_phone like", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneNotLike(String value) {
            addCriterion("contacts_phone not like", value, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneIn(List<String> values) {
            addCriterion("contacts_phone in", values, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneNotIn(List<String> values) {
            addCriterion("contacts_phone not in", values, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneBetween(String value1, String value2) {
            addCriterion("contacts_phone between", value1, value2, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andContactsPhoneNotBetween(String value1, String value2) {
            addCriterion("contacts_phone not between", value1, value2, "contactsPhone");
            return (Criteria) this;
        }

        public Criteria andSellerAddressIsNull() {
            addCriterion("seller_address is null");
            return (Criteria) this;
        }

        public Criteria andSellerAddressIsNotNull() {
            addCriterion("seller_address is not null");
            return (Criteria) this;
        }

        public Criteria andSellerAddressEqualTo(String value) {
            addCriterion("seller_address =", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressNotEqualTo(String value) {
            addCriterion("seller_address <>", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressGreaterThan(String value) {
            addCriterion("seller_address >", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressGreaterThanOrEqualTo(String value) {
            addCriterion("seller_address >=", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressLessThan(String value) {
            addCriterion("seller_address <", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressLessThanOrEqualTo(String value) {
            addCriterion("seller_address <=", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressLike(String value) {
            addCriterion("seller_address like", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressNotLike(String value) {
            addCriterion("seller_address not like", value, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressIn(List<String> values) {
            addCriterion("seller_address in", values, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressNotIn(List<String> values) {
            addCriterion("seller_address not in", values, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressBetween(String value1, String value2) {
            addCriterion("seller_address between", value1, value2, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerAddressNotBetween(String value1, String value2) {
            addCriterion("seller_address not between", value1, value2, "sellerAddress");
            return (Criteria) this;
        }

        public Criteria andSellerEmailIsNull() {
            addCriterion("seller_email is null");
            return (Criteria) this;
        }

        public Criteria andSellerEmailIsNotNull() {
            addCriterion("seller_email is not null");
            return (Criteria) this;
        }

        public Criteria andSellerEmailEqualTo(String value) {
            addCriterion("seller_email =", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailNotEqualTo(String value) {
            addCriterion("seller_email <>", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailGreaterThan(String value) {
            addCriterion("seller_email >", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailGreaterThanOrEqualTo(String value) {
            addCriterion("seller_email >=", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailLessThan(String value) {
            addCriterion("seller_email <", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailLessThanOrEqualTo(String value) {
            addCriterion("seller_email <=", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailLike(String value) {
            addCriterion("seller_email like", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailNotLike(String value) {
            addCriterion("seller_email not like", value, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailIn(List<String> values) {
            addCriterion("seller_email in", values, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailNotIn(List<String> values) {
            addCriterion("seller_email not in", values, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailBetween(String value1, String value2) {
            addCriterion("seller_email between", value1, value2, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerEmailNotBetween(String value1, String value2) {
            addCriterion("seller_email not between", value1, value2, "sellerEmail");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneIsNull() {
            addCriterion("seller_phone is null");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneIsNotNull() {
            addCriterion("seller_phone is not null");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneEqualTo(String value) {
            addCriterion("seller_phone =", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneNotEqualTo(String value) {
            addCriterion("seller_phone <>", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneGreaterThan(String value) {
            addCriterion("seller_phone >", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("seller_phone >=", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneLessThan(String value) {
            addCriterion("seller_phone <", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneLessThanOrEqualTo(String value) {
            addCriterion("seller_phone <=", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneLike(String value) {
            addCriterion("seller_phone like", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneNotLike(String value) {
            addCriterion("seller_phone not like", value, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneIn(List<String> values) {
            addCriterion("seller_phone in", values, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneNotIn(List<String> values) {
            addCriterion("seller_phone not in", values, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneBetween(String value1, String value2) {
            addCriterion("seller_phone between", value1, value2, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerPhoneNotBetween(String value1, String value2) {
            addCriterion("seller_phone not between", value1, value2, "sellerPhone");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdIsNull() {
            addCriterion("seller_user_id is null");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdIsNotNull() {
            addCriterion("seller_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdEqualTo(String value) {
            addCriterion("seller_user_id =", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdNotEqualTo(String value) {
            addCriterion("seller_user_id <>", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdGreaterThan(String value) {
            addCriterion("seller_user_id >", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("seller_user_id >=", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdLessThan(String value) {
            addCriterion("seller_user_id <", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdLessThanOrEqualTo(String value) {
            addCriterion("seller_user_id <=", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdLike(String value) {
            addCriterion("seller_user_id like", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdNotLike(String value) {
            addCriterion("seller_user_id not like", value, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdIn(List<String> values) {
            addCriterion("seller_user_id in", values, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdNotIn(List<String> values) {
            addCriterion("seller_user_id not in", values, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdBetween(String value1, String value2) {
            addCriterion("seller_user_id between", value1, value2, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserIdNotBetween(String value1, String value2) {
            addCriterion("seller_user_id not between", value1, value2, "sellerUserId");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameIsNull() {
            addCriterion("seller_user_name is null");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameIsNotNull() {
            addCriterion("seller_user_name is not null");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameEqualTo(String value) {
            addCriterion("seller_user_name =", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameNotEqualTo(String value) {
            addCriterion("seller_user_name <>", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameGreaterThan(String value) {
            addCriterion("seller_user_name >", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameGreaterThanOrEqualTo(String value) {
            addCriterion("seller_user_name >=", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameLessThan(String value) {
            addCriterion("seller_user_name <", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameLessThanOrEqualTo(String value) {
            addCriterion("seller_user_name <=", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameLike(String value) {
            addCriterion("seller_user_name like", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameNotLike(String value) {
            addCriterion("seller_user_name not like", value, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameIn(List<String> values) {
            addCriterion("seller_user_name in", values, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameNotIn(List<String> values) {
            addCriterion("seller_user_name not in", values, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameBetween(String value1, String value2) {
            addCriterion("seller_user_name between", value1, value2, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andSellerUserNameNotBetween(String value1, String value2) {
            addCriterion("seller_user_name not between", value1, value2, "sellerUserName");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailIsNull() {
            addCriterion("is_send_email is null");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailIsNotNull() {
            addCriterion("is_send_email is not null");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailEqualTo(Integer value) {
            addCriterion("is_send_email =", value, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailNotEqualTo(Integer value) {
            addCriterion("is_send_email <>", value, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailGreaterThan(Integer value) {
            addCriterion("is_send_email >", value, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_send_email >=", value, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailLessThan(Integer value) {
            addCriterion("is_send_email <", value, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailLessThanOrEqualTo(Integer value) {
            addCriterion("is_send_email <=", value, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailIn(List<Integer> values) {
            addCriterion("is_send_email in", values, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailNotIn(List<Integer> values) {
            addCriterion("is_send_email not in", values, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailBetween(Integer value1, Integer value2) {
            addCriterion("is_send_email between", value1, value2, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andIsSendEmailNotBetween(Integer value1, Integer value2) {
            addCriterion("is_send_email not between", value1, value2, "isSendEmail");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeIsNull() {
            addCriterion("send_email_time is null");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeIsNotNull() {
            addCriterion("send_email_time is not null");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeEqualTo(Date value) {
            addCriterion("send_email_time =", value, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeNotEqualTo(Date value) {
            addCriterion("send_email_time <>", value, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeGreaterThan(Date value) {
            addCriterion("send_email_time >", value, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("send_email_time >=", value, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeLessThan(Date value) {
            addCriterion("send_email_time <", value, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeLessThanOrEqualTo(Date value) {
            addCriterion("send_email_time <=", value, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeIn(List<Date> values) {
            addCriterion("send_email_time in", values, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeNotIn(List<Date> values) {
            addCriterion("send_email_time not in", values, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeBetween(Date value1, Date value2) {
            addCriterion("send_email_time between", value1, value2, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andSendEmailTimeNotBetween(Date value1, Date value2) {
            addCriterion("send_email_time not between", value1, value2, "sendEmailTime");
            return (Criteria) this;
        }

        public Criteria andDateTypeIsNull() {
            addCriterion("date_type is null");
            return (Criteria) this;
        }

        public Criteria andDateTypeIsNotNull() {
            addCriterion("date_type is not null");
            return (Criteria) this;
        }

        public Criteria andDateTypeEqualTo(Integer value) {
            addCriterion("date_type =", value, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeNotEqualTo(Integer value) {
            addCriterion("date_type <>", value, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeGreaterThan(Integer value) {
            addCriterion("date_type >", value, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("date_type >=", value, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeLessThan(Integer value) {
            addCriterion("date_type <", value, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeLessThanOrEqualTo(Integer value) {
            addCriterion("date_type <=", value, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeIn(List<Integer> values) {
            addCriterion("date_type in", values, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeNotIn(List<Integer> values) {
            addCriterion("date_type not in", values, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeBetween(Integer value1, Integer value2) {
            addCriterion("date_type between", value1, value2, "dateType");
            return (Criteria) this;
        }

        public Criteria andDateTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("date_type not between", value1, value2, "dateType");
            return (Criteria) this;
        }

        public Criteria andStartTimeIsNull() {
            addCriterion("start_time is null");
            return (Criteria) this;
        }

        public Criteria andStartTimeIsNotNull() {
            addCriterion("start_time is not null");
            return (Criteria) this;
        }

        public Criteria andStartTimeEqualTo(Date value) {
            addCriterion("start_time =", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotEqualTo(Date value) {
            addCriterion("start_time <>", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeGreaterThan(Date value) {
            addCriterion("start_time >", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("start_time >=", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeLessThan(Date value) {
            addCriterion("start_time <", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeLessThanOrEqualTo(Date value) {
            addCriterion("start_time <=", value, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeIn(List<Date> values) {
            addCriterion("start_time in", values, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotIn(List<Date> values) {
            addCriterion("start_time not in", values, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeBetween(Date value1, Date value2) {
            addCriterion("start_time between", value1, value2, "startTime");
            return (Criteria) this;
        }

        public Criteria andStartTimeNotBetween(Date value1, Date value2) {
            addCriterion("start_time not between", value1, value2, "startTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeIsNull() {
            addCriterion("end_time is null");
            return (Criteria) this;
        }

        public Criteria andEndTimeIsNotNull() {
            addCriterion("end_time is not null");
            return (Criteria) this;
        }

        public Criteria andEndTimeEqualTo(Date value) {
            addCriterion("end_time =", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotEqualTo(Date value) {
            addCriterion("end_time <>", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeGreaterThan(Date value) {
            addCriterion("end_time >", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("end_time >=", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeLessThan(Date value) {
            addCriterion("end_time <", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeLessThanOrEqualTo(Date value) {
            addCriterion("end_time <=", value, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeIn(List<Date> values) {
            addCriterion("end_time in", values, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotIn(List<Date> values) {
            addCriterion("end_time not in", values, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeBetween(Date value1, Date value2) {
            addCriterion("end_time between", value1, value2, "endTime");
            return (Criteria) this;
        }

        public Criteria andEndTimeNotBetween(Date value1, Date value2) {
            addCriterion("end_time not between", value1, value2, "endTime");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusIsNull() {
            addCriterion("back_account_status is null");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusIsNotNull() {
            addCriterion("back_account_status is not null");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusEqualTo(Integer value) {
            addCriterion("back_account_status =", value, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusNotEqualTo(Integer value) {
            addCriterion("back_account_status <>", value, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusGreaterThan(Integer value) {
            addCriterion("back_account_status >", value, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("back_account_status >=", value, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusLessThan(Integer value) {
            addCriterion("back_account_status <", value, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusLessThanOrEqualTo(Integer value) {
            addCriterion("back_account_status <=", value, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusIn(List<Integer> values) {
            addCriterion("back_account_status in", values, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusNotIn(List<Integer> values) {
            addCriterion("back_account_status not in", values, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusBetween(Integer value1, Integer value2) {
            addCriterion("back_account_status between", value1, value2, "backAccountStatus");
            return (Criteria) this;
        }

        public Criteria andBackAccountStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("back_account_status not between", value1, value2, "backAccountStatus");
            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 andCreateUserIdIsNull() {
            addCriterion("create_user_id is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNotNull() {
            addCriterion("create_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdEqualTo(String value) {
            addCriterion("create_user_id =", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotEqualTo(String value) {
            addCriterion("create_user_id <>", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThan(String value) {
            addCriterion("create_user_id >", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("create_user_id >=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThan(String value) {
            addCriterion("create_user_id <", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThanOrEqualTo(String value) {
            addCriterion("create_user_id <=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLike(String value) {
            addCriterion("create_user_id like", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotLike(String value) {
            addCriterion("create_user_id not like", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIn(List<String> values) {
            addCriterion("create_user_id in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotIn(List<String> values) {
            addCriterion("create_user_id not in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdBetween(String value1, String value2) {
            addCriterion("create_user_id between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotBetween(String value1, String value2) {
            addCriterion("create_user_id not between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameIsNull() {
            addCriterion("create_user_name is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameIsNotNull() {
            addCriterion("create_user_name is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameEqualTo(String value) {
            addCriterion("create_user_name =", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameNotEqualTo(String value) {
            addCriterion("create_user_name <>", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameGreaterThan(String value) {
            addCriterion("create_user_name >", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameGreaterThanOrEqualTo(String value) {
            addCriterion("create_user_name >=", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameLessThan(String value) {
            addCriterion("create_user_name <", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameLessThanOrEqualTo(String value) {
            addCriterion("create_user_name <=", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameLike(String value) {
            addCriterion("create_user_name like", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameNotLike(String value) {
            addCriterion("create_user_name not like", value, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameIn(List<String> values) {
            addCriterion("create_user_name in", values, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameNotIn(List<String> values) {
            addCriterion("create_user_name not in", values, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameBetween(String value1, String value2) {
            addCriterion("create_user_name between", value1, value2, "createUserName");
            return (Criteria) this;
        }

        public Criteria andCreateUserNameNotBetween(String value1, String value2) {
            addCriterion("create_user_name not between", value1, value2, "createUserName");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andUpdateUserIdIsNull() {
            addCriterion("update_user_id is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNotNull() {
            addCriterion("update_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdEqualTo(String value) {
            addCriterion("update_user_id =", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotEqualTo(String value) {
            addCriterion("update_user_id <>", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThan(String value) {
            addCriterion("update_user_id >", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("update_user_id >=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThan(String value) {
            addCriterion("update_user_id <", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThanOrEqualTo(String value) {
            addCriterion("update_user_id <=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLike(String value) {
            addCriterion("update_user_id like", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotLike(String value) {
            addCriterion("update_user_id not like", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIn(List<String> values) {
            addCriterion("update_user_id in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotIn(List<String> values) {
            addCriterion("update_user_id not in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdBetween(String value1, String value2) {
            addCriterion("update_user_id between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotBetween(String value1, String value2) {
            addCriterion("update_user_id not between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameIsNull() {
            addCriterion("update_user_name is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameIsNotNull() {
            addCriterion("update_user_name is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameEqualTo(String value) {
            addCriterion("update_user_name =", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameNotEqualTo(String value) {
            addCriterion("update_user_name <>", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameGreaterThan(String value) {
            addCriterion("update_user_name >", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameGreaterThanOrEqualTo(String value) {
            addCriterion("update_user_name >=", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameLessThan(String value) {
            addCriterion("update_user_name <", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameLessThanOrEqualTo(String value) {
            addCriterion("update_user_name <=", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameLike(String value) {
            addCriterion("update_user_name like", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameNotLike(String value) {
            addCriterion("update_user_name not like", value, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameIn(List<String> values) {
            addCriterion("update_user_name in", values, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameNotIn(List<String> values) {
            addCriterion("update_user_name not in", values, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameBetween(String value1, String value2) {
            addCriterion("update_user_name between", value1, value2, "updateUserName");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNameNotBetween(String value1, String value2) {
            addCriterion("update_user_name not between", value1, value2, "updateUserName");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andInvoiceApplyStatusIsNull() {
            addCriterion("invoice_apply_status is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusIsNotNull() {
            addCriterion("invoice_apply_status is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusEqualTo(Integer value) {
            addCriterion("invoice_apply_status =", value, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusNotEqualTo(Integer value) {
            addCriterion("invoice_apply_status <>", value, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusGreaterThan(Integer value) {
            addCriterion("invoice_apply_status >", value, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_apply_status >=", value, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusLessThan(Integer value) {
            addCriterion("invoice_apply_status <", value, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_apply_status <=", value, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusIn(List<Integer> values) {
            addCriterion("invoice_apply_status in", values, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusNotIn(List<Integer> values) {
            addCriterion("invoice_apply_status not in", values, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusBetween(Integer value1, Integer value2) {
            addCriterion("invoice_apply_status between", value1, value2, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_apply_status not between", value1, value2, "invoiceApplyStatus");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdIsNull() {
            addCriterion("invoice_apply_user_id is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdIsNotNull() {
            addCriterion("invoice_apply_user_id is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdEqualTo(String value) {
            addCriterion("invoice_apply_user_id =", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdNotEqualTo(String value) {
            addCriterion("invoice_apply_user_id <>", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdGreaterThan(String value) {
            addCriterion("invoice_apply_user_id >", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_apply_user_id >=", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdLessThan(String value) {
            addCriterion("invoice_apply_user_id <", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdLessThanOrEqualTo(String value) {
            addCriterion("invoice_apply_user_id <=", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdLike(String value) {
            addCriterion("invoice_apply_user_id like", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdNotLike(String value) {
            addCriterion("invoice_apply_user_id not like", value, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdIn(List<String> values) {
            addCriterion("invoice_apply_user_id in", values, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdNotIn(List<String> values) {
            addCriterion("invoice_apply_user_id not in", values, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdBetween(String value1, String value2) {
            addCriterion("invoice_apply_user_id between", value1, value2, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyUserIdNotBetween(String value1, String value2) {
            addCriterion("invoice_apply_user_id not between", value1, value2, "invoiceApplyUserId");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeIsNull() {
            addCriterion("invoice_apply_time is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeIsNotNull() {
            addCriterion("invoice_apply_time is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeEqualTo(Date value) {
            addCriterion("invoice_apply_time =", value, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeNotEqualTo(Date value) {
            addCriterion("invoice_apply_time <>", value, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeGreaterThan(Date value) {
            addCriterion("invoice_apply_time >", value, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("invoice_apply_time >=", value, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeLessThan(Date value) {
            addCriterion("invoice_apply_time <", value, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeLessThanOrEqualTo(Date value) {
            addCriterion("invoice_apply_time <=", value, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeIn(List<Date> values) {
            addCriterion("invoice_apply_time in", values, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeNotIn(List<Date> values) {
            addCriterion("invoice_apply_time not in", values, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeBetween(Date value1, Date value2) {
            addCriterion("invoice_apply_time between", value1, value2, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyTimeNotBetween(Date value1, Date value2) {
            addCriterion("invoice_apply_time not between", value1, value2, "invoiceApplyTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordIsNull() {
            addCriterion("invoice_apply_mode_record is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordIsNotNull() {
            addCriterion("invoice_apply_mode_record is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordEqualTo(Integer value) {
            addCriterion("invoice_apply_mode_record =", value, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordNotEqualTo(Integer value) {
            addCriterion("invoice_apply_mode_record <>", value, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordGreaterThan(Integer value) {
            addCriterion("invoice_apply_mode_record >", value, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_apply_mode_record >=", value, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordLessThan(Integer value) {
            addCriterion("invoice_apply_mode_record <", value, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_apply_mode_record <=", value, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordIn(List<Integer> values) {
            addCriterion("invoice_apply_mode_record in", values, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordNotIn(List<Integer> values) {
            addCriterion("invoice_apply_mode_record not in", values, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordBetween(Integer value1, Integer value2) {
            addCriterion("invoice_apply_mode_record between", value1, value2, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andInvoiceApplyModeRecordNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_apply_mode_record not between", value1, value2, "invoiceApplyModeRecord");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountIsNull() {
            addCriterion("accounting_order_amount is null");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountIsNotNull() {
            addCriterion("accounting_order_amount is not null");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount =", value, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountNotEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount <>", value, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountGreaterThan(BigDecimal value) {
            addCriterion("accounting_order_amount >", value, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount >=", value, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountLessThan(BigDecimal value) {
            addCriterion("accounting_order_amount <", value, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount <=", value, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountIn(List<BigDecimal> values) {
            addCriterion("accounting_order_amount in", values, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountNotIn(List<BigDecimal> values) {
            addCriterion("accounting_order_amount not in", values, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("accounting_order_amount between", value1, value2, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("accounting_order_amount not between", value1, value2, "accountingOrderAmount");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightIsNull() {
            addCriterion("accounting_order_amount_with_freight is null");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightIsNotNull() {
            addCriterion("accounting_order_amount_with_freight is not null");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount_with_freight =", value, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightNotEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount_with_freight <>", value, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightGreaterThan(BigDecimal value) {
            addCriterion("accounting_order_amount_with_freight >", value, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount_with_freight >=", value, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightLessThan(BigDecimal value) {
            addCriterion("accounting_order_amount_with_freight <", value, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightLessThanOrEqualTo(BigDecimal value) {
            addCriterion("accounting_order_amount_with_freight <=", value, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightIn(List<BigDecimal> values) {
            addCriterion("accounting_order_amount_with_freight in", values, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightNotIn(List<BigDecimal> values) {
            addCriterion("accounting_order_amount_with_freight not in", values, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("accounting_order_amount_with_freight between", value1, value2, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andAccountingOrderAmountWithFreightNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("accounting_order_amount_with_freight not between", value1, value2, "accountingOrderAmountWithFreight");
            return (Criteria) this;
        }

        public Criteria andRebateAmountIsNull() {
            addCriterion("rebate_amount is null");
            return (Criteria) this;
        }

        public Criteria andRebateAmountIsNotNull() {
            addCriterion("rebate_amount is not null");
            return (Criteria) this;
        }

        public Criteria andRebateAmountEqualTo(BigDecimal value) {
            addCriterion("rebate_amount =", value, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountNotEqualTo(BigDecimal value) {
            addCriterion("rebate_amount <>", value, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountGreaterThan(BigDecimal value) {
            addCriterion("rebate_amount >", value, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("rebate_amount >=", value, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountLessThan(BigDecimal value) {
            addCriterion("rebate_amount <", value, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("rebate_amount <=", value, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountIn(List<BigDecimal> values) {
            addCriterion("rebate_amount in", values, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountNotIn(List<BigDecimal> values) {
            addCriterion("rebate_amount not in", values, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("rebate_amount between", value1, value2, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andRebateAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("rebate_amount not between", value1, value2, "rebateAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountIsNull() {
            addCriterion("statistics_total_amount is null");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountIsNotNull() {
            addCriterion("statistics_total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountEqualTo(BigDecimal value) {
            addCriterion("statistics_total_amount =", value, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountNotEqualTo(BigDecimal value) {
            addCriterion("statistics_total_amount <>", value, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountGreaterThan(BigDecimal value) {
            addCriterion("statistics_total_amount >", value, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("statistics_total_amount >=", value, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountLessThan(BigDecimal value) {
            addCriterion("statistics_total_amount <", value, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("statistics_total_amount <=", value, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountIn(List<BigDecimal> values) {
            addCriterion("statistics_total_amount in", values, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountNotIn(List<BigDecimal> values) {
            addCriterion("statistics_total_amount not in", values, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("statistics_total_amount between", value1, value2, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andStatisticsTotalAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("statistics_total_amount not between", value1, value2, "statisticsTotalAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountIsNull() {
            addCriterion("jc_un_accounting_amount is null");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountIsNotNull() {
            addCriterion("jc_un_accounting_amount is not null");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountEqualTo(BigDecimal value) {
            addCriterion("jc_un_accounting_amount =", value, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountNotEqualTo(BigDecimal value) {
            addCriterion("jc_un_accounting_amount <>", value, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountGreaterThan(BigDecimal value) {
            addCriterion("jc_un_accounting_amount >", value, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("jc_un_accounting_amount >=", value, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountLessThan(BigDecimal value) {
            addCriterion("jc_un_accounting_amount <", value, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("jc_un_accounting_amount <=", value, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountIn(List<BigDecimal> values) {
            addCriterion("jc_un_accounting_amount in", values, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountNotIn(List<BigDecimal> values) {
            addCriterion("jc_un_accounting_amount not in", values, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("jc_un_accounting_amount between", value1, value2, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andJcUnAccountingAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("jc_un_accounting_amount not between", value1, value2, "jcUnAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountIsNull() {
            addCriterion("un_accounting_amount is null");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountIsNotNull() {
            addCriterion("un_accounting_amount is not null");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountEqualTo(BigDecimal value) {
            addCriterion("un_accounting_amount =", value, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountNotEqualTo(BigDecimal value) {
            addCriterion("un_accounting_amount <>", value, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountGreaterThan(BigDecimal value) {
            addCriterion("un_accounting_amount >", value, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("un_accounting_amount >=", value, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountLessThan(BigDecimal value) {
            addCriterion("un_accounting_amount <", value, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("un_accounting_amount <=", value, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountIn(List<BigDecimal> values) {
            addCriterion("un_accounting_amount in", values, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountNotIn(List<BigDecimal> values) {
            addCriterion("un_accounting_amount not in", values, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("un_accounting_amount between", value1, value2, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andUnAccountingAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("un_accounting_amount not between", value1, value2, "unAccountingAmount");
            return (Criteria) this;
        }

        public Criteria andSyncTimeIsNull() {
            addCriterion("sync_time is null");
            return (Criteria) this;
        }

        public Criteria andSyncTimeIsNotNull() {
            addCriterion("sync_time is not null");
            return (Criteria) this;
        }

        public Criteria andSyncTimeEqualTo(Date value) {
            addCriterion("sync_time =", value, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeNotEqualTo(Date value) {
            addCriterion("sync_time <>", value, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeGreaterThan(Date value) {
            addCriterion("sync_time >", value, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("sync_time >=", value, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeLessThan(Date value) {
            addCriterion("sync_time <", value, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeLessThanOrEqualTo(Date value) {
            addCriterion("sync_time <=", value, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeIn(List<Date> values) {
            addCriterion("sync_time in", values, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeNotIn(List<Date> values) {
            addCriterion("sync_time not in", values, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeBetween(Date value1, Date value2) {
            addCriterion("sync_time between", value1, value2, "syncTime");
            return (Criteria) this;
        }

        public Criteria andSyncTimeNotBetween(Date value1, Date value2) {
            addCriterion("sync_time not between", value1, value2, "syncTime");
            return (Criteria) this;
        }

        public Criteria andStorageStatusIsNull() {
            addCriterion("storage_status is null");
            return (Criteria) this;
        }

        public Criteria andStorageStatusIsNotNull() {
            addCriterion("storage_status is not null");
            return (Criteria) this;
        }

        public Criteria andStorageStatusEqualTo(Integer value) {
            addCriterion("storage_status =", value, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusNotEqualTo(Integer value) {
            addCriterion("storage_status <>", value, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusGreaterThan(Integer value) {
            addCriterion("storage_status >", value, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("storage_status >=", value, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusLessThan(Integer value) {
            addCriterion("storage_status <", value, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusLessThanOrEqualTo(Integer value) {
            addCriterion("storage_status <=", value, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusIn(List<Integer> values) {
            addCriterion("storage_status in", values, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusNotIn(List<Integer> values) {
            addCriterion("storage_status not in", values, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusBetween(Integer value1, Integer value2) {
            addCriterion("storage_status between", value1, value2, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("storage_status not between", value1, value2, "storageStatus");
            return (Criteria) this;
        }

        public Criteria andStorageReasonIsNull() {
            addCriterion("storage_reason is null");
            return (Criteria) this;
        }

        public Criteria andStorageReasonIsNotNull() {
            addCriterion("storage_reason is not null");
            return (Criteria) this;
        }

        public Criteria andStorageReasonEqualTo(String value) {
            addCriterion("storage_reason =", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonNotEqualTo(String value) {
            addCriterion("storage_reason <>", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonGreaterThan(String value) {
            addCriterion("storage_reason >", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonGreaterThanOrEqualTo(String value) {
            addCriterion("storage_reason >=", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonLessThan(String value) {
            addCriterion("storage_reason <", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonLessThanOrEqualTo(String value) {
            addCriterion("storage_reason <=", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonLike(String value) {
            addCriterion("storage_reason like", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonNotLike(String value) {
            addCriterion("storage_reason not like", value, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonIn(List<String> values) {
            addCriterion("storage_reason in", values, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonNotIn(List<String> values) {
            addCriterion("storage_reason not in", values, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonBetween(String value1, String value2) {
            addCriterion("storage_reason between", value1, value2, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageReasonNotBetween(String value1, String value2) {
            addCriterion("storage_reason not between", value1, value2, "storageReason");
            return (Criteria) this;
        }

        public Criteria andStorageTimeIsNull() {
            addCriterion("storage_time is null");
            return (Criteria) this;
        }

        public Criteria andStorageTimeIsNotNull() {
            addCriterion("storage_time is not null");
            return (Criteria) this;
        }

        public Criteria andStorageTimeEqualTo(Date value) {
            addCriterion("storage_time =", value, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeNotEqualTo(Date value) {
            addCriterion("storage_time <>", value, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeGreaterThan(Date value) {
            addCriterion("storage_time >", value, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("storage_time >=", value, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeLessThan(Date value) {
            addCriterion("storage_time <", value, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeLessThanOrEqualTo(Date value) {
            addCriterion("storage_time <=", value, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeIn(List<Date> values) {
            addCriterion("storage_time in", values, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeNotIn(List<Date> values) {
            addCriterion("storage_time not in", values, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeBetween(Date value1, Date value2) {
            addCriterion("storage_time between", value1, value2, "storageTime");
            return (Criteria) this;
        }

        public Criteria andStorageTimeNotBetween(Date value1, Date value2) {
            addCriterion("storage_time not between", value1, value2, "storageTime");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountIsNull() {
            addCriterion("invoice_count is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountIsNotNull() {
            addCriterion("invoice_count is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountEqualTo(Integer value) {
            addCriterion("invoice_count =", value, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountNotEqualTo(Integer value) {
            addCriterion("invoice_count <>", value, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountGreaterThan(Integer value) {
            addCriterion("invoice_count >", value, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_count >=", value, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountLessThan(Integer value) {
            addCriterion("invoice_count <", value, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_count <=", value, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountIn(List<Integer> values) {
            addCriterion("invoice_count in", values, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountNotIn(List<Integer> values) {
            addCriterion("invoice_count not in", values, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountBetween(Integer value1, Integer value2) {
            addCriterion("invoice_count between", value1, value2, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_count not between", value1, value2, "invoiceCount");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusIsNull() {
            addCriterion("receive_invoice_status is null");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusIsNotNull() {
            addCriterion("receive_invoice_status is not null");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusEqualTo(Integer value) {
            addCriterion("receive_invoice_status =", value, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusNotEqualTo(Integer value) {
            addCriterion("receive_invoice_status <>", value, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusGreaterThan(Integer value) {
            addCriterion("receive_invoice_status >", value, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("receive_invoice_status >=", value, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusLessThan(Integer value) {
            addCriterion("receive_invoice_status <", value, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusLessThanOrEqualTo(Integer value) {
            addCriterion("receive_invoice_status <=", value, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusIn(List<Integer> values) {
            addCriterion("receive_invoice_status in", values, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusNotIn(List<Integer> values) {
            addCriterion("receive_invoice_status not in", values, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusBetween(Integer value1, Integer value2) {
            addCriterion("receive_invoice_status between", value1, value2, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andReceiveInvoiceStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("receive_invoice_status not between", value1, value2, "receiveInvoiceStatus");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountIsNull() {
            addCriterion("order_goods_count is null");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountIsNotNull() {
            addCriterion("order_goods_count is not null");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountEqualTo(Integer value) {
            addCriterion("order_goods_count =", value, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountNotEqualTo(Integer value) {
            addCriterion("order_goods_count <>", value, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountGreaterThan(Integer value) {
            addCriterion("order_goods_count >", value, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountGreaterThanOrEqualTo(Integer value) {
            addCriterion("order_goods_count >=", value, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountLessThan(Integer value) {
            addCriterion("order_goods_count <", value, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountLessThanOrEqualTo(Integer value) {
            addCriterion("order_goods_count <=", value, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountIn(List<Integer> values) {
            addCriterion("order_goods_count in", values, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountNotIn(List<Integer> values) {
            addCriterion("order_goods_count not in", values, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountBetween(Integer value1, Integer value2) {
            addCriterion("order_goods_count between", value1, value2, "orderGoodsCount");
            return (Criteria) this;
        }

        public Criteria andOrderGoodsCountNotBetween(Integer value1, Integer value2) {
            addCriterion("order_goods_count not between", value1, value2, "orderGoodsCount");
            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);
        }
    }
}