package com.dhcc.finance.main.domain;

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

public class CwBdAccassitemExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

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

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

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

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

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

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

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

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

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

        public Criteria andPkAccassitemIsNull() {
            addCriterion("PK_ACCASSITEM is null");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemIsNotNull() {
            addCriterion("PK_ACCASSITEM is not null");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemEqualTo(String value) {
            addCriterion("PK_ACCASSITEM =", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemNotEqualTo(String value) {
            addCriterion("PK_ACCASSITEM <>", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemGreaterThan(String value) {
            addCriterion("PK_ACCASSITEM >", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemGreaterThanOrEqualTo(String value) {
            addCriterion("PK_ACCASSITEM >=", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemLessThan(String value) {
            addCriterion("PK_ACCASSITEM <", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemLessThanOrEqualTo(String value) {
            addCriterion("PK_ACCASSITEM <=", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemLike(String value) {
            addCriterion("PK_ACCASSITEM like", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemNotLike(String value) {
            addCriterion("PK_ACCASSITEM not like", value, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemIn(List<String> values) {
            addCriterion("PK_ACCASSITEM in", values, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemNotIn(List<String> values) {
            addCriterion("PK_ACCASSITEM not in", values, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemBetween(String value1, String value2) {
            addCriterion("PK_ACCASSITEM between", value1, value2, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andPkAccassitemNotBetween(String value1, String value2) {
            addCriterion("PK_ACCASSITEM not between", value1, value2, "pkAccassitem");
            return (Criteria) this;
        }

        public Criteria andCodeIsNull() {
            addCriterion("CODE is null");
            return (Criteria) this;
        }

        public Criteria andCodeIsNotNull() {
            addCriterion("CODE is not null");
            return (Criteria) this;
        }

        public Criteria andCodeEqualTo(String value) {
            addCriterion("CODE =", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotEqualTo(String value) {
            addCriterion("CODE <>", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThan(String value) {
            addCriterion("CODE >", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThanOrEqualTo(String value) {
            addCriterion("CODE >=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThan(String value) {
            addCriterion("CODE <", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThanOrEqualTo(String value) {
            addCriterion("CODE <=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLike(String value) {
            addCriterion("CODE like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotLike(String value) {
            addCriterion("CODE not like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeIn(List<String> values) {
            addCriterion("CODE in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotIn(List<String> values) {
            addCriterion("CODE not in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeBetween(String value1, String value2) {
            addCriterion("CODE between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotBetween(String value1, String value2) {
            addCriterion("CODE not between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("NAME is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("NAME is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("NAME =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("NAME <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("NAME >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("NAME >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("NAME <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("NAME <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("NAME like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("NAME not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("NAME in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("NAME not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("NAME between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("NAME not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andTablecodeIsNull() {
            addCriterion("TABLECODE is null");
            return (Criteria) this;
        }

        public Criteria andTablecodeIsNotNull() {
            addCriterion("TABLECODE is not null");
            return (Criteria) this;
        }

        public Criteria andTablecodeEqualTo(String value) {
            addCriterion("TABLECODE =", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeNotEqualTo(String value) {
            addCriterion("TABLECODE <>", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeGreaterThan(String value) {
            addCriterion("TABLECODE >", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeGreaterThanOrEqualTo(String value) {
            addCriterion("TABLECODE >=", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeLessThan(String value) {
            addCriterion("TABLECODE <", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeLessThanOrEqualTo(String value) {
            addCriterion("TABLECODE <=", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeLike(String value) {
            addCriterion("TABLECODE like", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeNotLike(String value) {
            addCriterion("TABLECODE not like", value, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeIn(List<String> values) {
            addCriterion("TABLECODE in", values, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeNotIn(List<String> values) {
            addCriterion("TABLECODE not in", values, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeBetween(String value1, String value2) {
            addCriterion("TABLECODE between", value1, value2, "tablecode");
            return (Criteria) this;
        }

        public Criteria andTablecodeNotBetween(String value1, String value2) {
            addCriterion("TABLECODE not between", value1, value2, "tablecode");
            return (Criteria) this;
        }

        public Criteria andPkfieldIsNull() {
            addCriterion("PKFIELD is null");
            return (Criteria) this;
        }

        public Criteria andPkfieldIsNotNull() {
            addCriterion("PKFIELD is not null");
            return (Criteria) this;
        }

        public Criteria andPkfieldEqualTo(String value) {
            addCriterion("PKFIELD =", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldNotEqualTo(String value) {
            addCriterion("PKFIELD <>", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldGreaterThan(String value) {
            addCriterion("PKFIELD >", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldGreaterThanOrEqualTo(String value) {
            addCriterion("PKFIELD >=", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldLessThan(String value) {
            addCriterion("PKFIELD <", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldLessThanOrEqualTo(String value) {
            addCriterion("PKFIELD <=", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldLike(String value) {
            addCriterion("PKFIELD like", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldNotLike(String value) {
            addCriterion("PKFIELD not like", value, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldIn(List<String> values) {
            addCriterion("PKFIELD in", values, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldNotIn(List<String> values) {
            addCriterion("PKFIELD not in", values, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldBetween(String value1, String value2) {
            addCriterion("PKFIELD between", value1, value2, "pkfield");
            return (Criteria) this;
        }

        public Criteria andPkfieldNotBetween(String value1, String value2) {
            addCriterion("PKFIELD not between", value1, value2, "pkfield");
            return (Criteria) this;
        }

        public Criteria andCodefieldIsNull() {
            addCriterion("CODEFIELD is null");
            return (Criteria) this;
        }

        public Criteria andCodefieldIsNotNull() {
            addCriterion("CODEFIELD is not null");
            return (Criteria) this;
        }

        public Criteria andCodefieldEqualTo(String value) {
            addCriterion("CODEFIELD =", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldNotEqualTo(String value) {
            addCriterion("CODEFIELD <>", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldGreaterThan(String value) {
            addCriterion("CODEFIELD >", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldGreaterThanOrEqualTo(String value) {
            addCriterion("CODEFIELD >=", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldLessThan(String value) {
            addCriterion("CODEFIELD <", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldLessThanOrEqualTo(String value) {
            addCriterion("CODEFIELD <=", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldLike(String value) {
            addCriterion("CODEFIELD like", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldNotLike(String value) {
            addCriterion("CODEFIELD not like", value, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldIn(List<String> values) {
            addCriterion("CODEFIELD in", values, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldNotIn(List<String> values) {
            addCriterion("CODEFIELD not in", values, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldBetween(String value1, String value2) {
            addCriterion("CODEFIELD between", value1, value2, "codefield");
            return (Criteria) this;
        }

        public Criteria andCodefieldNotBetween(String value1, String value2) {
            addCriterion("CODEFIELD not between", value1, value2, "codefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldIsNull() {
            addCriterion("NAMEFIELD is null");
            return (Criteria) this;
        }

        public Criteria andNamefieldIsNotNull() {
            addCriterion("NAMEFIELD is not null");
            return (Criteria) this;
        }

        public Criteria andNamefieldEqualTo(String value) {
            addCriterion("NAMEFIELD =", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldNotEqualTo(String value) {
            addCriterion("NAMEFIELD <>", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldGreaterThan(String value) {
            addCriterion("NAMEFIELD >", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldGreaterThanOrEqualTo(String value) {
            addCriterion("NAMEFIELD >=", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldLessThan(String value) {
            addCriterion("NAMEFIELD <", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldLessThanOrEqualTo(String value) {
            addCriterion("NAMEFIELD <=", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldLike(String value) {
            addCriterion("NAMEFIELD like", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldNotLike(String value) {
            addCriterion("NAMEFIELD not like", value, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldIn(List<String> values) {
            addCriterion("NAMEFIELD in", values, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldNotIn(List<String> values) {
            addCriterion("NAMEFIELD not in", values, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldBetween(String value1, String value2) {
            addCriterion("NAMEFIELD between", value1, value2, "namefield");
            return (Criteria) this;
        }

        public Criteria andNamefieldNotBetween(String value1, String value2) {
            addCriterion("NAMEFIELD not between", value1, value2, "namefield");
            return (Criteria) this;
        }

        public Criteria andFiltersqlIsNull() {
            addCriterion("FILTERSQL is null");
            return (Criteria) this;
        }

        public Criteria andFiltersqlIsNotNull() {
            addCriterion("FILTERSQL is not null");
            return (Criteria) this;
        }

        public Criteria andFiltersqlEqualTo(String value) {
            addCriterion("FILTERSQL =", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlNotEqualTo(String value) {
            addCriterion("FILTERSQL <>", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlGreaterThan(String value) {
            addCriterion("FILTERSQL >", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlGreaterThanOrEqualTo(String value) {
            addCriterion("FILTERSQL >=", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlLessThan(String value) {
            addCriterion("FILTERSQL <", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlLessThanOrEqualTo(String value) {
            addCriterion("FILTERSQL <=", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlLike(String value) {
            addCriterion("FILTERSQL like", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlNotLike(String value) {
            addCriterion("FILTERSQL not like", value, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlIn(List<String> values) {
            addCriterion("FILTERSQL in", values, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlNotIn(List<String> values) {
            addCriterion("FILTERSQL not in", values, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlBetween(String value1, String value2) {
            addCriterion("FILTERSQL between", value1, value2, "filtersql");
            return (Criteria) this;
        }

        public Criteria andFiltersqlNotBetween(String value1, String value2) {
            addCriterion("FILTERSQL not between", value1, value2, "filtersql");
            return (Criteria) this;
        }

        public Criteria andAddressIsNull() {
            addCriterion("ADDRESS is null");
            return (Criteria) this;
        }

        public Criteria andAddressIsNotNull() {
            addCriterion("ADDRESS is not null");
            return (Criteria) this;
        }

        public Criteria andAddressEqualTo(String value) {
            addCriterion("ADDRESS =", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotEqualTo(String value) {
            addCriterion("ADDRESS <>", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThan(String value) {
            addCriterion("ADDRESS >", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressGreaterThanOrEqualTo(String value) {
            addCriterion("ADDRESS >=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThan(String value) {
            addCriterion("ADDRESS <", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLessThanOrEqualTo(String value) {
            addCriterion("ADDRESS <=", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressLike(String value) {
            addCriterion("ADDRESS like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotLike(String value) {
            addCriterion("ADDRESS not like", value, "address");
            return (Criteria) this;
        }

        public Criteria andAddressIn(List<String> values) {
            addCriterion("ADDRESS in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotIn(List<String> values) {
            addCriterion("ADDRESS not in", values, "address");
            return (Criteria) this;
        }

        public Criteria andAddressBetween(String value1, String value2) {
            addCriterion("ADDRESS between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andAddressNotBetween(String value1, String value2) {
            addCriterion("ADDRESS not between", value1, value2, "address");
            return (Criteria) this;
        }

        public Criteria andEnablestateIsNull() {
            addCriterion("ENABLESTATE is null");
            return (Criteria) this;
        }

        public Criteria andEnablestateIsNotNull() {
            addCriterion("ENABLESTATE is not null");
            return (Criteria) this;
        }

        public Criteria andEnablestateEqualTo(String value) {
            addCriterion("ENABLESTATE =", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateNotEqualTo(String value) {
            addCriterion("ENABLESTATE <>", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateGreaterThan(String value) {
            addCriterion("ENABLESTATE >", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateGreaterThanOrEqualTo(String value) {
            addCriterion("ENABLESTATE >=", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateLessThan(String value) {
            addCriterion("ENABLESTATE <", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateLessThanOrEqualTo(String value) {
            addCriterion("ENABLESTATE <=", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateLike(String value) {
            addCriterion("ENABLESTATE like", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateNotLike(String value) {
            addCriterion("ENABLESTATE not like", value, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateIn(List<String> values) {
            addCriterion("ENABLESTATE in", values, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateNotIn(List<String> values) {
            addCriterion("ENABLESTATE not in", values, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateBetween(String value1, String value2) {
            addCriterion("ENABLESTATE between", value1, value2, "enablestate");
            return (Criteria) this;
        }

        public Criteria andEnablestateNotBetween(String value1, String value2) {
            addCriterion("ENABLESTATE not between", value1, value2, "enablestate");
            return (Criteria) this;
        }

        public Criteria andUseStateIsNull() {
            addCriterion("USE_STATE is null");
            return (Criteria) this;
        }

        public Criteria andUseStateIsNotNull() {
            addCriterion("USE_STATE is not null");
            return (Criteria) this;
        }

        public Criteria andUseStateEqualTo(String value) {
            addCriterion("USE_STATE =", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateNotEqualTo(String value) {
            addCriterion("USE_STATE <>", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateGreaterThan(String value) {
            addCriterion("USE_STATE >", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateGreaterThanOrEqualTo(String value) {
            addCriterion("USE_STATE >=", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateLessThan(String value) {
            addCriterion("USE_STATE <", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateLessThanOrEqualTo(String value) {
            addCriterion("USE_STATE <=", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateLike(String value) {
            addCriterion("USE_STATE like", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateNotLike(String value) {
            addCriterion("USE_STATE not like", value, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateIn(List<String> values) {
            addCriterion("USE_STATE in", values, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateNotIn(List<String> values) {
            addCriterion("USE_STATE not in", values, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateBetween(String value1, String value2) {
            addCriterion("USE_STATE between", value1, value2, "useState");
            return (Criteria) this;
        }

        public Criteria andUseStateNotBetween(String value1, String value2) {
            addCriterion("USE_STATE not between", value1, value2, "useState");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNull() {
            addCriterion("CREATE_USER is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNotNull() {
            addCriterion("CREATE_USER is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualTo(String value) {
            addCriterion("CREATE_USER =", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualTo(String value) {
            addCriterion("CREATE_USER <>", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThan(String value) {
            addCriterion("CREATE_USER >", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("CREATE_USER >=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThan(String value) {
            addCriterion("CREATE_USER <", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualTo(String value) {
            addCriterion("CREATE_USER <=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLike(String value) {
            addCriterion("CREATE_USER like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotLike(String value) {
            addCriterion("CREATE_USER not like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIn(List<String> values) {
            addCriterion("CREATE_USER in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotIn(List<String> values) {
            addCriterion("CREATE_USER not in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserBetween(String value1, String value2) {
            addCriterion("CREATE_USER between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotBetween(String value1, String value2) {
            addCriterion("CREATE_USER not between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("CREATE_TIME is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("CREATE_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("CREATE_TIME =", value, "createTime");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("CREATE_TIME not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNull() {
            addCriterion("UPDATE_USER is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNotNull() {
            addCriterion("UPDATE_USER is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserEqualTo(String value) {
            addCriterion("UPDATE_USER =", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotEqualTo(String value) {
            addCriterion("UPDATE_USER <>", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThan(String value) {
            addCriterion("UPDATE_USER >", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThanOrEqualTo(String value) {
            addCriterion("UPDATE_USER >=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThan(String value) {
            addCriterion("UPDATE_USER <", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThanOrEqualTo(String value) {
            addCriterion("UPDATE_USER <=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLike(String value) {
            addCriterion("UPDATE_USER like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotLike(String value) {
            addCriterion("UPDATE_USER not like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIn(List<String> values) {
            addCriterion("UPDATE_USER in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotIn(List<String> values) {
            addCriterion("UPDATE_USER not in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserBetween(String value1, String value2) {
            addCriterion("UPDATE_USER between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotBetween(String value1, String value2) {
            addCriterion("UPDATE_USER not between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("UPDATE_TIME is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("UPDATE_TIME is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("UPDATE_TIME =", value, "updateTime");
            return (Criteria) this;
        }

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

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

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

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

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

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

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

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

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("UPDATE_TIME not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNull() {
            addCriterion("REMARK is null");
            return (Criteria) this;
        }

        public Criteria andRemarkIsNotNull() {
            addCriterion("REMARK is not null");
            return (Criteria) this;
        }

        public Criteria andRemarkEqualTo(String value) {
            addCriterion("REMARK =", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotEqualTo(String value) {
            addCriterion("REMARK <>", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThan(String value) {
            addCriterion("REMARK >", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("REMARK >=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThan(String value) {
            addCriterion("REMARK <", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLessThanOrEqualTo(String value) {
            addCriterion("REMARK <=", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkLike(String value) {
            addCriterion("REMARK like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotLike(String value) {
            addCriterion("REMARK not like", value, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkIn(List<String> values) {
            addCriterion("REMARK in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotIn(List<String> values) {
            addCriterion("REMARK not in", values, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkBetween(String value1, String value2) {
            addCriterion("REMARK between", value1, value2, "remark");
            return (Criteria) this;
        }

        public Criteria andRemarkNotBetween(String value1, String value2) {
            addCriterion("REMARK not between", value1, value2, "remark");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

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