package com.bailuntec.domain.example;

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

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

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

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

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database table dc_base_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @mbg.generated
     */
    public DcBasePurchaseDetailsExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_purchase_details
     *
     * @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_purchase_details
     *
     * @mbg.generated
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_purchase_details
     *
     * @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_purchase_details
     *
     * @mbg.generated
     */
    public boolean isDistinct() {
        return distinct;
    }

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

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBasePurchaseDetailsExample orderBy(String orderByClause) {
        this.setOrderByClause(orderByClause);
        return this;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBasePurchaseDetailsExample 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_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public static Criteria newAndCreateCriteria() {
        DcBasePurchaseDetailsExample example = new DcBasePurchaseDetailsExample();
        return example.createCriteria();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBasePurchaseDetailsExample 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_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBasePurchaseDetailsExample 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_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBasePurchaseDetailsExample limit(Integer rows) {
        this.rows = rows;
        return this;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table dc_base_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBasePurchaseDetailsExample 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_purchase_details
     *
     * @mbg.generated
     * @project https://github.com/itfsw/mybatis-generator-plugin
     */
    public DcBasePurchaseDetailsExample 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_purchase_details
     *
     * @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 andPurchaseIdIsNull() {
            addCriterion("purchase_id is null");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdIsNotNull() {
            addCriterion("purchase_id is not null");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdEqualTo(String value) {
            addCriterion("purchase_id =", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdNotEqualTo(String value) {
            addCriterion("purchase_id <>", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdGreaterThan(String value) {
            addCriterion("purchase_id >", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdGreaterThanOrEqualTo(String value) {
            addCriterion("purchase_id >=", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdLessThan(String value) {
            addCriterion("purchase_id <", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdLessThanOrEqualTo(String value) {
            addCriterion("purchase_id <=", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdLike(String value) {
            addCriterion("purchase_id like", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdNotLike(String value) {
            addCriterion("purchase_id not like", value, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdIn(List<String> values) {
            addCriterion("purchase_id in", values, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdNotIn(List<String> values) {
            addCriterion("purchase_id not in", values, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdBetween(String value1, String value2) {
            addCriterion("purchase_id between", value1, value2, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andPurchaseIdNotBetween(String value1, String value2) {
            addCriterion("purchase_id not between", value1, value2, "purchaseId");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Byte value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Byte value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Byte value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Byte value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Byte value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Byte value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Byte> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Byte> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Byte value1, Byte value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Byte value1, Byte value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameIsNull() {
            addCriterion("purchase_category_name is null");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameIsNotNull() {
            addCriterion("purchase_category_name is not null");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameEqualTo(String value) {
            addCriterion("purchase_category_name =", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameNotEqualTo(String value) {
            addCriterion("purchase_category_name <>", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameGreaterThan(String value) {
            addCriterion("purchase_category_name >", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameGreaterThanOrEqualTo(String value) {
            addCriterion("purchase_category_name >=", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameLessThan(String value) {
            addCriterion("purchase_category_name <", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameLessThanOrEqualTo(String value) {
            addCriterion("purchase_category_name <=", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameLike(String value) {
            addCriterion("purchase_category_name like", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameNotLike(String value) {
            addCriterion("purchase_category_name not like", value, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameIn(List<String> values) {
            addCriterion("purchase_category_name in", values, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameNotIn(List<String> values) {
            addCriterion("purchase_category_name not in", values, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameBetween(String value1, String value2) {
            addCriterion("purchase_category_name between", value1, value2, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andPurchaseCategoryNameNotBetween(String value1, String value2) {
            addCriterion("purchase_category_name not between", value1, value2, "purchaseCategoryName");
            return (Criteria) this;
        }

        public Criteria andDeliverIdIsNull() {
            addCriterion("deliver_id is null");
            return (Criteria) this;
        }

        public Criteria andDeliverIdIsNotNull() {
            addCriterion("deliver_id is not null");
            return (Criteria) this;
        }

        public Criteria andDeliverIdEqualTo(Integer value) {
            addCriterion("deliver_id =", value, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdNotEqualTo(Integer value) {
            addCriterion("deliver_id <>", value, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdGreaterThan(Integer value) {
            addCriterion("deliver_id >", value, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("deliver_id >=", value, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdLessThan(Integer value) {
            addCriterion("deliver_id <", value, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdLessThanOrEqualTo(Integer value) {
            addCriterion("deliver_id <=", value, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdIn(List<Integer> values) {
            addCriterion("deliver_id in", values, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdNotIn(List<Integer> values) {
            addCriterion("deliver_id not in", values, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdBetween(Integer value1, Integer value2) {
            addCriterion("deliver_id between", value1, value2, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverIdNotBetween(Integer value1, Integer value2) {
            addCriterion("deliver_id not between", value1, value2, "deliverId");
            return (Criteria) this;
        }

        public Criteria andDeliverNameIsNull() {
            addCriterion("deliver_name is null");
            return (Criteria) this;
        }

        public Criteria andDeliverNameIsNotNull() {
            addCriterion("deliver_name is not null");
            return (Criteria) this;
        }

        public Criteria andDeliverNameEqualTo(String value) {
            addCriterion("deliver_name =", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameNotEqualTo(String value) {
            addCriterion("deliver_name <>", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameGreaterThan(String value) {
            addCriterion("deliver_name >", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameGreaterThanOrEqualTo(String value) {
            addCriterion("deliver_name >=", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameLessThan(String value) {
            addCriterion("deliver_name <", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameLessThanOrEqualTo(String value) {
            addCriterion("deliver_name <=", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameLike(String value) {
            addCriterion("deliver_name like", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameNotLike(String value) {
            addCriterion("deliver_name not like", value, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameIn(List<String> values) {
            addCriterion("deliver_name in", values, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameNotIn(List<String> values) {
            addCriterion("deliver_name not in", values, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameBetween(String value1, String value2) {
            addCriterion("deliver_name between", value1, value2, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverNameNotBetween(String value1, String value2) {
            addCriterion("deliver_name not between", value1, value2, "deliverName");
            return (Criteria) this;
        }

        public Criteria andDeliverValueIsNull() {
            addCriterion("deliver_value is null");
            return (Criteria) this;
        }

        public Criteria andDeliverValueIsNotNull() {
            addCriterion("deliver_value is not null");
            return (Criteria) this;
        }

        public Criteria andDeliverValueEqualTo(Integer value) {
            addCriterion("deliver_value =", value, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueNotEqualTo(Integer value) {
            addCriterion("deliver_value <>", value, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueGreaterThan(Integer value) {
            addCriterion("deliver_value >", value, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueGreaterThanOrEqualTo(Integer value) {
            addCriterion("deliver_value >=", value, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueLessThan(Integer value) {
            addCriterion("deliver_value <", value, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueLessThanOrEqualTo(Integer value) {
            addCriterion("deliver_value <=", value, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueIn(List<Integer> values) {
            addCriterion("deliver_value in", values, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueNotIn(List<Integer> values) {
            addCriterion("deliver_value not in", values, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueBetween(Integer value1, Integer value2) {
            addCriterion("deliver_value between", value1, value2, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andDeliverValueNotBetween(Integer value1, Integer value2) {
            addCriterion("deliver_value not between", value1, value2, "deliverValue");
            return (Criteria) this;
        }

        public Criteria andBuyerNameIsNull() {
            addCriterion("buyer_name is null");
            return (Criteria) this;
        }

        public Criteria andBuyerNameIsNotNull() {
            addCriterion("buyer_name is not null");
            return (Criteria) this;
        }

        public Criteria andBuyerNameEqualTo(String value) {
            addCriterion("buyer_name =", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameNotEqualTo(String value) {
            addCriterion("buyer_name <>", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameGreaterThan(String value) {
            addCriterion("buyer_name >", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameGreaterThanOrEqualTo(String value) {
            addCriterion("buyer_name >=", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameLessThan(String value) {
            addCriterion("buyer_name <", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameLessThanOrEqualTo(String value) {
            addCriterion("buyer_name <=", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameLike(String value) {
            addCriterion("buyer_name like", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameNotLike(String value) {
            addCriterion("buyer_name not like", value, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameIn(List<String> values) {
            addCriterion("buyer_name in", values, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameNotIn(List<String> values) {
            addCriterion("buyer_name not in", values, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameBetween(String value1, String value2) {
            addCriterion("buyer_name between", value1, value2, "buyerName");
            return (Criteria) this;
        }

        public Criteria andBuyerNameNotBetween(String value1, String value2) {
            addCriterion("buyer_name not between", value1, value2, "buyerName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeIsNull() {
            addCriterion("warehouse_from_code is null");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeIsNotNull() {
            addCriterion("warehouse_from_code is not null");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeEqualTo(String value) {
            addCriterion("warehouse_from_code =", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeNotEqualTo(String value) {
            addCriterion("warehouse_from_code <>", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeGreaterThan(String value) {
            addCriterion("warehouse_from_code >", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeGreaterThanOrEqualTo(String value) {
            addCriterion("warehouse_from_code >=", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeLessThan(String value) {
            addCriterion("warehouse_from_code <", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeLessThanOrEqualTo(String value) {
            addCriterion("warehouse_from_code <=", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeLike(String value) {
            addCriterion("warehouse_from_code like", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeNotLike(String value) {
            addCriterion("warehouse_from_code not like", value, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeIn(List<String> values) {
            addCriterion("warehouse_from_code in", values, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeNotIn(List<String> values) {
            addCriterion("warehouse_from_code not in", values, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeBetween(String value1, String value2) {
            addCriterion("warehouse_from_code between", value1, value2, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromCodeNotBetween(String value1, String value2) {
            addCriterion("warehouse_from_code not between", value1, value2, "warehouseFromCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameIsNull() {
            addCriterion("warehouse_from_name is null");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameIsNotNull() {
            addCriterion("warehouse_from_name is not null");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameEqualTo(String value) {
            addCriterion("warehouse_from_name =", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameNotEqualTo(String value) {
            addCriterion("warehouse_from_name <>", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameGreaterThan(String value) {
            addCriterion("warehouse_from_name >", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameGreaterThanOrEqualTo(String value) {
            addCriterion("warehouse_from_name >=", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameLessThan(String value) {
            addCriterion("warehouse_from_name <", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameLessThanOrEqualTo(String value) {
            addCriterion("warehouse_from_name <=", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameLike(String value) {
            addCriterion("warehouse_from_name like", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameNotLike(String value) {
            addCriterion("warehouse_from_name not like", value, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameIn(List<String> values) {
            addCriterion("warehouse_from_name in", values, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameNotIn(List<String> values) {
            addCriterion("warehouse_from_name not in", values, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameBetween(String value1, String value2) {
            addCriterion("warehouse_from_name between", value1, value2, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseFromNameNotBetween(String value1, String value2) {
            addCriterion("warehouse_from_name not between", value1, value2, "warehouseFromName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeIsNull() {
            addCriterion("warehouse_into_code is null");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeIsNotNull() {
            addCriterion("warehouse_into_code is not null");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeEqualTo(String value) {
            addCriterion("warehouse_into_code =", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeNotEqualTo(String value) {
            addCriterion("warehouse_into_code <>", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeGreaterThan(String value) {
            addCriterion("warehouse_into_code >", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeGreaterThanOrEqualTo(String value) {
            addCriterion("warehouse_into_code >=", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeLessThan(String value) {
            addCriterion("warehouse_into_code <", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeLessThanOrEqualTo(String value) {
            addCriterion("warehouse_into_code <=", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeLike(String value) {
            addCriterion("warehouse_into_code like", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeNotLike(String value) {
            addCriterion("warehouse_into_code not like", value, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeIn(List<String> values) {
            addCriterion("warehouse_into_code in", values, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeNotIn(List<String> values) {
            addCriterion("warehouse_into_code not in", values, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeBetween(String value1, String value2) {
            addCriterion("warehouse_into_code between", value1, value2, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoCodeNotBetween(String value1, String value2) {
            addCriterion("warehouse_into_code not between", value1, value2, "warehouseIntoCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameIsNull() {
            addCriterion("warehouse_into_name is null");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameIsNotNull() {
            addCriterion("warehouse_into_name is not null");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameEqualTo(String value) {
            addCriterion("warehouse_into_name =", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameNotEqualTo(String value) {
            addCriterion("warehouse_into_name <>", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameGreaterThan(String value) {
            addCriterion("warehouse_into_name >", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameGreaterThanOrEqualTo(String value) {
            addCriterion("warehouse_into_name >=", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameLessThan(String value) {
            addCriterion("warehouse_into_name <", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameLessThanOrEqualTo(String value) {
            addCriterion("warehouse_into_name <=", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameLike(String value) {
            addCriterion("warehouse_into_name like", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameNotLike(String value) {
            addCriterion("warehouse_into_name not like", value, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameIn(List<String> values) {
            addCriterion("warehouse_into_name in", values, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameNotIn(List<String> values) {
            addCriterion("warehouse_into_name not in", values, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameBetween(String value1, String value2) {
            addCriterion("warehouse_into_name between", value1, value2, "warehouseIntoName");
            return (Criteria) this;
        }

        public Criteria andWarehouseIntoNameNotBetween(String value1, String value2) {
            addCriterion("warehouse_into_name not between", value1, value2, "warehouseIntoName");
            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 andQuantityPurchaseIsNull() {
            addCriterion("quantity_purchase is null");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseIsNotNull() {
            addCriterion("quantity_purchase is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseEqualTo(Integer value) {
            addCriterion("quantity_purchase =", value, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseNotEqualTo(Integer value) {
            addCriterion("quantity_purchase <>", value, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseGreaterThan(Integer value) {
            addCriterion("quantity_purchase >", value, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_purchase >=", value, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseLessThan(Integer value) {
            addCriterion("quantity_purchase <", value, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_purchase <=", value, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseIn(List<Integer> values) {
            addCriterion("quantity_purchase in", values, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseNotIn(List<Integer> values) {
            addCriterion("quantity_purchase not in", values, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseBetween(Integer value1, Integer value2) {
            addCriterion("quantity_purchase between", value1, value2, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andQuantityPurchaseNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_purchase not between", value1, value2, "quantityPurchase");
            return (Criteria) this;
        }

        public Criteria andUnitPriceIsNull() {
            addCriterion("unit_price is null");
            return (Criteria) this;
        }

        public Criteria andUnitPriceIsNotNull() {
            addCriterion("unit_price is not null");
            return (Criteria) this;
        }

        public Criteria andUnitPriceEqualTo(BigDecimal value) {
            addCriterion("unit_price =", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceNotEqualTo(BigDecimal value) {
            addCriterion("unit_price <>", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceGreaterThan(BigDecimal value) {
            addCriterion("unit_price >", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("unit_price >=", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceLessThan(BigDecimal value) {
            addCriterion("unit_price <", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceLessThanOrEqualTo(BigDecimal value) {
            addCriterion("unit_price <=", value, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceIn(List<BigDecimal> values) {
            addCriterion("unit_price in", values, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceNotIn(List<BigDecimal> values) {
            addCriterion("unit_price not in", values, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("unit_price between", value1, value2, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andUnitPriceNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("unit_price not between", value1, value2, "unitPrice");
            return (Criteria) this;
        }

        public Criteria andAmountPaidIsNull() {
            addCriterion("amount_paid is null");
            return (Criteria) this;
        }

        public Criteria andAmountPaidIsNotNull() {
            addCriterion("amount_paid is not null");
            return (Criteria) this;
        }

        public Criteria andAmountPaidEqualTo(BigDecimal value) {
            addCriterion("amount_paid =", value, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidNotEqualTo(BigDecimal value) {
            addCriterion("amount_paid <>", value, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidGreaterThan(BigDecimal value) {
            addCriterion("amount_paid >", value, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_paid >=", value, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidLessThan(BigDecimal value) {
            addCriterion("amount_paid <", value, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidLessThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_paid <=", value, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidIn(List<BigDecimal> values) {
            addCriterion("amount_paid in", values, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidNotIn(List<BigDecimal> values) {
            addCriterion("amount_paid not in", values, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_paid between", value1, value2, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andAmountPaidNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_paid not between", value1, value2, "amountPaid");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeIsNull() {
            addCriterion("currency_code is null");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeIsNotNull() {
            addCriterion("currency_code is not null");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeEqualTo(String value) {
            addCriterion("currency_code =", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeNotEqualTo(String value) {
            addCriterion("currency_code <>", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeGreaterThan(String value) {
            addCriterion("currency_code >", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeGreaterThanOrEqualTo(String value) {
            addCriterion("currency_code >=", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeLessThan(String value) {
            addCriterion("currency_code <", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeLessThanOrEqualTo(String value) {
            addCriterion("currency_code <=", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeLike(String value) {
            addCriterion("currency_code like", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeNotLike(String value) {
            addCriterion("currency_code not like", value, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeIn(List<String> values) {
            addCriterion("currency_code in", values, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeNotIn(List<String> values) {
            addCriterion("currency_code not in", values, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeBetween(String value1, String value2) {
            addCriterion("currency_code between", value1, value2, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyCodeNotBetween(String value1, String value2) {
            addCriterion("currency_code not between", value1, value2, "currencyCode");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameIsNull() {
            addCriterion("currency_name is null");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameIsNotNull() {
            addCriterion("currency_name is not null");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameEqualTo(String value) {
            addCriterion("currency_name =", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameNotEqualTo(String value) {
            addCriterion("currency_name <>", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameGreaterThan(String value) {
            addCriterion("currency_name >", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameGreaterThanOrEqualTo(String value) {
            addCriterion("currency_name >=", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameLessThan(String value) {
            addCriterion("currency_name <", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameLessThanOrEqualTo(String value) {
            addCriterion("currency_name <=", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameLike(String value) {
            addCriterion("currency_name like", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameNotLike(String value) {
            addCriterion("currency_name not like", value, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameIn(List<String> values) {
            addCriterion("currency_name in", values, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameNotIn(List<String> values) {
            addCriterion("currency_name not in", values, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameBetween(String value1, String value2) {
            addCriterion("currency_name between", value1, value2, "currencyName");
            return (Criteria) this;
        }

        public Criteria andCurrencyNameNotBetween(String value1, String value2) {
            addCriterion("currency_name not between", value1, value2, "currencyName");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnIsNull() {
            addCriterion("quantity_return is null");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnIsNotNull() {
            addCriterion("quantity_return is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnEqualTo(Integer value) {
            addCriterion("quantity_return =", value, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnNotEqualTo(Integer value) {
            addCriterion("quantity_return <>", value, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnGreaterThan(Integer value) {
            addCriterion("quantity_return >", value, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_return >=", value, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnLessThan(Integer value) {
            addCriterion("quantity_return <", value, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_return <=", value, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnIn(List<Integer> values) {
            addCriterion("quantity_return in", values, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnNotIn(List<Integer> values) {
            addCriterion("quantity_return not in", values, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnBetween(Integer value1, Integer value2) {
            addCriterion("quantity_return between", value1, value2, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityReturnNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_return not between", value1, value2, "quantityReturn");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundIsNull() {
            addCriterion("quantity_inbound is null");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundIsNotNull() {
            addCriterion("quantity_inbound is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundEqualTo(Integer value) {
            addCriterion("quantity_inbound =", value, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundNotEqualTo(Integer value) {
            addCriterion("quantity_inbound <>", value, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundGreaterThan(Integer value) {
            addCriterion("quantity_inbound >", value, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_inbound >=", value, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundLessThan(Integer value) {
            addCriterion("quantity_inbound <", value, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_inbound <=", value, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundIn(List<Integer> values) {
            addCriterion("quantity_inbound in", values, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundNotIn(List<Integer> values) {
            addCriterion("quantity_inbound not in", values, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundBetween(Integer value1, Integer value2) {
            addCriterion("quantity_inbound between", value1, value2, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityInboundNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_inbound not between", value1, value2, "quantityInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverIsNull() {
            addCriterion("quantity_deliver is null");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverIsNotNull() {
            addCriterion("quantity_deliver is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverEqualTo(Integer value) {
            addCriterion("quantity_deliver =", value, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverNotEqualTo(Integer value) {
            addCriterion("quantity_deliver <>", value, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverGreaterThan(Integer value) {
            addCriterion("quantity_deliver >", value, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_deliver >=", value, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverLessThan(Integer value) {
            addCriterion("quantity_deliver <", value, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_deliver <=", value, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverIn(List<Integer> values) {
            addCriterion("quantity_deliver in", values, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverNotIn(List<Integer> values) {
            addCriterion("quantity_deliver not in", values, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverBetween(Integer value1, Integer value2) {
            addCriterion("quantity_deliver between", value1, value2, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityDeliverNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_deliver not between", value1, value2, "quantityDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverIsNull() {
            addCriterion("quantity_not_deliver is null");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverIsNotNull() {
            addCriterion("quantity_not_deliver is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverEqualTo(Integer value) {
            addCriterion("quantity_not_deliver =", value, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverNotEqualTo(Integer value) {
            addCriterion("quantity_not_deliver <>", value, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverGreaterThan(Integer value) {
            addCriterion("quantity_not_deliver >", value, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_not_deliver >=", value, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverLessThan(Integer value) {
            addCriterion("quantity_not_deliver <", value, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_not_deliver <=", value, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverIn(List<Integer> values) {
            addCriterion("quantity_not_deliver in", values, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverNotIn(List<Integer> values) {
            addCriterion("quantity_not_deliver not in", values, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverBetween(Integer value1, Integer value2) {
            addCriterion("quantity_not_deliver between", value1, value2, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityNotDeliverNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_not_deliver not between", value1, value2, "quantityNotDeliver");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalIsNull() {
            addCriterion("quantity_arrival is null");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalIsNotNull() {
            addCriterion("quantity_arrival is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalEqualTo(Integer value) {
            addCriterion("quantity_arrival =", value, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalNotEqualTo(Integer value) {
            addCriterion("quantity_arrival <>", value, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalGreaterThan(Integer value) {
            addCriterion("quantity_arrival >", value, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_arrival >=", value, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalLessThan(Integer value) {
            addCriterion("quantity_arrival <", value, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_arrival <=", value, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalIn(List<Integer> values) {
            addCriterion("quantity_arrival in", values, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalNotIn(List<Integer> values) {
            addCriterion("quantity_arrival not in", values, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalBetween(Integer value1, Integer value2) {
            addCriterion("quantity_arrival between", value1, value2, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityArrivalNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_arrival not between", value1, value2, "quantityArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalIsNull() {
            addCriterion("quantity_not_arrival is null");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalIsNotNull() {
            addCriterion("quantity_not_arrival is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalEqualTo(Integer value) {
            addCriterion("quantity_not_arrival =", value, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalNotEqualTo(Integer value) {
            addCriterion("quantity_not_arrival <>", value, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalGreaterThan(Integer value) {
            addCriterion("quantity_not_arrival >", value, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_not_arrival >=", value, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalLessThan(Integer value) {
            addCriterion("quantity_not_arrival <", value, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_not_arrival <=", value, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalIn(List<Integer> values) {
            addCriterion("quantity_not_arrival in", values, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalNotIn(List<Integer> values) {
            addCriterion("quantity_not_arrival not in", values, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalBetween(Integer value1, Integer value2) {
            addCriterion("quantity_not_arrival between", value1, value2, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityNotArrivalNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_not_arrival not between", value1, value2, "quantityNotArrival");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectIsNull() {
            addCriterion("quantity_inspect is null");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectIsNotNull() {
            addCriterion("quantity_inspect is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectEqualTo(Integer value) {
            addCriterion("quantity_inspect =", value, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectNotEqualTo(Integer value) {
            addCriterion("quantity_inspect <>", value, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectGreaterThan(Integer value) {
            addCriterion("quantity_inspect >", value, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_inspect >=", value, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectLessThan(Integer value) {
            addCriterion("quantity_inspect <", value, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_inspect <=", value, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectIn(List<Integer> values) {
            addCriterion("quantity_inspect in", values, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectNotIn(List<Integer> values) {
            addCriterion("quantity_inspect not in", values, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectBetween(Integer value1, Integer value2) {
            addCriterion("quantity_inspect between", value1, value2, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityInspectNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_inspect not between", value1, value2, "quantityInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectIsNull() {
            addCriterion("quantity_qualified_inspect is null");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectIsNotNull() {
            addCriterion("quantity_qualified_inspect is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectEqualTo(Integer value) {
            addCriterion("quantity_qualified_inspect =", value, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectNotEqualTo(Integer value) {
            addCriterion("quantity_qualified_inspect <>", value, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectGreaterThan(Integer value) {
            addCriterion("quantity_qualified_inspect >", value, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_qualified_inspect >=", value, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectLessThan(Integer value) {
            addCriterion("quantity_qualified_inspect <", value, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_qualified_inspect <=", value, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectIn(List<Integer> values) {
            addCriterion("quantity_qualified_inspect in", values, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectNotIn(List<Integer> values) {
            addCriterion("quantity_qualified_inspect not in", values, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectBetween(Integer value1, Integer value2) {
            addCriterion("quantity_qualified_inspect between", value1, value2, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityQualifiedInspectNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_qualified_inspect not between", value1, value2, "quantityQualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectIsNull() {
            addCriterion("quantity_unqualified_inspect is null");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectIsNotNull() {
            addCriterion("quantity_unqualified_inspect is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectEqualTo(Integer value) {
            addCriterion("quantity_unqualified_inspect =", value, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectNotEqualTo(Integer value) {
            addCriterion("quantity_unqualified_inspect <>", value, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectGreaterThan(Integer value) {
            addCriterion("quantity_unqualified_inspect >", value, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_unqualified_inspect >=", value, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectLessThan(Integer value) {
            addCriterion("quantity_unqualified_inspect <", value, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_unqualified_inspect <=", value, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectIn(List<Integer> values) {
            addCriterion("quantity_unqualified_inspect in", values, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectNotIn(List<Integer> values) {
            addCriterion("quantity_unqualified_inspect not in", values, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectBetween(Integer value1, Integer value2) {
            addCriterion("quantity_unqualified_inspect between", value1, value2, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityUnqualifiedInspectNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_unqualified_inspect not between", value1, value2, "quantityUnqualifiedInspect");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferIsNull() {
            addCriterion("quantity_wait_transfer is null");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferIsNotNull() {
            addCriterion("quantity_wait_transfer is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferEqualTo(Integer value) {
            addCriterion("quantity_wait_transfer =", value, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferNotEqualTo(Integer value) {
            addCriterion("quantity_wait_transfer <>", value, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferGreaterThan(Integer value) {
            addCriterion("quantity_wait_transfer >", value, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_wait_transfer >=", value, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferLessThan(Integer value) {
            addCriterion("quantity_wait_transfer <", value, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_wait_transfer <=", value, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferIn(List<Integer> values) {
            addCriterion("quantity_wait_transfer in", values, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferNotIn(List<Integer> values) {
            addCriterion("quantity_wait_transfer not in", values, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferBetween(Integer value1, Integer value2) {
            addCriterion("quantity_wait_transfer between", value1, value2, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityWaitTransferNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_wait_transfer not between", value1, value2, "quantityWaitTransfer");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeIsNull() {
            addCriterion("quantity_exchange is null");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeIsNotNull() {
            addCriterion("quantity_exchange is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeEqualTo(Integer value) {
            addCriterion("quantity_exchange =", value, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeNotEqualTo(Integer value) {
            addCriterion("quantity_exchange <>", value, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeGreaterThan(Integer value) {
            addCriterion("quantity_exchange >", value, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_exchange >=", value, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeLessThan(Integer value) {
            addCriterion("quantity_exchange <", value, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_exchange <=", value, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeIn(List<Integer> values) {
            addCriterion("quantity_exchange in", values, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeNotIn(List<Integer> values) {
            addCriterion("quantity_exchange not in", values, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeBetween(Integer value1, Integer value2) {
            addCriterion("quantity_exchange between", value1, value2, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityExchangeNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_exchange not between", value1, value2, "quantityExchange");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundIsNull() {
            addCriterion("quantity_lose_inbound is null");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundIsNotNull() {
            addCriterion("quantity_lose_inbound is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundEqualTo(Integer value) {
            addCriterion("quantity_lose_inbound =", value, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundNotEqualTo(Integer value) {
            addCriterion("quantity_lose_inbound <>", value, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundGreaterThan(Integer value) {
            addCriterion("quantity_lose_inbound >", value, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_lose_inbound >=", value, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundLessThan(Integer value) {
            addCriterion("quantity_lose_inbound <", value, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_lose_inbound <=", value, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundIn(List<Integer> values) {
            addCriterion("quantity_lose_inbound in", values, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundNotIn(List<Integer> values) {
            addCriterion("quantity_lose_inbound not in", values, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundBetween(Integer value1, Integer value2) {
            addCriterion("quantity_lose_inbound between", value1, value2, "quantityLoseInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityLoseInboundNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_lose_inbound not between", value1, value2, "quantityLoseInbound");
            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(LocalDateTime value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andCreateTimeNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            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(LocalDateTime value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andUpdateTimeNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            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 andQuantityNotInboundIsNull() {
            addCriterion("quantity_not_inbound is null");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundIsNotNull() {
            addCriterion("quantity_not_inbound is not null");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundEqualTo(Integer value) {
            addCriterion("quantity_not_inbound =", value, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundNotEqualTo(Integer value) {
            addCriterion("quantity_not_inbound <>", value, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundGreaterThan(Integer value) {
            addCriterion("quantity_not_inbound >", value, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundGreaterThanOrEqualTo(Integer value) {
            addCriterion("quantity_not_inbound >=", value, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundLessThan(Integer value) {
            addCriterion("quantity_not_inbound <", value, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundLessThanOrEqualTo(Integer value) {
            addCriterion("quantity_not_inbound <=", value, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundIn(List<Integer> values) {
            addCriterion("quantity_not_inbound in", values, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundNotIn(List<Integer> values) {
            addCriterion("quantity_not_inbound not in", values, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundBetween(Integer value1, Integer value2) {
            addCriterion("quantity_not_inbound between", value1, value2, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andQuantityNotInboundNotBetween(Integer value1, Integer value2) {
            addCriterion("quantity_not_inbound not between", value1, value2, "quantityNotInbound");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdIsNull() {
            addCriterion("alibaba_order_id is null");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdIsNotNull() {
            addCriterion("alibaba_order_id is not null");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdEqualTo(String value) {
            addCriterion("alibaba_order_id =", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdNotEqualTo(String value) {
            addCriterion("alibaba_order_id <>", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdGreaterThan(String value) {
            addCriterion("alibaba_order_id >", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdGreaterThanOrEqualTo(String value) {
            addCriterion("alibaba_order_id >=", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdLessThan(String value) {
            addCriterion("alibaba_order_id <", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdLessThanOrEqualTo(String value) {
            addCriterion("alibaba_order_id <=", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdLike(String value) {
            addCriterion("alibaba_order_id like", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdNotLike(String value) {
            addCriterion("alibaba_order_id not like", value, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdIn(List<String> values) {
            addCriterion("alibaba_order_id in", values, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdNotIn(List<String> values) {
            addCriterion("alibaba_order_id not in", values, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdBetween(String value1, String value2) {
            addCriterion("alibaba_order_id between", value1, value2, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andAlibabaOrderIdNotBetween(String value1, String value2) {
            addCriterion("alibaba_order_id not between", value1, value2, "alibabaOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdIsNull() {
            addCriterion("logistics_order_id is null");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdIsNotNull() {
            addCriterion("logistics_order_id is not null");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdEqualTo(String value) {
            addCriterion("logistics_order_id =", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdNotEqualTo(String value) {
            addCriterion("logistics_order_id <>", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdGreaterThan(String value) {
            addCriterion("logistics_order_id >", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdGreaterThanOrEqualTo(String value) {
            addCriterion("logistics_order_id >=", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdLessThan(String value) {
            addCriterion("logistics_order_id <", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdLessThanOrEqualTo(String value) {
            addCriterion("logistics_order_id <=", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdLike(String value) {
            addCriterion("logistics_order_id like", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdNotLike(String value) {
            addCriterion("logistics_order_id not like", value, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdIn(List<String> values) {
            addCriterion("logistics_order_id in", values, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdNotIn(List<String> values) {
            addCriterion("logistics_order_id not in", values, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdBetween(String value1, String value2) {
            addCriterion("logistics_order_id between", value1, value2, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsOrderIdNotBetween(String value1, String value2) {
            addCriterion("logistics_order_id not between", value1, value2, "logisticsOrderId");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameIsNull() {
            addCriterion("logistics_company_name is null");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameIsNotNull() {
            addCriterion("logistics_company_name is not null");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameEqualTo(String value) {
            addCriterion("logistics_company_name =", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameNotEqualTo(String value) {
            addCriterion("logistics_company_name <>", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameGreaterThan(String value) {
            addCriterion("logistics_company_name >", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameGreaterThanOrEqualTo(String value) {
            addCriterion("logistics_company_name >=", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameLessThan(String value) {
            addCriterion("logistics_company_name <", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameLessThanOrEqualTo(String value) {
            addCriterion("logistics_company_name <=", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameLike(String value) {
            addCriterion("logistics_company_name like", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameNotLike(String value) {
            addCriterion("logistics_company_name not like", value, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameIn(List<String> values) {
            addCriterion("logistics_company_name in", values, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameNotIn(List<String> values) {
            addCriterion("logistics_company_name not in", values, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameBetween(String value1, String value2) {
            addCriterion("logistics_company_name between", value1, value2, "logisticsCompanyName");
            return (Criteria) this;
        }

        public Criteria andLogisticsCompanyNameNotBetween(String value1, String value2) {
            addCriterion("logistics_company_name not between", value1, value2, "logisticsCompanyName");
            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 andIspushIsNull() {
            addCriterion("ispush is null");
            return (Criteria) this;
        }

        public Criteria andIspushIsNotNull() {
            addCriterion("ispush is not null");
            return (Criteria) this;
        }

        public Criteria andIspushEqualTo(Integer value) {
            addCriterion("ispush =", value, "ispush");
            return (Criteria) this;
        }

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

        public Criteria andIspushGreaterThan(Integer value) {
            addCriterion("ispush >", value, "ispush");
            return (Criteria) this;
        }

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

        public Criteria andIspushLessThan(Integer value) {
            addCriterion("ispush <", value, "ispush");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andIsallotIsNull() {
            addCriterion("isallot is null");
            return (Criteria) this;
        }

        public Criteria andIsallotIsNotNull() {
            addCriterion("isallot is not null");
            return (Criteria) this;
        }

        public Criteria andIsallotEqualTo(Byte value) {
            addCriterion("isallot =", value, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotNotEqualTo(Byte value) {
            addCriterion("isallot <>", value, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotGreaterThan(Byte value) {
            addCriterion("isallot >", value, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotGreaterThanOrEqualTo(Byte value) {
            addCriterion("isallot >=", value, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotLessThan(Byte value) {
            addCriterion("isallot <", value, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotLessThanOrEqualTo(Byte value) {
            addCriterion("isallot <=", value, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotIn(List<Byte> values) {
            addCriterion("isallot in", values, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotNotIn(List<Byte> values) {
            addCriterion("isallot not in", values, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotBetween(Byte value1, Byte value2) {
            addCriterion("isallot between", value1, value2, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsallotNotBetween(Byte value1, Byte value2) {
            addCriterion("isallot not between", value1, value2, "isallot");
            return (Criteria) this;
        }

        public Criteria andIsaimsIsNull() {
            addCriterion("isaims is null");
            return (Criteria) this;
        }

        public Criteria andIsaimsIsNotNull() {
            addCriterion("isaims is not null");
            return (Criteria) this;
        }

        public Criteria andIsaimsEqualTo(Integer value) {
            addCriterion("isaims =", value, "isaims");
            return (Criteria) this;
        }

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

        public Criteria andIsaimsGreaterThan(Integer value) {
            addCriterion("isaims >", value, "isaims");
            return (Criteria) this;
        }

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

        public Criteria andIsaimsLessThan(Integer value) {
            addCriterion("isaims <", value, "isaims");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        public Criteria andPayStatusIsNull() {
            addCriterion("pay_status is null");
            return (Criteria) this;
        }

        public Criteria andPayStatusIsNotNull() {
            addCriterion("pay_status is not null");
            return (Criteria) this;
        }

        public Criteria andPayStatusEqualTo(Integer value) {
            addCriterion("pay_status =", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusNotEqualTo(Integer value) {
            addCriterion("pay_status <>", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusGreaterThan(Integer value) {
            addCriterion("pay_status >", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("pay_status >=", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusLessThan(Integer value) {
            addCriterion("pay_status <", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusLessThanOrEqualTo(Integer value) {
            addCriterion("pay_status <=", value, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusIn(List<Integer> values) {
            addCriterion("pay_status in", values, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusNotIn(List<Integer> values) {
            addCriterion("pay_status not in", values, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusBetween(Integer value1, Integer value2) {
            addCriterion("pay_status between", value1, value2, "payStatus");
            return (Criteria) this;
        }

        public Criteria andPayStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("pay_status not between", value1, value2, "payStatus");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeIsNull() {
            addCriterion("last_signtime is null");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeIsNotNull() {
            addCriterion("last_signtime is not null");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeEqualTo(LocalDateTime value) {
            addCriterion("last_signtime =", value, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeNotEqualTo(LocalDateTime value) {
            addCriterion("last_signtime <>", value, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeGreaterThan(LocalDateTime value) {
            addCriterion("last_signtime >", value, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("last_signtime >=", value, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeLessThan(LocalDateTime value) {
            addCriterion("last_signtime <", value, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("last_signtime <=", value, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeIn(List<LocalDateTime> values) {
            addCriterion("last_signtime in", values, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeNotIn(List<LocalDateTime> values) {
            addCriterion("last_signtime not in", values, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("last_signtime between", value1, value2, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andLastSigntimeNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("last_signtime not between", value1, value2, "lastSigntime");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusIsNull() {
            addCriterion("arrival_status is null");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusIsNotNull() {
            addCriterion("arrival_status is not null");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusEqualTo(Integer value) {
            addCriterion("arrival_status =", value, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusNotEqualTo(Integer value) {
            addCriterion("arrival_status <>", value, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusGreaterThan(Integer value) {
            addCriterion("arrival_status >", value, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("arrival_status >=", value, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusLessThan(Integer value) {
            addCriterion("arrival_status <", value, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusLessThanOrEqualTo(Integer value) {
            addCriterion("arrival_status <=", value, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusIn(List<Integer> values) {
            addCriterion("arrival_status in", values, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusNotIn(List<Integer> values) {
            addCriterion("arrival_status not in", values, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusBetween(Integer value1, Integer value2) {
            addCriterion("arrival_status between", value1, value2, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andArrivalStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("arrival_status not between", value1, value2, "arrivalStatus");
            return (Criteria) this;
        }

        public Criteria andAmountBuyIsNull() {
            addCriterion("amount_buy is null");
            return (Criteria) this;
        }

        public Criteria andAmountBuyIsNotNull() {
            addCriterion("amount_buy is not null");
            return (Criteria) this;
        }

        public Criteria andAmountBuyEqualTo(BigDecimal value) {
            addCriterion("amount_buy =", value, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyNotEqualTo(BigDecimal value) {
            addCriterion("amount_buy <>", value, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyGreaterThan(BigDecimal value) {
            addCriterion("amount_buy >", value, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_buy >=", value, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyLessThan(BigDecimal value) {
            addCriterion("amount_buy <", value, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyLessThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_buy <=", value, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyIn(List<BigDecimal> values) {
            addCriterion("amount_buy in", values, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyNotIn(List<BigDecimal> values) {
            addCriterion("amount_buy not in", values, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_buy between", value1, value2, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountBuyNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_buy not between", value1, value2, "amountBuy");
            return (Criteria) this;
        }

        public Criteria andAmountPayedIsNull() {
            addCriterion("amount_payed is null");
            return (Criteria) this;
        }

        public Criteria andAmountPayedIsNotNull() {
            addCriterion("amount_payed is not null");
            return (Criteria) this;
        }

        public Criteria andAmountPayedEqualTo(BigDecimal value) {
            addCriterion("amount_payed =", value, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedNotEqualTo(BigDecimal value) {
            addCriterion("amount_payed <>", value, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedGreaterThan(BigDecimal value) {
            addCriterion("amount_payed >", value, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_payed >=", value, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedLessThan(BigDecimal value) {
            addCriterion("amount_payed <", value, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedLessThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_payed <=", value, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedIn(List<BigDecimal> values) {
            addCriterion("amount_payed in", values, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedNotIn(List<BigDecimal> values) {
            addCriterion("amount_payed not in", values, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_payed between", value1, value2, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountPayedNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_payed not between", value1, value2, "amountPayed");
            return (Criteria) this;
        }

        public Criteria andAmountExpressIsNull() {
            addCriterion("amount_express is null");
            return (Criteria) this;
        }

        public Criteria andAmountExpressIsNotNull() {
            addCriterion("amount_express is not null");
            return (Criteria) this;
        }

        public Criteria andAmountExpressEqualTo(BigDecimal value) {
            addCriterion("amount_express =", value, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressNotEqualTo(BigDecimal value) {
            addCriterion("amount_express <>", value, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressGreaterThan(BigDecimal value) {
            addCriterion("amount_express >", value, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_express >=", value, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressLessThan(BigDecimal value) {
            addCriterion("amount_express <", value, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressLessThanOrEqualTo(BigDecimal value) {
            addCriterion("amount_express <=", value, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressIn(List<BigDecimal> values) {
            addCriterion("amount_express in", values, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressNotIn(List<BigDecimal> values) {
            addCriterion("amount_express not in", values, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_express between", value1, value2, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andAmountExpressNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("amount_express not between", value1, value2, "amountExpress");
            return (Criteria) this;
        }

        public Criteria andCreateusernameIsNull() {
            addCriterion("createusername is null");
            return (Criteria) this;
        }

        public Criteria andCreateusernameIsNotNull() {
            addCriterion("createusername is not null");
            return (Criteria) this;
        }

        public Criteria andCreateusernameEqualTo(String value) {
            addCriterion("createusername =", value, "createusername");
            return (Criteria) this;
        }

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

        public Criteria andCreateusernameGreaterThan(String value) {
            addCriterion("createusername >", value, "createusername");
            return (Criteria) this;
        }

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

        public Criteria andCreateusernameLessThan(String value) {
            addCriterion("createusername <", value, "createusername");
            return (Criteria) this;
        }

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

        public Criteria andCreateusernameLike(String value) {
            addCriterion("createusername like", value, "createusername");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andCan7dayRefundIsNull() {
            addCriterion("can_7day_refund is null");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundIsNotNull() {
            addCriterion("can_7day_refund is not null");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundEqualTo(Integer value) {
            addCriterion("can_7day_refund =", value, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundNotEqualTo(Integer value) {
            addCriterion("can_7day_refund <>", value, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundGreaterThan(Integer value) {
            addCriterion("can_7day_refund >", value, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundGreaterThanOrEqualTo(Integer value) {
            addCriterion("can_7day_refund >=", value, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundLessThan(Integer value) {
            addCriterion("can_7day_refund <", value, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundLessThanOrEqualTo(Integer value) {
            addCriterion("can_7day_refund <=", value, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundIn(List<Integer> values) {
            addCriterion("can_7day_refund in", values, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundNotIn(List<Integer> values) {
            addCriterion("can_7day_refund not in", values, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundBetween(Integer value1, Integer value2) {
            addCriterion("can_7day_refund between", value1, value2, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andCan7dayRefundNotBetween(Integer value1, Integer value2) {
            addCriterion("can_7day_refund not between", value1, value2, "can7dayRefund");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeIsNull() {
            addCriterion("warehouse_code is null");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeIsNotNull() {
            addCriterion("warehouse_code is not null");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeEqualTo(String value) {
            addCriterion("warehouse_code =", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotEqualTo(String value) {
            addCriterion("warehouse_code <>", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeGreaterThan(String value) {
            addCriterion("warehouse_code >", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeGreaterThanOrEqualTo(String value) {
            addCriterion("warehouse_code >=", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeLessThan(String value) {
            addCriterion("warehouse_code <", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeLessThanOrEqualTo(String value) {
            addCriterion("warehouse_code <=", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeLike(String value) {
            addCriterion("warehouse_code like", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotLike(String value) {
            addCriterion("warehouse_code not like", value, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeIn(List<String> values) {
            addCriterion("warehouse_code in", values, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotIn(List<String> values) {
            addCriterion("warehouse_code not in", values, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeBetween(String value1, String value2) {
            addCriterion("warehouse_code between", value1, value2, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andWarehouseCodeNotBetween(String value1, String value2) {
            addCriterion("warehouse_code not between", value1, value2, "warehouseCode");
            return (Criteria) this;
        }

        public Criteria andArrivaldateIsNull() {
            addCriterion("arrivaldate is null");
            return (Criteria) this;
        }

        public Criteria andArrivaldateIsNotNull() {
            addCriterion("arrivaldate is not null");
            return (Criteria) this;
        }

        public Criteria andArrivaldateEqualTo(LocalDateTime value) {
            addCriterion("arrivaldate =", value, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateNotEqualTo(LocalDateTime value) {
            addCriterion("arrivaldate <>", value, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateGreaterThan(LocalDateTime value) {
            addCriterion("arrivaldate >", value, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("arrivaldate >=", value, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateLessThan(LocalDateTime value) {
            addCriterion("arrivaldate <", value, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("arrivaldate <=", value, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateIn(List<LocalDateTime> values) {
            addCriterion("arrivaldate in", values, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateNotIn(List<LocalDateTime> values) {
            addCriterion("arrivaldate not in", values, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("arrivaldate between", value1, value2, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andArrivaldateNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("arrivaldate not between", value1, value2, "arrivaldate");
            return (Criteria) this;
        }

        public Criteria andHasDeleteIsNull() {
            addCriterion("has_delete is null");
            return (Criteria) this;
        }

        public Criteria andHasDeleteIsNotNull() {
            addCriterion("has_delete is not null");
            return (Criteria) this;
        }

        public Criteria andHasDeleteEqualTo(Integer value) {
            addCriterion("has_delete =", value, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteNotEqualTo(Integer value) {
            addCriterion("has_delete <>", value, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteGreaterThan(Integer value) {
            addCriterion("has_delete >", value, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteGreaterThanOrEqualTo(Integer value) {
            addCriterion("has_delete >=", value, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteLessThan(Integer value) {
            addCriterion("has_delete <", value, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteLessThanOrEqualTo(Integer value) {
            addCriterion("has_delete <=", value, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteIn(List<Integer> values) {
            addCriterion("has_delete in", values, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteNotIn(List<Integer> values) {
            addCriterion("has_delete not in", values, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteBetween(Integer value1, Integer value2) {
            addCriterion("has_delete between", value1, value2, "hasDelete");
            return (Criteria) this;
        }

        public Criteria andHasDeleteNotBetween(Integer value1, Integer value2) {
            addCriterion("has_delete not between", value1, value2, "hasDelete");
            return (Criteria) this;
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table dc_base_purchase_details
     *
     * @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_purchase_details
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        private DcBasePurchaseDetailsExample example;

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

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table dc_base_purchase_details
         *
         * @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_purchase_details
         *
         * @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_purchase_details
         *
         * @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_purchase_details
         *
         * @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_purchase_details
             *
             * @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_purchase_details
     *
     * @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_purchase_details
     *
     * @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_purchase_details
         *
         * @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_purchase_details
     *
     * @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_purchase_details
         *
         * @mbg.generated
         * @project https://github.com/itfsw/mybatis-generator-plugin
         */
        void example(com.bailuntec.domain.example.DcBasePurchaseDetailsExample example);
    }
}