package com.bailuntec.domain.example;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_crm_refund
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBaseCrmRefundExample orderBy(String orderByClause) {
        this.setOrderByClause(orderByClause);
        return this;
    }

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

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_crm_refund
     *
     * @mbg.generated
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_crm_refund
     *
     * @mbg.generated
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria(this);
        return criteria;
    }

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

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

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

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

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

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

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

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

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

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

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

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table dc_base_crm_refund
     *
     * @mbg.generated
     */
    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

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

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

        public Criteria andPlatformTypeIsNull() {
            addCriterion("platform_type is null");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeIsNotNull() {
            addCriterion("platform_type is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeEqualTo(String value) {
            addCriterion("platform_type =", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeNotEqualTo(String value) {
            addCriterion("platform_type <>", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeGreaterThan(String value) {
            addCriterion("platform_type >", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeGreaterThanOrEqualTo(String value) {
            addCriterion("platform_type >=", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeLessThan(String value) {
            addCriterion("platform_type <", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeLessThanOrEqualTo(String value) {
            addCriterion("platform_type <=", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeLike(String value) {
            addCriterion("platform_type like", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeNotLike(String value) {
            addCriterion("platform_type not like", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeIn(List<String> values) {
            addCriterion("platform_type in", values, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeNotIn(List<String> values) {
            addCriterion("platform_type not in", values, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeBetween(String value1, String value2) {
            addCriterion("platform_type between", value1, value2, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeNotBetween(String value1, String value2) {
            addCriterion("platform_type not between", value1, value2, "platformType");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIsNull() {
            addCriterion("bailun_account is null");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIsNotNull() {
            addCriterion("bailun_account is not null");
            return (Criteria) this;
        }

        public Criteria andBailunAccountEqualTo(String value) {
            addCriterion("bailun_account =", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountNotEqualTo(String value) {
            addCriterion("bailun_account <>", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountGreaterThan(String value) {
            addCriterion("bailun_account >", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountGreaterThanOrEqualTo(String value) {
            addCriterion("bailun_account >=", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountLessThan(String value) {
            addCriterion("bailun_account <", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountLessThanOrEqualTo(String value) {
            addCriterion("bailun_account <=", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountLike(String value) {
            addCriterion("bailun_account like", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountNotLike(String value) {
            addCriterion("bailun_account not like", value, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIn(List<String> values) {
            addCriterion("bailun_account in", values, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountNotIn(List<String> values) {
            addCriterion("bailun_account not in", values, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountBetween(String value1, String value2) {
            addCriterion("bailun_account between", value1, value2, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountNotBetween(String value1, String value2) {
            addCriterion("bailun_account not between", value1, value2, "bailunAccount");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdIsNull() {
            addCriterion("bailun_account_id is null");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdIsNotNull() {
            addCriterion("bailun_account_id is not null");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdEqualTo(Integer value) {
            addCriterion("bailun_account_id =", value, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdNotEqualTo(Integer value) {
            addCriterion("bailun_account_id <>", value, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdGreaterThan(Integer value) {
            addCriterion("bailun_account_id >", value, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("bailun_account_id >=", value, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdLessThan(Integer value) {
            addCriterion("bailun_account_id <", value, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdLessThanOrEqualTo(Integer value) {
            addCriterion("bailun_account_id <=", value, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdIn(List<Integer> values) {
            addCriterion("bailun_account_id in", values, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdNotIn(List<Integer> values) {
            addCriterion("bailun_account_id not in", values, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdBetween(Integer value1, Integer value2) {
            addCriterion("bailun_account_id between", value1, value2, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andBailunAccountIdNotBetween(Integer value1, Integer value2) {
            addCriterion("bailun_account_id not between", value1, value2, "bailunAccountId");
            return (Criteria) this;
        }

        public Criteria andWebsiteIsNull() {
            addCriterion("website is null");
            return (Criteria) this;
        }

        public Criteria andWebsiteIsNotNull() {
            addCriterion("website is not null");
            return (Criteria) this;
        }

        public Criteria andWebsiteEqualTo(String value) {
            addCriterion("website =", value, "website");
            return (Criteria) this;
        }

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

        public Criteria andWebsiteGreaterThan(String value) {
            addCriterion("website >", value, "website");
            return (Criteria) this;
        }

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

        public Criteria andWebsiteLessThan(String value) {
            addCriterion("website <", value, "website");
            return (Criteria) this;
        }

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

        public Criteria andWebsiteLike(String value) {
            addCriterion("website like", value, "website");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andOriginOrderIdIsNull() {
            addCriterion("origin_order_id is null");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdIsNotNull() {
            addCriterion("origin_order_id is not null");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdEqualTo(String value) {
            addCriterion("origin_order_id =", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdNotEqualTo(String value) {
            addCriterion("origin_order_id <>", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdGreaterThan(String value) {
            addCriterion("origin_order_id >", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdGreaterThanOrEqualTo(String value) {
            addCriterion("origin_order_id >=", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdLessThan(String value) {
            addCriterion("origin_order_id <", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdLessThanOrEqualTo(String value) {
            addCriterion("origin_order_id <=", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdLike(String value) {
            addCriterion("origin_order_id like", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdNotLike(String value) {
            addCriterion("origin_order_id not like", value, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdIn(List<String> values) {
            addCriterion("origin_order_id in", values, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdNotIn(List<String> values) {
            addCriterion("origin_order_id not in", values, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdBetween(String value1, String value2) {
            addCriterion("origin_order_id between", value1, value2, "originOrderId");
            return (Criteria) this;
        }

        public Criteria andOriginOrderIdNotBetween(String value1, String value2) {
            addCriterion("origin_order_id not between", value1, value2, "originOrderId");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andPlatformSkuIsNull() {
            addCriterion("platform_sku is null");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuIsNotNull() {
            addCriterion("platform_sku is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuEqualTo(String value) {
            addCriterion("platform_sku =", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuNotEqualTo(String value) {
            addCriterion("platform_sku <>", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuGreaterThan(String value) {
            addCriterion("platform_sku >", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuGreaterThanOrEqualTo(String value) {
            addCriterion("platform_sku >=", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuLessThan(String value) {
            addCriterion("platform_sku <", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuLessThanOrEqualTo(String value) {
            addCriterion("platform_sku <=", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuLike(String value) {
            addCriterion("platform_sku like", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuNotLike(String value) {
            addCriterion("platform_sku not like", value, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuIn(List<String> values) {
            addCriterion("platform_sku in", values, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuNotIn(List<String> values) {
            addCriterion("platform_sku not in", values, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuBetween(String value1, String value2) {
            addCriterion("platform_sku between", value1, value2, "platformSku");
            return (Criteria) this;
        }

        public Criteria andPlatformSkuNotBetween(String value1, String value2) {
            addCriterion("platform_sku not between", value1, value2, "platformSku");
            return (Criteria) this;
        }

        public Criteria andAmountRefundIsNull() {
            addCriterion("amount_refund is null");
            return (Criteria) this;
        }

        public Criteria andAmountRefundIsNotNull() {
            addCriterion("amount_refund is not null");
            return (Criteria) this;
        }

        public Criteria andAmountRefundEqualTo(BigDecimal value) {
            addCriterion("amount_refund =", value, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundNotEqualTo(BigDecimal value) {
            addCriterion("amount_refund <>", value, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundGreaterThan(BigDecimal value) {
            addCriterion("amount_refund >", value, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_refund >=", value, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundLessThan(BigDecimal value) {
            addCriterion("amount_refund <", value, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundLessThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_refund <=", value, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundIn(List<BigDecimal> values) {
            addCriterion("amount_refund in", values, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundNotIn(List<BigDecimal> values) {
            addCriterion("amount_refund not in", values, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_refund between", value1, value2, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andAmountRefundNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_refund not between", value1, value2, "amountRefund");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyIsNull() {
            addCriterion("order_currency is null");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyIsNotNull() {
            addCriterion("order_currency is not null");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyEqualTo(String value) {
            addCriterion("order_currency =", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyNotEqualTo(String value) {
            addCriterion("order_currency <>", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyGreaterThan(String value) {
            addCriterion("order_currency >", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyGreaterThanOrEqualTo(String value) {
            addCriterion("order_currency >=", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyLessThan(String value) {
            addCriterion("order_currency <", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyLessThanOrEqualTo(String value) {
            addCriterion("order_currency <=", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyLike(String value) {
            addCriterion("order_currency like", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyNotLike(String value) {
            addCriterion("order_currency not like", value, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyIn(List<String> values) {
            addCriterion("order_currency in", values, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyNotIn(List<String> values) {
            addCriterion("order_currency not in", values, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyBetween(String value1, String value2) {
            addCriterion("order_currency between", value1, value2, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andOrderCurrencyNotBetween(String value1, String value2) {
            addCriterion("order_currency not between", value1, value2, "orderCurrency");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIsNull() {
            addCriterion("refund_time is null");
            return (Criteria) this;
        }

        public Criteria andRefundTimeIsNotNull() {
            addCriterion("refund_time is not null");
            return (Criteria) this;
        }

        public Criteria andRefundTimeEqualTo(LocalDateTime value) {
            addCriterion("refund_time =", value, "refundTime");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

        public Criteria andBailunSkuQuantityRefundIsNull() {
            addCriterion("bailun_sku_quantity_refund is null");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundIsNotNull() {
            addCriterion("bailun_sku_quantity_refund is not null");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundEqualTo(Integer value) {
            addCriterion("bailun_sku_quantity_refund =", value, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundNotEqualTo(Integer value) {
            addCriterion("bailun_sku_quantity_refund <>", value, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundGreaterThan(Integer value) {
            addCriterion("bailun_sku_quantity_refund >", value, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundGreaterThanOrEqualTo(Integer value) {
            addCriterion("bailun_sku_quantity_refund >=", value, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundLessThan(Integer value) {
            addCriterion("bailun_sku_quantity_refund <", value, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundLessThanOrEqualTo(Integer value) {
            addCriterion("bailun_sku_quantity_refund <=", value, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundIn(List<Integer> values) {
            addCriterion("bailun_sku_quantity_refund in", values, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundNotIn(List<Integer> values) {
            addCriterion("bailun_sku_quantity_refund not in", values, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundBetween(Integer value1, Integer value2) {
            addCriterion("bailun_sku_quantity_refund between", value1, value2, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuQuantityRefundNotBetween(Integer value1, Integer value2) {
            addCriterion("bailun_sku_quantity_refund not between", value1, value2, "bailunSkuQuantityRefund");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceIsNull() {
            addCriterion("bailun_sku_unit_price is null");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceIsNotNull() {
            addCriterion("bailun_sku_unit_price is not null");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceEqualTo(BigDecimal value) {
            addCriterion("bailun_sku_unit_price =", value, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceNotEqualTo(BigDecimal value) {
            addCriterion("bailun_sku_unit_price <>", value, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceGreaterThan(BigDecimal value) {
            addCriterion("bailun_sku_unit_price >", value, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("bailun_sku_unit_price >=", value, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceLessThan(BigDecimal value) {
            addCriterion("bailun_sku_unit_price <", value, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("bailun_sku_unit_price <=", value, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceIn(List<BigDecimal> values) {
            addCriterion("bailun_sku_unit_price in", values, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceNotIn(List<BigDecimal> values) {
            addCriterion("bailun_sku_unit_price not in", values, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("bailun_sku_unit_price between", value1, value2, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andBailunSkuUnitPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("bailun_sku_unit_price not between", value1, value2, "bailunSkuUnitPrice");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIsNull() {
            addCriterion("gmt_create is null");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIsNotNull() {
            addCriterion("gmt_create is not null");
            return (Criteria) this;
        }

        public Criteria andGmtCreateEqualTo(LocalDateTime value) {
            addCriterion("gmt_create =", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotEqualTo(LocalDateTime value) {
            addCriterion("gmt_create <>", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateGreaterThan(LocalDateTime value) {
            addCriterion("gmt_create >", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("gmt_create >=", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateLessThan(LocalDateTime value) {
            addCriterion("gmt_create <", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("gmt_create <=", value, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateIn(List<LocalDateTime> values) {
            addCriterion("gmt_create in", values, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotIn(List<LocalDateTime> values) {
            addCriterion("gmt_create not in", values, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("gmt_create between", value1, value2, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtCreateNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("gmt_create not between", value1, value2, "gmtCreate");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIsNull() {
            addCriterion("gmt_modified is null");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIsNotNull() {
            addCriterion("gmt_modified is not null");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedEqualTo(LocalDateTime value) {
            addCriterion("gmt_modified =", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotEqualTo(LocalDateTime value) {
            addCriterion("gmt_modified <>", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedGreaterThan(LocalDateTime value) {
            addCriterion("gmt_modified >", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("gmt_modified >=", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedLessThan(LocalDateTime value) {
            addCriterion("gmt_modified <", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("gmt_modified <=", value, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedIn(List<LocalDateTime> values) {
            addCriterion("gmt_modified in", values, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotIn(List<LocalDateTime> values) {
            addCriterion("gmt_modified not in", values, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("gmt_modified between", value1, value2, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andGmtModifiedNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("gmt_modified not between", value1, value2, "gmtModified");
            return (Criteria) this;
        }

        public Criteria andLinkedIsNull() {
            addCriterion("linked is null");
            return (Criteria) this;
        }

        public Criteria andLinkedIsNotNull() {
            addCriterion("linked is not null");
            return (Criteria) this;
        }

        public Criteria andLinkedEqualTo(Boolean value) {
            addCriterion("linked =", value, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedNotEqualTo(Boolean value) {
            addCriterion("linked <>", value, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedGreaterThan(Boolean value) {
            addCriterion("linked >", value, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedGreaterThanOrEqualTo(Boolean value) {
            addCriterion("linked >=", value, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedLessThan(Boolean value) {
            addCriterion("linked <", value, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedLessThanOrEqualTo(Boolean value) {
            addCriterion("linked <=", value, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedIn(List<Boolean> values) {
            addCriterion("linked in", values, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedNotIn(List<Boolean> values) {
            addCriterion("linked not in", values, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedBetween(Boolean value1, Boolean value2) {
            addCriterion("linked between", value1, value2, "linked");
            return (Criteria) this;
        }

        public Criteria andLinkedNotBetween(Boolean value1, Boolean value2) {
            addCriterion("linked not between", value1, value2, "linked");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbIsNull() {
            addCriterion("amount_refund_rmb is null");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbIsNotNull() {
            addCriterion("amount_refund_rmb is not null");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbEqualTo(BigDecimal value) {
            addCriterion("amount_refund_rmb =", value, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbNotEqualTo(BigDecimal value) {
            addCriterion("amount_refund_rmb <>", value, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbGreaterThan(BigDecimal value) {
            addCriterion("amount_refund_rmb >", value, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_refund_rmb >=", value, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbLessThan(BigDecimal value) {
            addCriterion("amount_refund_rmb <", value, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbLessThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_refund_rmb <=", value, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbIn(List<BigDecimal> values) {
            addCriterion("amount_refund_rmb in", values, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbNotIn(List<BigDecimal> values) {
            addCriterion("amount_refund_rmb not in", values, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_refund_rmb between", value1, value2, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andAmountRefundRmbNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_refund_rmb not between", value1, value2, "amountRefundRmb");
            return (Criteria) this;
        }

        public Criteria andCrmIdIsNull() {
            addCriterion("crm_id is null");
            return (Criteria) this;
        }

        public Criteria andCrmIdIsNotNull() {
            addCriterion("crm_id is not null");
            return (Criteria) this;
        }

        public Criteria andCrmIdEqualTo(Integer value) {
            addCriterion("crm_id =", value, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdNotEqualTo(Integer value) {
            addCriterion("crm_id <>", value, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdGreaterThan(Integer value) {
            addCriterion("crm_id >", value, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("crm_id >=", value, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdLessThan(Integer value) {
            addCriterion("crm_id <", value, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdLessThanOrEqualTo(Integer value) {
            addCriterion("crm_id <=", value, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdIn(List<Integer> values) {
            addCriterion("crm_id in", values, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdNotIn(List<Integer> values) {
            addCriterion("crm_id not in", values, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdBetween(Integer value1, Integer value2) {
            addCriterion("crm_id between", value1, value2, "crmId");
            return (Criteria) this;
        }

        public Criteria andCrmIdNotBetween(Integer value1, Integer value2) {
            addCriterion("crm_id not between", value1, value2, "crmId");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdIsNull() {
            addCriterion("amount_refund_usd is null");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdIsNotNull() {
            addCriterion("amount_refund_usd is not null");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdEqualTo(BigDecimal value) {
            addCriterion("amount_refund_usd =", value, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdNotEqualTo(BigDecimal value) {
            addCriterion("amount_refund_usd <>", value, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdGreaterThan(BigDecimal value) {
            addCriterion("amount_refund_usd >", value, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_refund_usd >=", value, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdLessThan(BigDecimal value) {
            addCriterion("amount_refund_usd <", value, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdLessThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_refund_usd <=", value, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdIn(List<BigDecimal> values) {
            addCriterion("amount_refund_usd in", values, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdNotIn(List<BigDecimal> values) {
            addCriterion("amount_refund_usd not in", values, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_refund_usd between", value1, value2, "amountRefundUsd");
            return (Criteria) this;
        }

        public Criteria andAmountRefundUsdNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_refund_usd not between", value1, value2, "amountRefundUsd");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andOrderTotalAmountIsNull() {
            addCriterion("order_total_amount is null");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountIsNotNull() {
            addCriterion("order_total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountEqualTo(BigDecimal value) {
            addCriterion("order_total_amount =", value, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountNotEqualTo(BigDecimal value) {
            addCriterion("order_total_amount <>", value, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountGreaterThan(BigDecimal value) {
            addCriterion("order_total_amount >", value, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("order_total_amount >=", value, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountLessThan(BigDecimal value) {
            addCriterion("order_total_amount <", value, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("order_total_amount <=", value, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountIn(List<BigDecimal> values) {
            addCriterion("order_total_amount in", values, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountNotIn(List<BigDecimal> values) {
            addCriterion("order_total_amount not in", values, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("order_total_amount between", value1, value2, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andOrderTotalAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("order_total_amount not between", value1, value2, "orderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountIsNull() {
            addCriterion("usd_order_total_amount is null");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountIsNotNull() {
            addCriterion("usd_order_total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountEqualTo(BigDecimal value) {
            addCriterion("usd_order_total_amount =", value, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountNotEqualTo(BigDecimal value) {
            addCriterion("usd_order_total_amount <>", value, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountGreaterThan(BigDecimal value) {
            addCriterion("usd_order_total_amount >", value, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("usd_order_total_amount >=", value, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountLessThan(BigDecimal value) {
            addCriterion("usd_order_total_amount <", value, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("usd_order_total_amount <=", value, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountIn(List<BigDecimal> values) {
            addCriterion("usd_order_total_amount in", values, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountNotIn(List<BigDecimal> values) {
            addCriterion("usd_order_total_amount not in", values, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("usd_order_total_amount between", value1, value2, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andUsdOrderTotalAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("usd_order_total_amount not between", value1, value2, "usdOrderTotalAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountIsNull() {
            addCriterion("product_sale_amount is null");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountIsNotNull() {
            addCriterion("product_sale_amount is not null");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountEqualTo(BigDecimal value) {
            addCriterion("product_sale_amount =", value, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountNotEqualTo(BigDecimal value) {
            addCriterion("product_sale_amount <>", value, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountGreaterThan(BigDecimal value) {
            addCriterion("product_sale_amount >", value, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("product_sale_amount >=", value, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountLessThan(BigDecimal value) {
            addCriterion("product_sale_amount <", value, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("product_sale_amount <=", value, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountIn(List<BigDecimal> values) {
            addCriterion("product_sale_amount in", values, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountNotIn(List<BigDecimal> values) {
            addCriterion("product_sale_amount not in", values, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_sale_amount between", value1, value2, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andProductSaleAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("product_sale_amount not between", value1, value2, "productSaleAmount");
            return (Criteria) this;
        }

        public Criteria andIsDeletedIsNull() {
            addCriterion("is_deleted is null");
            return (Criteria) this;
        }

        public Criteria andIsDeletedIsNotNull() {
            addCriterion("is_deleted is not null");
            return (Criteria) this;
        }

        public Criteria andIsDeletedEqualTo(Boolean value) {
            addCriterion("is_deleted =", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedNotEqualTo(Boolean value) {
            addCriterion("is_deleted <>", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedGreaterThan(Boolean value) {
            addCriterion("is_deleted >", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_deleted >=", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedLessThan(Boolean value) {
            addCriterion("is_deleted <", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedLessThanOrEqualTo(Boolean value) {
            addCriterion("is_deleted <=", value, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedIn(List<Boolean> values) {
            addCriterion("is_deleted in", values, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedNotIn(List<Boolean> values) {
            addCriterion("is_deleted not in", values, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedBetween(Boolean value1, Boolean value2) {
            addCriterion("is_deleted between", value1, value2, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsDeletedNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_deleted not between", value1, value2, "isDeleted");
            return (Criteria) this;
        }

        public Criteria andIsFreezeIsNull() {
            addCriterion("is_freeze is null");
            return (Criteria) this;
        }

        public Criteria andIsFreezeIsNotNull() {
            addCriterion("is_freeze is not null");
            return (Criteria) this;
        }

        public Criteria andIsFreezeEqualTo(Boolean value) {
            addCriterion("is_freeze =", value, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeNotEqualTo(Boolean value) {
            addCriterion("is_freeze <>", value, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeGreaterThan(Boolean value) {
            addCriterion("is_freeze >", value, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_freeze >=", value, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeLessThan(Boolean value) {
            addCriterion("is_freeze <", value, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeLessThanOrEqualTo(Boolean value) {
            addCriterion("is_freeze <=", value, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeIn(List<Boolean> values) {
            addCriterion("is_freeze in", values, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeNotIn(List<Boolean> values) {
            addCriterion("is_freeze not in", values, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeBetween(Boolean value1, Boolean value2) {
            addCriterion("is_freeze between", value1, value2, "isFreeze");
            return (Criteria) this;
        }

        public Criteria andIsFreezeNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_freeze not between", value1, value2, "isFreeze");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andOrderStatusLike(String value) {
            addCriterion("order_status like", value, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andOrderStatusNotLike(String value) {
            addCriterion("order_status not like", value, "orderStatus");
            return (Criteria) this;
        }

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

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

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

        public Criteria andOrderStatusNotBetween(String value1, String value2) {
            addCriterion("order_status not between", value1, value2, "orderStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusIsNull() {
            addCriterion("shipping_status is null");
            return (Criteria) this;
        }

        public Criteria andShippingStatusIsNotNull() {
            addCriterion("shipping_status is not null");
            return (Criteria) this;
        }

        public Criteria andShippingStatusEqualTo(String value) {
            addCriterion("shipping_status =", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusNotEqualTo(String value) {
            addCriterion("shipping_status <>", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusGreaterThan(String value) {
            addCriterion("shipping_status >", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusGreaterThanOrEqualTo(String value) {
            addCriterion("shipping_status >=", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusLessThan(String value) {
            addCriterion("shipping_status <", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusLessThanOrEqualTo(String value) {
            addCriterion("shipping_status <=", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusLike(String value) {
            addCriterion("shipping_status like", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusNotLike(String value) {
            addCriterion("shipping_status not like", value, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusIn(List<String> values) {
            addCriterion("shipping_status in", values, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusNotIn(List<String> values) {
            addCriterion("shipping_status not in", values, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusBetween(String value1, String value2) {
            addCriterion("shipping_status between", value1, value2, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andShippingStatusNotBetween(String value1, String value2) {
            addCriterion("shipping_status not between", value1, value2, "shippingStatus");
            return (Criteria) this;
        }

        public Criteria andRefundTypeIsNull() {
            addCriterion("refund_type is null");
            return (Criteria) this;
        }

        public Criteria andRefundTypeIsNotNull() {
            addCriterion("refund_type is not null");
            return (Criteria) this;
        }

        public Criteria andRefundTypeEqualTo(String value) {
            addCriterion("refund_type =", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeNotEqualTo(String value) {
            addCriterion("refund_type <>", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeGreaterThan(String value) {
            addCriterion("refund_type >", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeGreaterThanOrEqualTo(String value) {
            addCriterion("refund_type >=", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeLessThan(String value) {
            addCriterion("refund_type <", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeLessThanOrEqualTo(String value) {
            addCriterion("refund_type <=", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeLike(String value) {
            addCriterion("refund_type like", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeNotLike(String value) {
            addCriterion("refund_type not like", value, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeIn(List<String> values) {
            addCriterion("refund_type in", values, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeNotIn(List<String> values) {
            addCriterion("refund_type not in", values, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeBetween(String value1, String value2) {
            addCriterion("refund_type between", value1, value2, "refundType");
            return (Criteria) this;
        }

        public Criteria andRefundTypeNotBetween(String value1, String value2) {
            addCriterion("refund_type not between", value1, value2, "refundType");
            return (Criteria) this;
        }
    }

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

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

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

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

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

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

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

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table dc_base_crm_refund
     *
     * @mbg.generated
     */
    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }

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

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