content: package com.cf.pay.domain;
  
  import java.math.BigDecimal;
  import java.util.ArrayList;
  import java.util.List;
  
  public class CfCouponExample {
      protected String orderByClause;
  
      protected boolean distinct;
  
      protected List<Criteria> oredCriteria;
  
      public CfCouponExample() {
          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 andIdIsNull() {
              addCriterion("id is null");
              return (Criteria) this;
          }
  
          public Criteria andIdIsNotNull() {
              addCriterion("id is not null");
              return (Criteria) this;
          }
  
          public Criteria andIdEqualTo(String value) {
              addCriterion("id =", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdNotEqualTo(String value) {
              addCriterion("id <>", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdGreaterThan(String value) {
              addCriterion("id >", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdGreaterThanOrEqualTo(String value) {
              addCriterion("id >=", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdLessThan(String value) {
              addCriterion("id <", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdLessThanOrEqualTo(String value) {
              addCriterion("id <=", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdLike(String value) {
              addCriterion("id like", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdNotLike(String value) {
              addCriterion("id not like", value, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdIn(List<String> values) {
              addCriterion("id in", values, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdNotIn(List<String> values) {
              addCriterion("id not in", values, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdBetween(String value1, String value2) {
              addCriterion("id between", value1, value2, "id");
              return (Criteria) this;
          }
  
          public Criteria andIdNotBetween(String value1, String value2) {
              addCriterion("id not between", value1, value2, "id");
              return (Criteria) this;
          }
  
          public Criteria andToUidIsNull() {
              addCriterion("to_uid is null");
              return (Criteria) this;
          }
  
          public Criteria andToUidIsNotNull() {
              addCriterion("to_uid is not null");
              return (Criteria) this;
          }
  
          public Criteria andToUidEqualTo(String value) {
              addCriterion("to_uid =", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidNotEqualTo(String value) {
              addCriterion("to_uid <>", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidGreaterThan(String value) {
              addCriterion("to_uid >", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidGreaterThanOrEqualTo(String value) {
              addCriterion("to_uid >=", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidLessThan(String value) {
              addCriterion("to_uid <", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidLessThanOrEqualTo(String value) {
              addCriterion("to_uid <=", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidLike(String value) {
              addCriterion("to_uid like", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidNotLike(String value) {
              addCriterion("to_uid not like", value, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidIn(List<String> values) {
              addCriterion("to_uid in", values, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidNotIn(List<String> values) {
              addCriterion("to_uid not in", values, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidBetween(String value1, String value2) {
              addCriterion("to_uid between", value1, value2, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andToUidNotBetween(String value1, String value2) {
              addCriterion("to_uid not between", value1, value2, "toUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidIsNull() {
              addCriterion("from_uid is null");
              return (Criteria) this;
          }
  
          public Criteria andFromUidIsNotNull() {
              addCriterion("from_uid is not null");
              return (Criteria) this;
          }
  
          public Criteria andFromUidEqualTo(String value) {
              addCriterion("from_uid =", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidNotEqualTo(String value) {
              addCriterion("from_uid <>", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidGreaterThan(String value) {
              addCriterion("from_uid >", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidGreaterThanOrEqualTo(String value) {
              addCriterion("from_uid >=", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidLessThan(String value) {
              addCriterion("from_uid <", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidLessThanOrEqualTo(String value) {
              addCriterion("from_uid <=", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidLike(String value) {
              addCriterion("from_uid like", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidNotLike(String value) {
              addCriterion("from_uid not like", value, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidIn(List<String> values) {
              addCriterion("from_uid in", values, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidNotIn(List<String> values) {
              addCriterion("from_uid not in", values, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidBetween(String value1, String value2) {
              addCriterion("from_uid between", value1, value2, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andFromUidNotBetween(String value1, String value2) {
              addCriterion("from_uid not between", value1, value2, "fromUid");
              return (Criteria) this;
          }
  
          public Criteria andScenesIsNull() {
              addCriterion("scenes is null");
              return (Criteria) this;
          }
  
          public Criteria andScenesIsNotNull() {
              addCriterion("scenes is not null");
              return (Criteria) this;
          }
  
          public Criteria andScenesEqualTo(Byte value) {
              addCriterion("scenes =", value, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesNotEqualTo(Byte value) {
              addCriterion("scenes <>", value, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesGreaterThan(Byte value) {
              addCriterion("scenes >", value, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesGreaterThanOrEqualTo(Byte value) {
              addCriterion("scenes >=", value, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesLessThan(Byte value) {
              addCriterion("scenes <", value, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesLessThanOrEqualTo(Byte value) {
              addCriterion("scenes <=", value, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesIn(List<Byte> values) {
              addCriterion("scenes in", values, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesNotIn(List<Byte> values) {
              addCriterion("scenes not in", values, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesBetween(Byte value1, Byte value2) {
              addCriterion("scenes between", value1, value2, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andScenesNotBetween(Byte value1, Byte value2) {
              addCriterion("scenes not between", value1, value2, "scenes");
              return (Criteria) this;
          }
  
          public Criteria andShopIdIsNull() {
              addCriterion("shop_id is null");
              return (Criteria) this;
          }
  
          public Criteria andShopIdIsNotNull() {
              addCriterion("shop_id is not null");
              return (Criteria) this;
          }
  
          public Criteria andShopIdEqualTo(String value) {
              addCriterion("shop_id =", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdNotEqualTo(String value) {
              addCriterion("shop_id <>", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdGreaterThan(String value) {
              addCriterion("shop_id >", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdGreaterThanOrEqualTo(String value) {
              addCriterion("shop_id >=", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdLessThan(String value) {
              addCriterion("shop_id <", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdLessThanOrEqualTo(String value) {
              addCriterion("shop_id <=", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdLike(String value) {
              addCriterion("shop_id like", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdNotLike(String value) {
              addCriterion("shop_id not like", value, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdIn(List<String> values) {
              addCriterion("shop_id in", values, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdNotIn(List<String> values) {
              addCriterion("shop_id not in", values, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdBetween(String value1, String value2) {
              addCriterion("shop_id between", value1, value2, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andShopIdNotBetween(String value1, String value2) {
              addCriterion("shop_id not between", value1, value2, "shopId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdIsNull() {
              addCriterion("goods_id is null");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdIsNotNull() {
              addCriterion("goods_id is not null");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdEqualTo(String value) {
              addCriterion("goods_id =", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdNotEqualTo(String value) {
              addCriterion("goods_id <>", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdGreaterThan(String value) {
              addCriterion("goods_id >", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdGreaterThanOrEqualTo(String value) {
              addCriterion("goods_id >=", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdLessThan(String value) {
              addCriterion("goods_id <", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdLessThanOrEqualTo(String value) {
              addCriterion("goods_id <=", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdLike(String value) {
              addCriterion("goods_id like", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdNotLike(String value) {
              addCriterion("goods_id not like", value, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdIn(List<String> values) {
              addCriterion("goods_id in", values, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdNotIn(List<String> values) {
              addCriterion("goods_id not in", values, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdBetween(String value1, String value2) {
              addCriterion("goods_id between", value1, value2, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andGoodsIdNotBetween(String value1, String value2) {
              addCriterion("goods_id not between", value1, value2, "goodsId");
              return (Criteria) this;
          }
  
          public Criteria andDenominationIsNull() {
              addCriterion("denomination is null");
              return (Criteria) this;
          }
  
          public Criteria andDenominationIsNotNull() {
              addCriterion("denomination is not null");
              return (Criteria) this;
          }
  
          public Criteria andDenominationEqualTo(BigDecimal value) {
              addCriterion("denomination =", value, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationNotEqualTo(BigDecimal value) {
              addCriterion("denomination <>", value, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationGreaterThan(BigDecimal value) {
              addCriterion("denomination >", value, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationGreaterThanOrEqualTo(BigDecimal value) {
              addCriterion("denomination >=", value, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationLessThan(BigDecimal value) {
              addCriterion("denomination <", value, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationLessThanOrEqualTo(BigDecimal value) {
              addCriterion("denomination <=", value, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationIn(List<BigDecimal> values) {
              addCriterion("denomination in", values, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationNotIn(List<BigDecimal> values) {
              addCriterion("denomination not in", values, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationBetween(BigDecimal value1, BigDecimal value2) {
              addCriterion("denomination between", value1, value2, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andDenominationNotBetween(BigDecimal value1, BigDecimal value2) {
              addCriterion("denomination not between", value1, value2, "denomination");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceIsNull() {
              addCriterion("threshold_price is null");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceIsNotNull() {
              addCriterion("threshold_price is not null");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceEqualTo(BigDecimal value) {
              addCriterion("threshold_price =", value, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceNotEqualTo(BigDecimal value) {
              addCriterion("threshold_price <>", value, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceGreaterThan(BigDecimal value) {
              addCriterion("threshold_price >", value, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceGreaterThanOrEqualTo(BigDecimal value) {
              addCriterion("threshold_price >=", value, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceLessThan(BigDecimal value) {
              addCriterion("threshold_price <", value, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceLessThanOrEqualTo(BigDecimal value) {
              addCriterion("threshold_price <=", value, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceIn(List<BigDecimal> values) {
              addCriterion("threshold_price in", values, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceNotIn(List<BigDecimal> values) {
              addCriterion("threshold_price not in", values, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceBetween(BigDecimal value1, BigDecimal value2) {
              addCriterion("threshold_price between", value1, value2, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andThresholdPriceNotBetween(BigDecimal value1, BigDecimal value2) {
              addCriterion("threshold_price not between", value1, value2, "thresholdPrice");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeIsNull() {
              addCriterion("effective_time is null");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeIsNotNull() {
              addCriterion("effective_time is not null");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeEqualTo(Long value) {
              addCriterion("effective_time =", value, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeNotEqualTo(Long value) {
              addCriterion("effective_time <>", value, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeGreaterThan(Long value) {
              addCriterion("effective_time >", value, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeGreaterThanOrEqualTo(Long value) {
              addCriterion("effective_time >=", value, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeLessThan(Long value) {
              addCriterion("effective_time <", value, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeLessThanOrEqualTo(Long value) {
              addCriterion("effective_time <=", value, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeIn(List<Long> values) {
              addCriterion("effective_time in", values, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeNotIn(List<Long> values) {
              addCriterion("effective_time not in", values, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeBetween(Long value1, Long value2) {
              addCriterion("effective_time between", value1, value2, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andEffectiveTimeNotBetween(Long value1, Long value2) {
              addCriterion("effective_time not between", value1, value2, "effectiveTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeIsNull() {
              addCriterion("expire_time is null");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeIsNotNull() {
              addCriterion("expire_time is not null");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeEqualTo(Long value) {
              addCriterion("expire_time =", value, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeNotEqualTo(Long value) {
              addCriterion("expire_time <>", value, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeGreaterThan(Long value) {
              addCriterion("expire_time >", value, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeGreaterThanOrEqualTo(Long value) {
              addCriterion("expire_time >=", value, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeLessThan(Long value) {
              addCriterion("expire_time <", value, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeLessThanOrEqualTo(Long value) {
              addCriterion("expire_time <=", value, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeIn(List<Long> values) {
              addCriterion("expire_time in", values, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeNotIn(List<Long> values) {
              addCriterion("expire_time not in", values, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeBetween(Long value1, Long value2) {
              addCriterion("expire_time between", value1, value2, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andExpireTimeNotBetween(Long value1, Long value2) {
              addCriterion("expire_time not between", value1, value2, "expireTime");
              return (Criteria) this;
          }
  
          public Criteria andStatusIsNull() {
              addCriterion("status is null");
              return (Criteria) this;
          }
  
          public Criteria andStatusIsNotNull() {
              addCriterion("status is not null");
              return (Criteria) this;
          }
  
          public Criteria andStatusEqualTo(Byte value) {
              addCriterion("status =", value, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusNotEqualTo(Byte value) {
              addCriterion("status <>", value, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusGreaterThan(Byte value) {
              addCriterion("status >", value, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusGreaterThanOrEqualTo(Byte value) {
              addCriterion("status >=", value, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusLessThan(Byte value) {
              addCriterion("status <", value, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusLessThanOrEqualTo(Byte value) {
              addCriterion("status <=", value, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusIn(List<Byte> values) {
              addCriterion("status in", values, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusNotIn(List<Byte> values) {
              addCriterion("status not in", values, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusBetween(Byte value1, Byte value2) {
              addCriterion("status between", value1, value2, "status");
              return (Criteria) this;
          }
  
          public Criteria andStatusNotBetween(Byte value1, Byte value2) {
              addCriterion("status not between", value1, value2, "status");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeIsNull() {
              addCriterion("create_time is null");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeIsNotNull() {
              addCriterion("create_time is not null");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeEqualTo(Long value) {
              addCriterion("create_time =", value, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeNotEqualTo(Long value) {
              addCriterion("create_time <>", value, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeGreaterThan(Long value) {
              addCriterion("create_time >", value, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeGreaterThanOrEqualTo(Long value) {
              addCriterion("create_time >=", value, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeLessThan(Long value) {
              addCriterion("create_time <", value, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeLessThanOrEqualTo(Long value) {
              addCriterion("create_time <=", value, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeIn(List<Long> values) {
              addCriterion("create_time in", values, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeNotIn(List<Long> values) {
              addCriterion("create_time not in", values, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeBetween(Long value1, Long value2) {
              addCriterion("create_time between", value1, value2, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andCreateTimeNotBetween(Long value1, Long value2) {
              addCriterion("create_time not between", value1, value2, "createTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeIsNull() {
              addCriterion("use_time is null");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeIsNotNull() {
              addCriterion("use_time is not null");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeEqualTo(Long value) {
              addCriterion("use_time =", value, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeNotEqualTo(Long value) {
              addCriterion("use_time <>", value, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeGreaterThan(Long value) {
              addCriterion("use_time >", value, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeGreaterThanOrEqualTo(Long value) {
              addCriterion("use_time >=", value, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeLessThan(Long value) {
              addCriterion("use_time <", value, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeLessThanOrEqualTo(Long value) {
              addCriterion("use_time <=", value, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeIn(List<Long> values) {
              addCriterion("use_time in", values, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeNotIn(List<Long> values) {
              addCriterion("use_time not in", values, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeBetween(Long value1, Long value2) {
              addCriterion("use_time between", value1, value2, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andUseTimeNotBetween(Long value1, Long value2) {
              addCriterion("use_time not between", value1, value2, "useTime");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedIsNull() {
              addCriterion("amount_used is null");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedIsNotNull() {
              addCriterion("amount_used is not null");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedEqualTo(BigDecimal value) {
              addCriterion("amount_used =", value, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedNotEqualTo(BigDecimal value) {
              addCriterion("amount_used <>", value, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedGreaterThan(BigDecimal value) {
              addCriterion("amount_used >", value, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedGreaterThanOrEqualTo(BigDecimal value) {
              addCriterion("amount_used >=", value, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedLessThan(BigDecimal value) {
              addCriterion("amount_used <", value, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedLessThanOrEqualTo(BigDecimal value) {
              addCriterion("amount_used <=", value, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedIn(List<BigDecimal> values) {
              addCriterion("amount_used in", values, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedNotIn(List<BigDecimal> values) {
              addCriterion("amount_used not in", values, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedBetween(BigDecimal value1, BigDecimal value2) {
              addCriterion("amount_used between", value1, value2, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andAmountUsedNotBetween(BigDecimal value1, BigDecimal value2) {
              addCriterion("amount_used not between", value1, value2, "amountUsed");
              return (Criteria) this;
          }
  
          public Criteria andTypeIsNull() {
              addCriterion("type is null");
              return (Criteria) this;
          }
  
          public Criteria andTypeIsNotNull() {
              addCriterion("type is not null");
              return (Criteria) this;
          }
  
          public Criteria andTypeEqualTo(String value) {
              addCriterion("type =", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeNotEqualTo(String value) {
              addCriterion("type <>", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeGreaterThan(String value) {
              addCriterion("type >", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeGreaterThanOrEqualTo(String value) {
              addCriterion("type >=", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeLessThan(String value) {
              addCriterion("type <", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeLessThanOrEqualTo(String value) {
              addCriterion("type <=", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeLike(String value) {
              addCriterion("type like", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeNotLike(String value) {
              addCriterion("type not like", value, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeIn(List<String> values) {
              addCriterion("type in", values, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeNotIn(List<String> values) {
              addCriterion("type not in", values, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeBetween(String value1, String value2) {
              addCriterion("type between", value1, value2, "type");
              return (Criteria) this;
          }
  
          public Criteria andTypeNotBetween(String value1, String value2) {
              addCriterion("type not between", value1, value2, "type");
              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);
          }
      }
  }