package org.linlinjava.litemall.db.domain;

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

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

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

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

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

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

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

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

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

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

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

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

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table litemall_quote_bill
     *
     * @mbg.generated
     */
    public LitemallQuoteBillExample 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 litemall_quote_bill
     *
     * @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 litemall_quote_bill
     *
     * @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 litemall_quote_bill
     *
     * @mbg.generated
     */
    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table litemall_quote_bill
     *
     * @mbg.generated
     */
    public static Criteria newAndCreateCriteria() {
        LitemallQuoteBillExample example = new LitemallQuoteBillExample();
        return example.createCriteria();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table litemall_quote_bill
     *
     * @mbg.generated
     */
    public LitemallQuoteBillExample 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 litemall_quote_bill
     *
     * @mbg.generated
     */
    public LitemallQuoteBillExample when(boolean condition, IExampleWhen then, IExampleWhen otherwise) {
        if (condition) {
            then.example(this);
        } else {
            otherwise.example(this);
        }
        return this;
    }

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

        protected List<Criterion> approveCodeCriteria;

        protected List<Criterion> dutyChoiceCriteria;

        protected List<Criterion> ceoChoiceCriteria;

        protected List<Criterion> noticeCodeCriteria;

        protected List<Criterion> allCriteria;

        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
            quoteSupplyCodeCriteria = new ArrayList<Criterion>();
            approveCodeCriteria = new ArrayList<Criterion>();
            dutyChoiceCriteria = new ArrayList<Criterion>();
            ceoChoiceCriteria = new ArrayList<Criterion>();
            noticeCodeCriteria = new ArrayList<Criterion>();
        }

        public List<Criterion> getQuoteSupplyCodeCriteria() {
            return quoteSupplyCodeCriteria;
        }

        protected void addQuoteSupplyCodeCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            quoteSupplyCodeCriteria.add(new Criterion(condition, value, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        protected void addQuoteSupplyCodeCriterion(String condition, Integer[] value1, Integer[] value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            quoteSupplyCodeCriteria.add(new Criterion(condition, value1, value2, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        public List<Criterion> getApproveCodeCriteria() {
            return approveCodeCriteria;
        }

        protected void addApproveCodeCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            approveCodeCriteria.add(new Criterion(condition, value, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        protected void addApproveCodeCriterion(String condition, Integer[] value1, Integer[] value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            approveCodeCriteria.add(new Criterion(condition, value1, value2, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        public List<Criterion> getDutyChoiceCriteria() {
            return dutyChoiceCriteria;
        }

        protected void addDutyChoiceCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            dutyChoiceCriteria.add(new Criterion(condition, value, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        protected void addDutyChoiceCriterion(String condition, Integer[] value1, Integer[] value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            dutyChoiceCriteria.add(new Criterion(condition, value1, value2, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        public List<Criterion> getCeoChoiceCriteria() {
            return ceoChoiceCriteria;
        }

        protected void addCeoChoiceCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            ceoChoiceCriteria.add(new Criterion(condition, value, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        protected void addCeoChoiceCriterion(String condition, Integer[] value1, Integer[] value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            ceoChoiceCriteria.add(new Criterion(condition, value1, value2, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        public List<Criterion> getNoticeCodeCriteria() {
            return noticeCodeCriteria;
        }

        protected void addNoticeCodeCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            noticeCodeCriteria.add(new Criterion(condition, value, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        protected void addNoticeCodeCriterion(String condition, Integer[] value1, Integer[] value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            noticeCodeCriteria.add(new Criterion(condition, value1, value2, "org.linlinjava.litemall.db.mybatis.JsonIntegerArrayTypeHandler"));
            allCriteria = null;
        }

        public boolean isValid() {
            return criteria.size() > 0
                || quoteSupplyCodeCriteria.size() > 0
                || approveCodeCriteria.size() > 0
                || dutyChoiceCriteria.size() > 0
                || ceoChoiceCriteria.size() > 0
                || noticeCodeCriteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            if (allCriteria == null) {
                allCriteria = new ArrayList<Criterion>();
                allCriteria.addAll(criteria);
                allCriteria.addAll(quoteSupplyCodeCriteria);
                allCriteria.addAll(approveCodeCriteria);
                allCriteria.addAll(dutyChoiceCriteria);
                allCriteria.addAll(ceoChoiceCriteria);
                allCriteria.addAll(noticeCodeCriteria);
            }
            return allCriteria;
        }

        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));
            allCriteria = null;
        }

        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));
            allCriteria = null;
        }

        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));
            allCriteria = null;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIdEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("id = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIdNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("id <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIdGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("id > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIdGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("id >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIdLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("id < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIdLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("id <= ").append(column.getEscapedColumnName()).toString());
            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 andAdminIdIsNull() {
            addCriterion("admin_id is null");
            return (Criteria) this;
        }

        public Criteria andAdminIdIsNotNull() {
            addCriterion("admin_id is not null");
            return (Criteria) this;
        }

        public Criteria andAdminIdEqualTo(Integer value) {
            addCriterion("admin_id =", value, "adminId");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAdminIdEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("admin_id = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAdminIdNotEqualTo(Integer value) {
            addCriterion("admin_id <>", value, "adminId");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAdminIdNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("admin_id <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAdminIdGreaterThan(Integer value) {
            addCriterion("admin_id >", value, "adminId");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAdminIdGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("admin_id > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAdminIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("admin_id >=", value, "adminId");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAdminIdGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("admin_id >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAdminIdLessThan(Integer value) {
            addCriterion("admin_id <", value, "adminId");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAdminIdLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("admin_id < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAdminIdLessThanOrEqualTo(Integer value) {
            addCriterion("admin_id <=", value, "adminId");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAdminIdLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("admin_id <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAdminIdIn(List<Integer> values) {
            addCriterion("admin_id in", values, "adminId");
            return (Criteria) this;
        }

        public Criteria andAdminIdNotIn(List<Integer> values) {
            addCriterion("admin_id not in", values, "adminId");
            return (Criteria) this;
        }

        public Criteria andAdminIdBetween(Integer value1, Integer value2) {
            addCriterion("admin_id between", value1, value2, "adminId");
            return (Criteria) this;
        }

        public Criteria andAdminIdNotBetween(Integer value1, Integer value2) {
            addCriterion("admin_id not between", value1, value2, "adminId");
            return (Criteria) this;
        }

        public Criteria andPurchaserIsNull() {
            addCriterion("purchaser is null");
            return (Criteria) this;
        }

        public Criteria andPurchaserIsNotNull() {
            addCriterion("purchaser is not null");
            return (Criteria) this;
        }

        public Criteria andPurchaserEqualTo(String value) {
            addCriterion("purchaser =", value, "purchaser");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserGreaterThan(String value) {
            addCriterion("purchaser >", value, "purchaser");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserLessThan(String value) {
            addCriterion("purchaser <", value, "purchaser");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserLike(String value) {
            addCriterion("purchaser like", value, "purchaser");
            return (Criteria) this;
        }

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

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

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

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

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

        public Criteria andQuoteModelExcelIsNull() {
            addCriterion("quote_model_excel is null");
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelIsNotNull() {
            addCriterion("quote_model_excel is not null");
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelEqualTo(String value) {
            addCriterion("quote_model_excel =", value, "quoteModelExcel");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteModelExcelEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_model_excel = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelNotEqualTo(String value) {
            addCriterion("quote_model_excel <>", value, "quoteModelExcel");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteModelExcelNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_model_excel <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelGreaterThan(String value) {
            addCriterion("quote_model_excel >", value, "quoteModelExcel");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteModelExcelGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_model_excel > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelGreaterThanOrEqualTo(String value) {
            addCriterion("quote_model_excel >=", value, "quoteModelExcel");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteModelExcelGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_model_excel >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelLessThan(String value) {
            addCriterion("quote_model_excel <", value, "quoteModelExcel");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteModelExcelLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_model_excel < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelLessThanOrEqualTo(String value) {
            addCriterion("quote_model_excel <=", value, "quoteModelExcel");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteModelExcelLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_model_excel <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelLike(String value) {
            addCriterion("quote_model_excel like", value, "quoteModelExcel");
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelNotLike(String value) {
            addCriterion("quote_model_excel not like", value, "quoteModelExcel");
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelIn(List<String> values) {
            addCriterion("quote_model_excel in", values, "quoteModelExcel");
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelNotIn(List<String> values) {
            addCriterion("quote_model_excel not in", values, "quoteModelExcel");
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelBetween(String value1, String value2) {
            addCriterion("quote_model_excel between", value1, value2, "quoteModelExcel");
            return (Criteria) this;
        }

        public Criteria andQuoteModelExcelNotBetween(String value1, String value2) {
            addCriterion("quote_model_excel not between", value1, value2, "quoteModelExcel");
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateIsNull() {
            addCriterion("quote_end_date is null");
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateIsNotNull() {
            addCriterion("quote_end_date is not null");
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateEqualTo(LocalDateTime value) {
            addCriterion("quote_end_date =", value, "quoteEndDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteEndDateEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_end_date = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateNotEqualTo(LocalDateTime value) {
            addCriterion("quote_end_date <>", value, "quoteEndDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteEndDateNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_end_date <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateGreaterThan(LocalDateTime value) {
            addCriterion("quote_end_date >", value, "quoteEndDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteEndDateGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_end_date > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("quote_end_date >=", value, "quoteEndDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteEndDateGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_end_date >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateLessThan(LocalDateTime value) {
            addCriterion("quote_end_date <", value, "quoteEndDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteEndDateLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_end_date < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("quote_end_date <=", value, "quoteEndDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteEndDateLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_end_date <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateIn(List<LocalDateTime> values) {
            addCriterion("quote_end_date in", values, "quoteEndDate");
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateNotIn(List<LocalDateTime> values) {
            addCriterion("quote_end_date not in", values, "quoteEndDate");
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("quote_end_date between", value1, value2, "quoteEndDate");
            return (Criteria) this;
        }

        public Criteria andQuoteEndDateNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("quote_end_date not between", value1, value2, "quoteEndDate");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeIsNull() {
            addCriterion("quote_supply_code is null");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeIsNotNull() {
            addCriterion("quote_supply_code is not null");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeEqualTo(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code =", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyCodeEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_code = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeNotEqualTo(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code <>", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyCodeNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_code <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeGreaterThan(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code >", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyCodeGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_code > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeGreaterThanOrEqualTo(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code >=", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyCodeGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_code >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeLessThan(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code <", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyCodeLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_code < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeLessThanOrEqualTo(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code <=", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyCodeLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_code <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeLike(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code like", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeNotLike(Integer[] value) {
            addQuoteSupplyCodeCriterion("quote_supply_code not like", value, "quoteSupplyCode");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeIn(List<Integer[]> values) {
            addQuoteSupplyCodeCriterion("quote_supply_code in", values, "quoteSupplyCode");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeNotIn(List<Integer[]> values) {
            addQuoteSupplyCodeCriterion("quote_supply_code not in", values, "quoteSupplyCode");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeBetween(Integer[] value1, Integer[] value2) {
            addQuoteSupplyCodeCriterion("quote_supply_code between", value1, value2, "quoteSupplyCode");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyCodeNotBetween(Integer[] value1, Integer[] value2) {
            addQuoteSupplyCodeCriterion("quote_supply_code not between", value1, value2, "quoteSupplyCode");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameIsNull() {
            addCriterion("quote_supply_name is null");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameIsNotNull() {
            addCriterion("quote_supply_name is not null");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameEqualTo(String value) {
            addCriterion("quote_supply_name =", value, "quoteSupplyName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyNameEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_name = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameNotEqualTo(String value) {
            addCriterion("quote_supply_name <>", value, "quoteSupplyName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyNameNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_name <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameGreaterThan(String value) {
            addCriterion("quote_supply_name >", value, "quoteSupplyName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyNameGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_name > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameGreaterThanOrEqualTo(String value) {
            addCriterion("quote_supply_name >=", value, "quoteSupplyName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyNameGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_name >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameLessThan(String value) {
            addCriterion("quote_supply_name <", value, "quoteSupplyName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyNameLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_name < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameLessThanOrEqualTo(String value) {
            addCriterion("quote_supply_name <=", value, "quoteSupplyName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andQuoteSupplyNameLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("quote_supply_name <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameLike(String value) {
            addCriterion("quote_supply_name like", value, "quoteSupplyName");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameNotLike(String value) {
            addCriterion("quote_supply_name not like", value, "quoteSupplyName");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameIn(List<String> values) {
            addCriterion("quote_supply_name in", values, "quoteSupplyName");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameNotIn(List<String> values) {
            addCriterion("quote_supply_name not in", values, "quoteSupplyName");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameBetween(String value1, String value2) {
            addCriterion("quote_supply_name between", value1, value2, "quoteSupplyName");
            return (Criteria) this;
        }

        public Criteria andQuoteSupplyNameNotBetween(String value1, String value2) {
            addCriterion("quote_supply_name not between", value1, value2, "quoteSupplyName");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteIsNull() {
            addCriterion("purchaser_note is null");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteIsNotNull() {
            addCriterion("purchaser_note is not null");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteEqualTo(String value) {
            addCriterion("purchaser_note =", value, "purchaserNote");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserNoteEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser_note = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteNotEqualTo(String value) {
            addCriterion("purchaser_note <>", value, "purchaserNote");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserNoteNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser_note <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteGreaterThan(String value) {
            addCriterion("purchaser_note >", value, "purchaserNote");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserNoteGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser_note > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteGreaterThanOrEqualTo(String value) {
            addCriterion("purchaser_note >=", value, "purchaserNote");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserNoteGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser_note >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteLessThan(String value) {
            addCriterion("purchaser_note <", value, "purchaserNote");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserNoteLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser_note < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteLessThanOrEqualTo(String value) {
            addCriterion("purchaser_note <=", value, "purchaserNote");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andPurchaserNoteLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("purchaser_note <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteLike(String value) {
            addCriterion("purchaser_note like", value, "purchaserNote");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteNotLike(String value) {
            addCriterion("purchaser_note not like", value, "purchaserNote");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteIn(List<String> values) {
            addCriterion("purchaser_note in", values, "purchaserNote");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteNotIn(List<String> values) {
            addCriterion("purchaser_note not in", values, "purchaserNote");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteBetween(String value1, String value2) {
            addCriterion("purchaser_note between", value1, value2, "purchaserNote");
            return (Criteria) this;
        }

        public Criteria andPurchaserNoteNotBetween(String value1, String value2) {
            addCriterion("purchaser_note not between", value1, value2, "purchaserNote");
            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(Short value) {
            addCriterion("`status` =", value, "status");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andStatusEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("`status` = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andStatusNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("`status` <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andStatusGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("`status` > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andStatusGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("`status` >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andStatusLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("`status` < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andStatusLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("`status` <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

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

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

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

        public Criteria andAddTimeIsNull() {
            addCriterion("add_time is null");
            return (Criteria) this;
        }

        public Criteria andAddTimeIsNotNull() {
            addCriterion("add_time is not null");
            return (Criteria) this;
        }

        public Criteria andAddTimeEqualTo(LocalDateTime value) {
            addCriterion("add_time =", value, "addTime");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAddTimeEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("add_time = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAddTimeNotEqualTo(LocalDateTime value) {
            addCriterion("add_time <>", value, "addTime");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAddTimeNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("add_time <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAddTimeGreaterThan(LocalDateTime value) {
            addCriterion("add_time >", value, "addTime");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAddTimeGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("add_time > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAddTimeGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("add_time >=", value, "addTime");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAddTimeGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("add_time >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAddTimeLessThan(LocalDateTime value) {
            addCriterion("add_time <", value, "addTime");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAddTimeLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("add_time < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAddTimeLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("add_time <=", value, "addTime");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andAddTimeLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("add_time <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andAddTimeIn(List<LocalDateTime> values) {
            addCriterion("add_time in", values, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeNotIn(List<LocalDateTime> values) {
            addCriterion("add_time not in", values, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("add_time between", value1, value2, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("add_time not between", value1, value2, "addTime");
            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;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andUpdateTimeEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("update_time = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andUpdateTimeNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("update_time <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andUpdateTimeGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("update_time > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andUpdateTimeGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("update_time >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andUpdateTimeLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("update_time < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andUpdateTimeLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("update_time <= ").append(column.getEscapedColumnName()).toString());
            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 andDeletedIsNull() {
            addCriterion("deleted is null");
            return (Criteria) this;
        }

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

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeletedEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("deleted = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeletedNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("deleted <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeletedGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("deleted > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeletedGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("deleted >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeletedLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("deleted < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeletedLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("deleted <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

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

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

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

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

        public Criteria andModelNameIsNull() {
            addCriterion("model_name is null");
            return (Criteria) this;
        }

        public Criteria andModelNameIsNotNull() {
            addCriterion("model_name is not null");
            return (Criteria) this;
        }

        public Criteria andModelNameEqualTo(Integer value) {
            addCriterion("model_name =", value, "modelName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andModelNameEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("model_name = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andModelNameNotEqualTo(Integer value) {
            addCriterion("model_name <>", value, "modelName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andModelNameNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("model_name <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andModelNameGreaterThan(Integer value) {
            addCriterion("model_name >", value, "modelName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andModelNameGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("model_name > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andModelNameGreaterThanOrEqualTo(Integer value) {
            addCriterion("model_name >=", value, "modelName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andModelNameGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("model_name >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andModelNameLessThan(Integer value) {
            addCriterion("model_name <", value, "modelName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andModelNameLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("model_name < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andModelNameLessThanOrEqualTo(Integer value) {
            addCriterion("model_name <=", value, "modelName");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andModelNameLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("model_name <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andModelNameIn(List<Integer> values) {
            addCriterion("model_name in", values, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameNotIn(List<Integer> values) {
            addCriterion("model_name not in", values, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameBetween(Integer value1, Integer value2) {
            addCriterion("model_name between", value1, value2, "modelName");
            return (Criteria) this;
        }

        public Criteria andModelNameNotBetween(Integer value1, Integer value2) {
            addCriterion("model_name not between", value1, value2, "modelName");
            return (Criteria) this;
        }

        public Criteria andSubmitDateIsNull() {
            addCriterion("submit_date is null");
            return (Criteria) this;
        }

        public Criteria andSubmitDateIsNotNull() {
            addCriterion("submit_date is not null");
            return (Criteria) this;
        }

        public Criteria andSubmitDateEqualTo(LocalDateTime value) {
            addCriterion("submit_date =", value, "submitDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andSubmitDateEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("submit_date = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSubmitDateNotEqualTo(LocalDateTime value) {
            addCriterion("submit_date <>", value, "submitDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andSubmitDateNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("submit_date <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSubmitDateGreaterThan(LocalDateTime value) {
            addCriterion("submit_date >", value, "submitDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andSubmitDateGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("submit_date > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSubmitDateGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("submit_date >=", value, "submitDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andSubmitDateGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("submit_date >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSubmitDateLessThan(LocalDateTime value) {
            addCriterion("submit_date <", value, "submitDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andSubmitDateLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("submit_date < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSubmitDateLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("submit_date <=", value, "submitDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andSubmitDateLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("submit_date <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andSubmitDateIn(List<LocalDateTime> values) {
            addCriterion("submit_date in", values, "submitDate");
            return (Criteria) this;
        }

        public Criteria andSubmitDateNotIn(List<LocalDateTime> values) {
            addCriterion("submit_date not in", values, "submitDate");
            return (Criteria) this;
        }

        public Criteria andSubmitDateBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("submit_date between", value1, value2, "submitDate");
            return (Criteria) this;
        }

        public Criteria andSubmitDateNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("submit_date not between", value1, value2, "submitDate");
            return (Criteria) this;
        }

        public Criteria andDeadDateIsNull() {
            addCriterion("dead_date is null");
            return (Criteria) this;
        }

        public Criteria andDeadDateIsNotNull() {
            addCriterion("dead_date is not null");
            return (Criteria) this;
        }

        public Criteria andDeadDateEqualTo(LocalDateTime value) {
            addCriterion("dead_date =", value, "deadDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeadDateEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("dead_date = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeadDateNotEqualTo(LocalDateTime value) {
            addCriterion("dead_date <>", value, "deadDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeadDateNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("dead_date <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeadDateGreaterThan(LocalDateTime value) {
            addCriterion("dead_date >", value, "deadDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeadDateGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("dead_date > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeadDateGreaterThanOrEqualTo(LocalDateTime value) {
            addCriterion("dead_date >=", value, "deadDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeadDateGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("dead_date >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeadDateLessThan(LocalDateTime value) {
            addCriterion("dead_date <", value, "deadDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeadDateLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("dead_date < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeadDateLessThanOrEqualTo(LocalDateTime value) {
            addCriterion("dead_date <=", value, "deadDate");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDeadDateLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("dead_date <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDeadDateIn(List<LocalDateTime> values) {
            addCriterion("dead_date in", values, "deadDate");
            return (Criteria) this;
        }

        public Criteria andDeadDateNotIn(List<LocalDateTime> values) {
            addCriterion("dead_date not in", values, "deadDate");
            return (Criteria) this;
        }

        public Criteria andDeadDateBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("dead_date between", value1, value2, "deadDate");
            return (Criteria) this;
        }

        public Criteria andDeadDateNotBetween(LocalDateTime value1, LocalDateTime value2) {
            addCriterion("dead_date not between", value1, value2, "deadDate");
            return (Criteria) this;
        }

        public Criteria andApproveCodeIsNull() {
            addCriterion("approve_code is null");
            return (Criteria) this;
        }

        public Criteria andApproveCodeIsNotNull() {
            addCriterion("approve_code is not null");
            return (Criteria) this;
        }

        public Criteria andApproveCodeEqualTo(Integer[] value) {
            addApproveCodeCriterion("approve_code =", value, "approveCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andApproveCodeEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("approve_code = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andApproveCodeNotEqualTo(Integer[] value) {
            addApproveCodeCriterion("approve_code <>", value, "approveCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andApproveCodeNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("approve_code <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andApproveCodeGreaterThan(Integer[] value) {
            addApproveCodeCriterion("approve_code >", value, "approveCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andApproveCodeGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("approve_code > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andApproveCodeGreaterThanOrEqualTo(Integer[] value) {
            addApproveCodeCriterion("approve_code >=", value, "approveCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andApproveCodeGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("approve_code >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andApproveCodeLessThan(Integer[] value) {
            addApproveCodeCriterion("approve_code <", value, "approveCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andApproveCodeLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("approve_code < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andApproveCodeLessThanOrEqualTo(Integer[] value) {
            addApproveCodeCriterion("approve_code <=", value, "approveCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andApproveCodeLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("approve_code <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andApproveCodeLike(Integer[] value) {
            addApproveCodeCriterion("approve_code like", value, "approveCode");
            return (Criteria) this;
        }

        public Criteria andApproveCodeNotLike(Integer[] value) {
            addApproveCodeCriterion("approve_code not like", value, "approveCode");
            return (Criteria) this;
        }

        public Criteria andApproveCodeIn(List<Integer[]> values) {
            addApproveCodeCriterion("approve_code in", values, "approveCode");
            return (Criteria) this;
        }

        public Criteria andApproveCodeNotIn(List<Integer[]> values) {
            addApproveCodeCriterion("approve_code not in", values, "approveCode");
            return (Criteria) this;
        }

        public Criteria andApproveCodeBetween(Integer[] value1, Integer[] value2) {
            addApproveCodeCriterion("approve_code between", value1, value2, "approveCode");
            return (Criteria) this;
        }

        public Criteria andApproveCodeNotBetween(Integer[] value1, Integer[] value2) {
            addApproveCodeCriterion("approve_code not between", value1, value2, "approveCode");
            return (Criteria) this;
        }

        public Criteria andDutyCodeIsNull() {
            addCriterion("duty_code is null");
            return (Criteria) this;
        }

        public Criteria andDutyCodeIsNotNull() {
            addCriterion("duty_code is not null");
            return (Criteria) this;
        }

        public Criteria andDutyCodeEqualTo(Integer value) {
            addCriterion("duty_code =", value, "dutyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyCodeEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_code = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyCodeNotEqualTo(Integer value) {
            addCriterion("duty_code <>", value, "dutyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyCodeNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_code <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyCodeGreaterThan(Integer value) {
            addCriterion("duty_code >", value, "dutyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyCodeGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_code > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyCodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("duty_code >=", value, "dutyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyCodeGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_code >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyCodeLessThan(Integer value) {
            addCriterion("duty_code <", value, "dutyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyCodeLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_code < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyCodeLessThanOrEqualTo(Integer value) {
            addCriterion("duty_code <=", value, "dutyCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyCodeLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_code <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyCodeIn(List<Integer> values) {
            addCriterion("duty_code in", values, "dutyCode");
            return (Criteria) this;
        }

        public Criteria andDutyCodeNotIn(List<Integer> values) {
            addCriterion("duty_code not in", values, "dutyCode");
            return (Criteria) this;
        }

        public Criteria andDutyCodeBetween(Integer value1, Integer value2) {
            addCriterion("duty_code between", value1, value2, "dutyCode");
            return (Criteria) this;
        }

        public Criteria andDutyCodeNotBetween(Integer value1, Integer value2) {
            addCriterion("duty_code not between", value1, value2, "dutyCode");
            return (Criteria) this;
        }

        public Criteria andCeoCodeIsNull() {
            addCriterion("ceo_code is null");
            return (Criteria) this;
        }

        public Criteria andCeoCodeIsNotNull() {
            addCriterion("ceo_code is not null");
            return (Criteria) this;
        }

        public Criteria andCeoCodeEqualTo(Integer value) {
            addCriterion("ceo_code =", value, "ceoCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoCodeEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_code = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoCodeNotEqualTo(Integer value) {
            addCriterion("ceo_code <>", value, "ceoCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoCodeNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_code <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoCodeGreaterThan(Integer value) {
            addCriterion("ceo_code >", value, "ceoCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoCodeGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_code > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoCodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("ceo_code >=", value, "ceoCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoCodeGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_code >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoCodeLessThan(Integer value) {
            addCriterion("ceo_code <", value, "ceoCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoCodeLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_code < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoCodeLessThanOrEqualTo(Integer value) {
            addCriterion("ceo_code <=", value, "ceoCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoCodeLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_code <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoCodeIn(List<Integer> values) {
            addCriterion("ceo_code in", values, "ceoCode");
            return (Criteria) this;
        }

        public Criteria andCeoCodeNotIn(List<Integer> values) {
            addCriterion("ceo_code not in", values, "ceoCode");
            return (Criteria) this;
        }

        public Criteria andCeoCodeBetween(Integer value1, Integer value2) {
            addCriterion("ceo_code between", value1, value2, "ceoCode");
            return (Criteria) this;
        }

        public Criteria andCeoCodeNotBetween(Integer value1, Integer value2) {
            addCriterion("ceo_code not between", value1, value2, "ceoCode");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceIsNull() {
            addCriterion("duty_choice is null");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceIsNotNull() {
            addCriterion("duty_choice is not null");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceEqualTo(Integer[] value) {
            addDutyChoiceCriterion("duty_choice =", value, "dutyChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyChoiceEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_choice = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyChoiceNotEqualTo(Integer[] value) {
            addDutyChoiceCriterion("duty_choice <>", value, "dutyChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyChoiceNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_choice <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyChoiceGreaterThan(Integer[] value) {
            addDutyChoiceCriterion("duty_choice >", value, "dutyChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyChoiceGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_choice > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyChoiceGreaterThanOrEqualTo(Integer[] value) {
            addDutyChoiceCriterion("duty_choice >=", value, "dutyChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyChoiceGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_choice >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyChoiceLessThan(Integer[] value) {
            addDutyChoiceCriterion("duty_choice <", value, "dutyChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyChoiceLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_choice < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyChoiceLessThanOrEqualTo(Integer[] value) {
            addDutyChoiceCriterion("duty_choice <=", value, "dutyChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andDutyChoiceLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("duty_choice <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andDutyChoiceLike(Integer[] value) {
            addDutyChoiceCriterion("duty_choice like", value, "dutyChoice");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceNotLike(Integer[] value) {
            addDutyChoiceCriterion("duty_choice not like", value, "dutyChoice");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceIn(List<Integer[]> values) {
            addDutyChoiceCriterion("duty_choice in", values, "dutyChoice");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceNotIn(List<Integer[]> values) {
            addDutyChoiceCriterion("duty_choice not in", values, "dutyChoice");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceBetween(Integer[] value1, Integer[] value2) {
            addDutyChoiceCriterion("duty_choice between", value1, value2, "dutyChoice");
            return (Criteria) this;
        }

        public Criteria andDutyChoiceNotBetween(Integer[] value1, Integer[] value2) {
            addDutyChoiceCriterion("duty_choice not between", value1, value2, "dutyChoice");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceIsNull() {
            addCriterion("ceo_choice is null");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceIsNotNull() {
            addCriterion("ceo_choice is not null");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceEqualTo(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice =", value, "ceoChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoChoiceEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_choice = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoChoiceNotEqualTo(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice <>", value, "ceoChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoChoiceNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_choice <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoChoiceGreaterThan(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice >", value, "ceoChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoChoiceGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_choice > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoChoiceGreaterThanOrEqualTo(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice >=", value, "ceoChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoChoiceGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_choice >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoChoiceLessThan(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice <", value, "ceoChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoChoiceLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_choice < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoChoiceLessThanOrEqualTo(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice <=", value, "ceoChoice");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andCeoChoiceLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("ceo_choice <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andCeoChoiceLike(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice like", value, "ceoChoice");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceNotLike(Integer[] value) {
            addCeoChoiceCriterion("ceo_choice not like", value, "ceoChoice");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceIn(List<Integer[]> values) {
            addCeoChoiceCriterion("ceo_choice in", values, "ceoChoice");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceNotIn(List<Integer[]> values) {
            addCeoChoiceCriterion("ceo_choice not in", values, "ceoChoice");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceBetween(Integer[] value1, Integer[] value2) {
            addCeoChoiceCriterion("ceo_choice between", value1, value2, "ceoChoice");
            return (Criteria) this;
        }

        public Criteria andCeoChoiceNotBetween(Integer[] value1, Integer[] value2) {
            addCeoChoiceCriterion("ceo_choice not between", value1, value2, "ceoChoice");
            return (Criteria) this;
        }

        public Criteria andToCeoIsNull() {
            addCriterion("to_ceo is null");
            return (Criteria) this;
        }

        public Criteria andToCeoIsNotNull() {
            addCriterion("to_ceo is not null");
            return (Criteria) this;
        }

        public Criteria andToCeoEqualTo(String value) {
            addCriterion("to_ceo =", value, "toCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andToCeoEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("to_ceo = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andToCeoNotEqualTo(String value) {
            addCriterion("to_ceo <>", value, "toCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andToCeoNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("to_ceo <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andToCeoGreaterThan(String value) {
            addCriterion("to_ceo >", value, "toCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andToCeoGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("to_ceo > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andToCeoGreaterThanOrEqualTo(String value) {
            addCriterion("to_ceo >=", value, "toCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andToCeoGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("to_ceo >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andToCeoLessThan(String value) {
            addCriterion("to_ceo <", value, "toCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andToCeoLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("to_ceo < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andToCeoLessThanOrEqualTo(String value) {
            addCriterion("to_ceo <=", value, "toCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andToCeoLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("to_ceo <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andToCeoLike(String value) {
            addCriterion("to_ceo like", value, "toCeo");
            return (Criteria) this;
        }

        public Criteria andToCeoNotLike(String value) {
            addCriterion("to_ceo not like", value, "toCeo");
            return (Criteria) this;
        }

        public Criteria andToCeoIn(List<String> values) {
            addCriterion("to_ceo in", values, "toCeo");
            return (Criteria) this;
        }

        public Criteria andToCeoNotIn(List<String> values) {
            addCriterion("to_ceo not in", values, "toCeo");
            return (Criteria) this;
        }

        public Criteria andToCeoBetween(String value1, String value2) {
            addCriterion("to_ceo between", value1, value2, "toCeo");
            return (Criteria) this;
        }

        public Criteria andToCeoNotBetween(String value1, String value2) {
            addCriterion("to_ceo not between", value1, value2, "toCeo");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeIsNull() {
            addCriterion("notice_code is null");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeIsNotNull() {
            addCriterion("notice_code is not null");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeEqualTo(Integer[] value) {
            addNoticeCodeCriterion("notice_code =", value, "noticeCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andNoticeCodeEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("notice_code = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNoticeCodeNotEqualTo(Integer[] value) {
            addNoticeCodeCriterion("notice_code <>", value, "noticeCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andNoticeCodeNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("notice_code <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNoticeCodeGreaterThan(Integer[] value) {
            addNoticeCodeCriterion("notice_code >", value, "noticeCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andNoticeCodeGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("notice_code > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNoticeCodeGreaterThanOrEqualTo(Integer[] value) {
            addNoticeCodeCriterion("notice_code >=", value, "noticeCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andNoticeCodeGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("notice_code >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNoticeCodeLessThan(Integer[] value) {
            addNoticeCodeCriterion("notice_code <", value, "noticeCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andNoticeCodeLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("notice_code < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNoticeCodeLessThanOrEqualTo(Integer[] value) {
            addNoticeCodeCriterion("notice_code <=", value, "noticeCode");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andNoticeCodeLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("notice_code <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andNoticeCodeLike(Integer[] value) {
            addNoticeCodeCriterion("notice_code like", value, "noticeCode");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeNotLike(Integer[] value) {
            addNoticeCodeCriterion("notice_code not like", value, "noticeCode");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeIn(List<Integer[]> values) {
            addNoticeCodeCriterion("notice_code in", values, "noticeCode");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeNotIn(List<Integer[]> values) {
            addNoticeCodeCriterion("notice_code not in", values, "noticeCode");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeBetween(Integer[] value1, Integer[] value2) {
            addNoticeCodeCriterion("notice_code between", value1, value2, "noticeCode");
            return (Criteria) this;
        }

        public Criteria andNoticeCodeNotBetween(Integer[] value1, Integer[] value2) {
            addNoticeCodeCriterion("notice_code not between", value1, value2, "noticeCode");
            return (Criteria) this;
        }

        public Criteria andIsReapproveIsNull() {
            addCriterion("is_reApprove is null");
            return (Criteria) this;
        }

        public Criteria andIsReapproveIsNotNull() {
            addCriterion("is_reApprove is not null");
            return (Criteria) this;
        }

        public Criteria andIsReapproveEqualTo(Boolean value) {
            addCriterion("is_reApprove =", value, "isReapprove");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsReapproveEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_reApprove = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsReapproveNotEqualTo(Boolean value) {
            addCriterion("is_reApprove <>", value, "isReapprove");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsReapproveNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_reApprove <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsReapproveGreaterThan(Boolean value) {
            addCriterion("is_reApprove >", value, "isReapprove");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsReapproveGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_reApprove > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsReapproveGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_reApprove >=", value, "isReapprove");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsReapproveGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_reApprove >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsReapproveLessThan(Boolean value) {
            addCriterion("is_reApprove <", value, "isReapprove");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsReapproveLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_reApprove < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsReapproveLessThanOrEqualTo(Boolean value) {
            addCriterion("is_reApprove <=", value, "isReapprove");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsReapproveLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_reApprove <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsReapproveIn(List<Boolean> values) {
            addCriterion("is_reApprove in", values, "isReapprove");
            return (Criteria) this;
        }

        public Criteria andIsReapproveNotIn(List<Boolean> values) {
            addCriterion("is_reApprove not in", values, "isReapprove");
            return (Criteria) this;
        }

        public Criteria andIsReapproveBetween(Boolean value1, Boolean value2) {
            addCriterion("is_reApprove between", value1, value2, "isReapprove");
            return (Criteria) this;
        }

        public Criteria andIsReapproveNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_reApprove not between", value1, value2, "isReapprove");
            return (Criteria) this;
        }

        public Criteria andIsCeoIsNull() {
            addCriterion("is_ceo is null");
            return (Criteria) this;
        }

        public Criteria andIsCeoIsNotNull() {
            addCriterion("is_ceo is not null");
            return (Criteria) this;
        }

        public Criteria andIsCeoEqualTo(Boolean value) {
            addCriterion("is_ceo =", value, "isCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsCeoEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_ceo = ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsCeoNotEqualTo(Boolean value) {
            addCriterion("is_ceo <>", value, "isCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsCeoNotEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_ceo <> ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsCeoGreaterThan(Boolean value) {
            addCriterion("is_ceo >", value, "isCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsCeoGreaterThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_ceo > ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsCeoGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_ceo >=", value, "isCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsCeoGreaterThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_ceo >= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsCeoLessThan(Boolean value) {
            addCriterion("is_ceo <", value, "isCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsCeoLessThanColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_ceo < ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsCeoLessThanOrEqualTo(Boolean value) {
            addCriterion("is_ceo <=", value, "isCeo");
            return (Criteria) this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andIsCeoLessThanOrEqualToColumn(LitemallQuoteBill.Column column) {
            addCriterion(new StringBuilder("is_ceo <= ").append(column.getEscapedColumnName()).toString());
            return (Criteria) this;
        }

        public Criteria andIsCeoIn(List<Boolean> values) {
            addCriterion("is_ceo in", values, "isCeo");
            return (Criteria) this;
        }

        public Criteria andIsCeoNotIn(List<Boolean> values) {
            addCriterion("is_ceo not in", values, "isCeo");
            return (Criteria) this;
        }

        public Criteria andIsCeoBetween(Boolean value1, Boolean value2) {
            addCriterion("is_ceo between", value1, value2, "isCeo");
            return (Criteria) this;
        }

        public Criteria andIsCeoNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_ceo not between", value1, value2, "isCeo");
            return (Criteria) this;
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table litemall_quote_bill
     *
     * @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 litemall_quote_bill
         *
         * @mbg.generated
         */
        private LitemallQuoteBillExample example;

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        protected Criteria(LitemallQuoteBillExample example) {
            super();
            this.example = example;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public LitemallQuoteBillExample example() {
            return this.example;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        @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 litemall_quote_bill
         *
         * @mbg.generated
         */
        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 litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria when(boolean condition, ICriteriaWhen then, ICriteriaWhen otherwise) {
            if (condition) {
                then.criteria(this);
            } else {
                otherwise.criteria(this);
            }
            return this;
        }

        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        public Criteria andLogicalDeleted(boolean deleted) {
            return deleted ? andDeletedEqualTo(LitemallQuoteBill.Deleted.IS_DELETED.value()) : andDeletedNotEqualTo(LitemallQuoteBill.Deleted.IS_DELETED.value());
        }

        @Deprecated
        public interface ICriteriaAdd {
            /**
             * This method was generated by MyBatis Generator.
             * This method corresponds to the database table litemall_quote_bill
             *
             * @mbg.generated
             */
            Criteria add(Criteria add);
        }
    }

    /**
     * This class was generated by MyBatis Generator.
     * This class corresponds to the database table litemall_quote_bill
     *
     * @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);
        }
    }

    public interface ICriteriaWhen {
        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        void criteria(Criteria criteria);
    }

    public interface IExampleWhen {
        /**
         * This method was generated by MyBatis Generator.
         * This method corresponds to the database table litemall_quote_bill
         *
         * @mbg.generated
         */
        void example(org.linlinjava.litemall.db.domain.LitemallQuoteBillExample example);
    }
}