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(Integer value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andStatusNotBetween(Integer value1, Integer 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 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;
        }
    }

    /**
     * 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(DcBasePurchaseDetailsExample example);
    }
}