gt:             addCriterion("optimistic in", values, "optimistic");
context: package com.topisv.wms.basic.po;
  
  import java.util.ArrayList;
  import java.util.Date;
  import java.util.List;
  
  public class CountPOExample {
      protected String orderByClause;
  
      protected boolean distinct;
  
      protected List<Criteria> oredCriteria;
  
      public CountPOExample() {
          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 andOptimisticIsNull() {
              addCriterion("optimistic is null");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticIsNotNull() {
              addCriterion("optimistic is not null");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticEqualTo(Long value) {
              addCriterion("optimistic =", value, "optimistic");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticNotEqualTo(Long value) {
              addCriterion("optimistic <>", value, "optimistic");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticGreaterThan(Long value) {
              addCriterion("optimistic >", value, "optimistic");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticGreaterThanOrEqualTo(Long value) {
              addCriterion("optimistic >=", value, "optimistic");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticLessThan(Long value) {
              addCriterion("optimistic <", value, "optimistic");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticLessThanOrEqualTo(Long value) {
              addCriterion("optimistic <=", value, "optimistic");
              return (Criteria) this;
          }
  
          public Criteria andOptimisticIn(List<Long> values) {
  