package cn.superdesk.uniorder.dao.entity.organisation;

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

public class SysSupplierExtInvoiceExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

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

    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;
    }

    /**
    sys_supplier_ext_invoice
     *
     * @mbg.generated Mon Nov 29 16:08:25 CST 2021
     */
    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

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

        public Criteria andServiceNoIsNotNull() {
            addCriterion("service_no is not null");
            return (Criteria) this;
        }

        public Criteria andServiceNoEqualTo(Integer value) {
            addCriterion("service_no =", value, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoNotEqualTo(Integer value) {
            addCriterion("service_no <>", value, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoGreaterThan(Integer value) {
            addCriterion("service_no >", value, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoGreaterThanOrEqualTo(Integer value) {
            addCriterion("service_no >=", value, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoLessThan(Integer value) {
            addCriterion("service_no <", value, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoLessThanOrEqualTo(Integer value) {
            addCriterion("service_no <=", value, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoIn(List<Integer> values) {
            addCriterion("service_no in", values, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoNotIn(List<Integer> values) {
            addCriterion("service_no not in", values, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoBetween(Integer value1, Integer value2) {
            addCriterion("service_no between", value1, value2, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andServiceNoNotBetween(Integer value1, Integer value2) {
            addCriterion("service_no not between", value1, value2, "serviceNo");
            return (Criteria) this;
        }

        public Criteria andSerialNumberIsNull() {
            addCriterion("serial_number is null");
            return (Criteria) this;
        }

        public Criteria andSerialNumberIsNotNull() {
            addCriterion("serial_number is not null");
            return (Criteria) this;
        }

        public Criteria andSerialNumberEqualTo(String value) {
            addCriterion("serial_number =", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotEqualTo(String value) {
            addCriterion("serial_number <>", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberGreaterThan(String value) {
            addCriterion("serial_number >", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberGreaterThanOrEqualTo(String value) {
            addCriterion("serial_number >=", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberLessThan(String value) {
            addCriterion("serial_number <", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberLessThanOrEqualTo(String value) {
            addCriterion("serial_number <=", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberLike(String value) {
            addCriterion("serial_number like", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotLike(String value) {
            addCriterion("serial_number not like", value, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberIn(List<String> values) {
            addCriterion("serial_number in", values, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotIn(List<String> values) {
            addCriterion("serial_number not in", values, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberBetween(String value1, String value2) {
            addCriterion("serial_number between", value1, value2, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSerialNumberNotBetween(String value1, String value2) {
            addCriterion("serial_number not between", value1, value2, "serialNumber");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdIsNull() {
            addCriterion("sys_supplier_id is null");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdIsNotNull() {
            addCriterion("sys_supplier_id is not null");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdEqualTo(Long value) {
            addCriterion("sys_supplier_id =", value, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdNotEqualTo(Long value) {
            addCriterion("sys_supplier_id <>", value, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdGreaterThan(Long value) {
            addCriterion("sys_supplier_id >", value, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdGreaterThanOrEqualTo(Long value) {
            addCriterion("sys_supplier_id >=", value, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdLessThan(Long value) {
            addCriterion("sys_supplier_id <", value, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdLessThanOrEqualTo(Long value) {
            addCriterion("sys_supplier_id <=", value, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdIn(List<Long> values) {
            addCriterion("sys_supplier_id in", values, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdNotIn(List<Long> values) {
            addCriterion("sys_supplier_id not in", values, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdBetween(Long value1, Long value2) {
            addCriterion("sys_supplier_id between", value1, value2, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andSysSupplierIdNotBetween(Long value1, Long value2) {
            addCriterion("sys_supplier_id not between", value1, value2, "sysSupplierId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdIsNull() {
            addCriterion("out_sale_id is null");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdIsNotNull() {
            addCriterion("out_sale_id is not null");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdEqualTo(Long value) {
            addCriterion("out_sale_id =", value, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdNotEqualTo(Long value) {
            addCriterion("out_sale_id <>", value, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdGreaterThan(Long value) {
            addCriterion("out_sale_id >", value, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdGreaterThanOrEqualTo(Long value) {
            addCriterion("out_sale_id >=", value, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdLessThan(Long value) {
            addCriterion("out_sale_id <", value, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdLessThanOrEqualTo(Long value) {
            addCriterion("out_sale_id <=", value, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdIn(List<Long> values) {
            addCriterion("out_sale_id in", values, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdNotIn(List<Long> values) {
            addCriterion("out_sale_id not in", values, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdBetween(Long value1, Long value2) {
            addCriterion("out_sale_id between", value1, value2, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andOutSaleIdNotBetween(Long value1, Long value2) {
            addCriterion("out_sale_id not between", value1, value2, "outSaleId");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateIsNull() {
            addCriterion("invoice_state is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateIsNotNull() {
            addCriterion("invoice_state is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateEqualTo(Integer value) {
            addCriterion("invoice_state =", value, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateNotEqualTo(Integer value) {
            addCriterion("invoice_state <>", value, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateGreaterThan(Integer value) {
            addCriterion("invoice_state >", value, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_state >=", value, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateLessThan(Integer value) {
            addCriterion("invoice_state <", value, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_state <=", value, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateIn(List<Integer> values) {
            addCriterion("invoice_state in", values, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateNotIn(List<Integer> values) {
            addCriterion("invoice_state not in", values, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateBetween(Integer value1, Integer value2) {
            addCriterion("invoice_state between", value1, value2, "invoiceState");
            return (Criteria) this;
        }

        public Criteria andInvoiceStateNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_state not between", value1, value2, "invoiceState");
            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 andSelectedInvoiceTitleIsNull() {
            addCriterion("selected_invoice_title is null");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleIsNotNull() {
            addCriterion("selected_invoice_title is not null");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleEqualTo(Integer value) {
            addCriterion("selected_invoice_title =", value, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleNotEqualTo(Integer value) {
            addCriterion("selected_invoice_title <>", value, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleGreaterThan(Integer value) {
            addCriterion("selected_invoice_title >", value, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleGreaterThanOrEqualTo(Integer value) {
            addCriterion("selected_invoice_title >=", value, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleLessThan(Integer value) {
            addCriterion("selected_invoice_title <", value, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleLessThanOrEqualTo(Integer value) {
            addCriterion("selected_invoice_title <=", value, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleIn(List<Integer> values) {
            addCriterion("selected_invoice_title in", values, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleNotIn(List<Integer> values) {
            addCriterion("selected_invoice_title not in", values, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleBetween(Integer value1, Integer value2) {
            addCriterion("selected_invoice_title between", value1, value2, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andSelectedInvoiceTitleNotBetween(Integer value1, Integer value2) {
            addCriterion("selected_invoice_title not between", value1, value2, "selectedInvoiceTitle");
            return (Criteria) this;
        }

        public Criteria andRealnameIsNull() {
            addCriterion("realname is null");
            return (Criteria) this;
        }

        public Criteria andRealnameIsNotNull() {
            addCriterion("realname is not null");
            return (Criteria) this;
        }

        public Criteria andRealnameEqualTo(String value) {
            addCriterion("realname =", value, "realname");
            return (Criteria) this;
        }

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

        public Criteria andRealnameGreaterThan(String value) {
            addCriterion("realname >", value, "realname");
            return (Criteria) this;
        }

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

        public Criteria andRealnameLessThan(String value) {
            addCriterion("realname <", value, "realname");
            return (Criteria) this;
        }

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

        public Criteria andRealnameLike(String value) {
            addCriterion("realname like", value, "realname");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andCompanyNameIsNull() {
            addCriterion("company_name is null");
            return (Criteria) this;
        }

        public Criteria andCompanyNameIsNotNull() {
            addCriterion("company_name is not null");
            return (Criteria) this;
        }

        public Criteria andCompanyNameEqualTo(String value) {
            addCriterion("company_name =", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotEqualTo(String value) {
            addCriterion("company_name <>", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameGreaterThan(String value) {
            addCriterion("company_name >", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameGreaterThanOrEqualTo(String value) {
            addCriterion("company_name >=", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameLessThan(String value) {
            addCriterion("company_name <", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameLessThanOrEqualTo(String value) {
            addCriterion("company_name <=", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameLike(String value) {
            addCriterion("company_name like", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotLike(String value) {
            addCriterion("company_name not like", value, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameIn(List<String> values) {
            addCriterion("company_name in", values, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotIn(List<String> values) {
            addCriterion("company_name not in", values, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameBetween(String value1, String value2) {
            addCriterion("company_name between", value1, value2, "companyName");
            return (Criteria) this;
        }

        public Criteria andCompanyNameNotBetween(String value1, String value2) {
            addCriterion("company_name not between", value1, value2, "companyName");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeIsNull() {
            addCriterion("taxpayers_i_d_code is null");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeIsNotNull() {
            addCriterion("taxpayers_i_d_code is not null");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeEqualTo(String value) {
            addCriterion("taxpayers_i_d_code =", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeNotEqualTo(String value) {
            addCriterion("taxpayers_i_d_code <>", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeGreaterThan(String value) {
            addCriterion("taxpayers_i_d_code >", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeGreaterThanOrEqualTo(String value) {
            addCriterion("taxpayers_i_d_code >=", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeLessThan(String value) {
            addCriterion("taxpayers_i_d_code <", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeLessThanOrEqualTo(String value) {
            addCriterion("taxpayers_i_d_code <=", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeLike(String value) {
            addCriterion("taxpayers_i_d_code like", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeNotLike(String value) {
            addCriterion("taxpayers_i_d_code not like", value, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeIn(List<String> values) {
            addCriterion("taxpayers_i_d_code in", values, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeNotIn(List<String> values) {
            addCriterion("taxpayers_i_d_code not in", values, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeBetween(String value1, String value2) {
            addCriterion("taxpayers_i_d_code between", value1, value2, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andTaxpayersIDCodeNotBetween(String value1, String value2) {
            addCriterion("taxpayers_i_d_code not between", value1, value2, "taxpayersIDCode");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentIsNull() {
            addCriterion("invoice_content is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentIsNotNull() {
            addCriterion("invoice_content is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentEqualTo(Integer value) {
            addCriterion("invoice_content =", value, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentNotEqualTo(Integer value) {
            addCriterion("invoice_content <>", value, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentGreaterThan(Integer value) {
            addCriterion("invoice_content >", value, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_content >=", value, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentLessThan(Integer value) {
            addCriterion("invoice_content <", value, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_content <=", value, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentIn(List<Integer> values) {
            addCriterion("invoice_content in", values, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentNotIn(List<Integer> values) {
            addCriterion("invoice_content not in", values, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentBetween(Integer value1, Integer value2) {
            addCriterion("invoice_content between", value1, value2, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceContentNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_content not between", value1, value2, "invoiceContent");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameIsNull() {
            addCriterion("invoice_name is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameIsNotNull() {
            addCriterion("invoice_name is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameEqualTo(String value) {
            addCriterion("invoice_name =", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameNotEqualTo(String value) {
            addCriterion("invoice_name <>", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameGreaterThan(String value) {
            addCriterion("invoice_name >", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_name >=", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameLessThan(String value) {
            addCriterion("invoice_name <", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameLessThanOrEqualTo(String value) {
            addCriterion("invoice_name <=", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameLike(String value) {
            addCriterion("invoice_name like", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameNotLike(String value) {
            addCriterion("invoice_name not like", value, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameIn(List<String> values) {
            addCriterion("invoice_name in", values, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameNotIn(List<String> values) {
            addCriterion("invoice_name not in", values, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameBetween(String value1, String value2) {
            addCriterion("invoice_name between", value1, value2, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoiceNameNotBetween(String value1, String value2) {
            addCriterion("invoice_name not between", value1, value2, "invoiceName");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneIsNull() {
            addCriterion("invoice_phone is null");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneIsNotNull() {
            addCriterion("invoice_phone is not null");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneEqualTo(String value) {
            addCriterion("invoice_phone =", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneNotEqualTo(String value) {
            addCriterion("invoice_phone <>", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneGreaterThan(String value) {
            addCriterion("invoice_phone >", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_phone >=", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneLessThan(String value) {
            addCriterion("invoice_phone <", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneLessThanOrEqualTo(String value) {
            addCriterion("invoice_phone <=", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneLike(String value) {
            addCriterion("invoice_phone like", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneNotLike(String value) {
            addCriterion("invoice_phone not like", value, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneIn(List<String> values) {
            addCriterion("invoice_phone in", values, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneNotIn(List<String> values) {
            addCriterion("invoice_phone not in", values, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneBetween(String value1, String value2) {
            addCriterion("invoice_phone between", value1, value2, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoicePhoneNotBetween(String value1, String value2) {
            addCriterion("invoice_phone not between", value1, value2, "invoicePhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailIsNull() {
            addCriterion("invoice_email is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailIsNotNull() {
            addCriterion("invoice_email is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailEqualTo(String value) {
            addCriterion("invoice_email =", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailNotEqualTo(String value) {
            addCriterion("invoice_email <>", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailGreaterThan(String value) {
            addCriterion("invoice_email >", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_email >=", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailLessThan(String value) {
            addCriterion("invoice_email <", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailLessThanOrEqualTo(String value) {
            addCriterion("invoice_email <=", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailLike(String value) {
            addCriterion("invoice_email like", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailNotLike(String value) {
            addCriterion("invoice_email not like", value, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailIn(List<String> values) {
            addCriterion("invoice_email in", values, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailNotIn(List<String> values) {
            addCriterion("invoice_email not in", values, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailBetween(String value1, String value2) {
            addCriterion("invoice_email between", value1, value2, "invoiceEmail");
            return (Criteria) this;
        }

        public Criteria andInvoiceEmailNotBetween(String value1, String value2) {
            addCriterion("invoice_email not between", value1, value2, "invoiceEmail");
            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 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 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 andInvoiceProviceIsNull() {
            addCriterion("invoice_provice is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceIsNotNull() {
            addCriterion("invoice_provice is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceEqualTo(Integer value) {
            addCriterion("invoice_provice =", value, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceNotEqualTo(Integer value) {
            addCriterion("invoice_provice <>", value, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceGreaterThan(Integer value) {
            addCriterion("invoice_provice >", value, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_provice >=", value, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceLessThan(Integer value) {
            addCriterion("invoice_provice <", value, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_provice <=", value, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceIn(List<Integer> values) {
            addCriterion("invoice_provice in", values, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceNotIn(List<Integer> values) {
            addCriterion("invoice_provice not in", values, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceBetween(Integer value1, Integer value2) {
            addCriterion("invoice_provice between", value1, value2, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceProviceNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_provice not between", value1, value2, "invoiceProvice");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityIsNull() {
            addCriterion("invoice_city is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityIsNotNull() {
            addCriterion("invoice_city is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityEqualTo(Integer value) {
            addCriterion("invoice_city =", value, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityNotEqualTo(Integer value) {
            addCriterion("invoice_city <>", value, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityGreaterThan(Integer value) {
            addCriterion("invoice_city >", value, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_city >=", value, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityLessThan(Integer value) {
            addCriterion("invoice_city <", value, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_city <=", value, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityIn(List<Integer> values) {
            addCriterion("invoice_city in", values, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityNotIn(List<Integer> values) {
            addCriterion("invoice_city not in", values, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityBetween(Integer value1, Integer value2) {
            addCriterion("invoice_city between", value1, value2, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCityNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_city not between", value1, value2, "invoiceCity");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyIsNull() {
            addCriterion("invoice_county is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyIsNotNull() {
            addCriterion("invoice_county is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyEqualTo(Integer value) {
            addCriterion("invoice_county =", value, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyNotEqualTo(Integer value) {
            addCriterion("invoice_county <>", value, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyGreaterThan(Integer value) {
            addCriterion("invoice_county >", value, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyGreaterThanOrEqualTo(Integer value) {
            addCriterion("invoice_county >=", value, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyLessThan(Integer value) {
            addCriterion("invoice_county <", value, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyLessThanOrEqualTo(Integer value) {
            addCriterion("invoice_county <=", value, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyIn(List<Integer> values) {
            addCriterion("invoice_county in", values, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyNotIn(List<Integer> values) {
            addCriterion("invoice_county not in", values, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyBetween(Integer value1, Integer value2) {
            addCriterion("invoice_county between", value1, value2, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceCountyNotBetween(Integer value1, Integer value2) {
            addCriterion("invoice_county not between", value1, value2, "invoiceCounty");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressIsNull() {
            addCriterion("invoice_address is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressIsNotNull() {
            addCriterion("invoice_address is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressEqualTo(String value) {
            addCriterion("invoice_address =", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNotEqualTo(String value) {
            addCriterion("invoice_address <>", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressGreaterThan(String value) {
            addCriterion("invoice_address >", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_address >=", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressLessThan(String value) {
            addCriterion("invoice_address <", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressLessThanOrEqualTo(String value) {
            addCriterion("invoice_address <=", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressLike(String value) {
            addCriterion("invoice_address like", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNotLike(String value) {
            addCriterion("invoice_address not like", value, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressIn(List<String> values) {
            addCriterion("invoice_address in", values, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNotIn(List<String> values) {
            addCriterion("invoice_address not in", values, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressBetween(String value1, String value2) {
            addCriterion("invoice_address between", value1, value2, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressNotBetween(String value1, String value2) {
            addCriterion("invoice_address not between", value1, value2, "invoiceAddress");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneIsNull() {
            addCriterion("invoice_address_phone is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneIsNotNull() {
            addCriterion("invoice_address_phone is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneEqualTo(String value) {
            addCriterion("invoice_address_phone =", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneNotEqualTo(String value) {
            addCriterion("invoice_address_phone <>", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneGreaterThan(String value) {
            addCriterion("invoice_address_phone >", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_address_phone >=", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneLessThan(String value) {
            addCriterion("invoice_address_phone <", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneLessThanOrEqualTo(String value) {
            addCriterion("invoice_address_phone <=", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneLike(String value) {
            addCriterion("invoice_address_phone like", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneNotLike(String value) {
            addCriterion("invoice_address_phone not like", value, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneIn(List<String> values) {
            addCriterion("invoice_address_phone in", values, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneNotIn(List<String> values) {
            addCriterion("invoice_address_phone not in", values, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneBetween(String value1, String value2) {
            addCriterion("invoice_address_phone between", value1, value2, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceAddressPhoneNotBetween(String value1, String value2) {
            addCriterion("invoice_address_phone not between", value1, value2, "invoiceAddressPhone");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberIsNull() {
            addCriterion("invoice_bank_account_number is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberIsNotNull() {
            addCriterion("invoice_bank_account_number is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberEqualTo(String value) {
            addCriterion("invoice_bank_account_number =", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberNotEqualTo(String value) {
            addCriterion("invoice_bank_account_number <>", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberGreaterThan(String value) {
            addCriterion("invoice_bank_account_number >", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_bank_account_number >=", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberLessThan(String value) {
            addCriterion("invoice_bank_account_number <", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberLessThanOrEqualTo(String value) {
            addCriterion("invoice_bank_account_number <=", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberLike(String value) {
            addCriterion("invoice_bank_account_number like", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberNotLike(String value) {
            addCriterion("invoice_bank_account_number not like", value, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberIn(List<String> values) {
            addCriterion("invoice_bank_account_number in", values, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberNotIn(List<String> values) {
            addCriterion("invoice_bank_account_number not in", values, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberBetween(String value1, String value2) {
            addCriterion("invoice_bank_account_number between", value1, value2, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankAccountNumberNotBetween(String value1, String value2) {
            addCriterion("invoice_bank_account_number not between", value1, value2, "invoiceBankAccountNumber");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankIsNull() {
            addCriterion("invoice_bank is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankIsNotNull() {
            addCriterion("invoice_bank is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankEqualTo(String value) {
            addCriterion("invoice_bank =", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankNotEqualTo(String value) {
            addCriterion("invoice_bank <>", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankGreaterThan(String value) {
            addCriterion("invoice_bank >", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_bank >=", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankLessThan(String value) {
            addCriterion("invoice_bank <", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankLessThanOrEqualTo(String value) {
            addCriterion("invoice_bank <=", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankLike(String value) {
            addCriterion("invoice_bank like", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankNotLike(String value) {
            addCriterion("invoice_bank not like", value, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankIn(List<String> values) {
            addCriterion("invoice_bank in", values, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankNotIn(List<String> values) {
            addCriterion("invoice_bank not in", values, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankBetween(String value1, String value2) {
            addCriterion("invoice_bank between", value1, value2, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceBankNotBetween(String value1, String value2) {
            addCriterion("invoice_bank not between", value1, value2, "invoiceBank");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountIsNull() {
            addCriterion("invoice_account is null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountIsNotNull() {
            addCriterion("invoice_account is not null");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountEqualTo(String value) {
            addCriterion("invoice_account =", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountNotEqualTo(String value) {
            addCriterion("invoice_account <>", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountGreaterThan(String value) {
            addCriterion("invoice_account >", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountGreaterThanOrEqualTo(String value) {
            addCriterion("invoice_account >=", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountLessThan(String value) {
            addCriterion("invoice_account <", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountLessThanOrEqualTo(String value) {
            addCriterion("invoice_account <=", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountLike(String value) {
            addCriterion("invoice_account like", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountNotLike(String value) {
            addCriterion("invoice_account not like", value, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountIn(List<String> values) {
            addCriterion("invoice_account in", values, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountNotIn(List<String> values) {
            addCriterion("invoice_account not in", values, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountBetween(String value1, String value2) {
            addCriterion("invoice_account between", value1, value2, "invoiceAccount");
            return (Criteria) this;
        }

        public Criteria andInvoiceAccountNotBetween(String value1, String value2) {
            addCriterion("invoice_account not between", value1, value2, "invoiceAccount");
            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 andIsDefaultIsNull() {
            addCriterion("is_default is null");
            return (Criteria) this;
        }

        public Criteria andIsDefaultIsNotNull() {
            addCriterion("is_default is not null");
            return (Criteria) this;
        }

        public Criteria andIsDefaultEqualTo(Integer value) {
            addCriterion("is_default =", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultNotEqualTo(Integer value) {
            addCriterion("is_default <>", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultGreaterThan(Integer value) {
            addCriterion("is_default >", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultGreaterThanOrEqualTo(Integer value) {
            addCriterion("is_default >=", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultLessThan(Integer value) {
            addCriterion("is_default <", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultLessThanOrEqualTo(Integer value) {
            addCriterion("is_default <=", value, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultIn(List<Integer> values) {
            addCriterion("is_default in", values, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultNotIn(List<Integer> values) {
            addCriterion("is_default not in", values, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultBetween(Integer value1, Integer value2) {
            addCriterion("is_default between", value1, value2, "isDefault");
            return (Criteria) this;
        }

        public Criteria andIsDefaultNotBetween(Integer value1, Integer value2) {
            addCriterion("is_default not between", value1, value2, "isDefault");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNull() {
            addCriterion("deleted is null");
            return (Criteria) this;
        }

        public Criteria andDeletedIsNotNull() {
            addCriterion("deleted is not null");
            return (Criteria) this;
        }

        public Criteria andDeletedEqualTo(Integer value) {
            addCriterion("deleted =", value, "deleted");
            return (Criteria) this;
        }

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

        public Criteria andDeletedGreaterThan(Integer value) {
            addCriterion("deleted >", value, "deleted");
            return (Criteria) this;
        }

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

        public Criteria andDeletedLessThan(Integer value) {
            addCriterion("deleted <", value, "deleted");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andEnabledIsNull() {
            addCriterion("enabled is null");
            return (Criteria) this;
        }

        public Criteria andEnabledIsNotNull() {
            addCriterion("enabled is not null");
            return (Criteria) this;
        }

        public Criteria andEnabledEqualTo(Integer value) {
            addCriterion("enabled =", value, "enabled");
            return (Criteria) this;
        }

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

        public Criteria andEnabledGreaterThan(Integer value) {
            addCriterion("enabled >", value, "enabled");
            return (Criteria) this;
        }

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

        public Criteria andEnabledLessThan(Integer value) {
            addCriterion("enabled <", value, "enabled");
            return (Criteria) this;
        }

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

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

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

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

        public Criteria andEnabledNotBetween(Integer value1, Integer value2) {
            addCriterion("enabled not between", value1, value2, "enabled");
            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(Long value) {
            addCriterion("create_user_id =", value, "createUserId");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andCreateUserIdNotBetween(Long value1, Long value2) {
            addCriterion("create_user_id not between", value1, value2, "createUserId");
            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(Long value) {
            addCriterion("update_user_id =", value, "updateUserId");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

    /**
    sys_supplier_ext_invoice
     *
     * @mbg.generated do_not_delete_during_merge Mon Nov 29 16:08:25 CST 2021
     */
    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    /**
    sys_supplier_ext_invoice
     *
     * @mbg.generated Mon Nov 29 16:08:25 CST 2021
     */
    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);
        }
    }
}