Пример #1
0
  private void appendOrderByBuffer(StringBuffer sqlBuf, Class objClass) throws Exception {
    if (ClassTool.isNullObj(this.orderByBuf)) {
      this.orderByBuf = new StringBuffer();
    }

    this.orderByBuf.trimToSize();
    if (this.orderByBuf.length() > 0 || this.getPageDto() != null) {

      if (this.orderByBuf.length() > 0) {
        sqlBuf.append(" order by ");
        sqlBuf.append(this.orderByBuf);
      }

      if (this.getPageDto() != null) {
        DBTool.parseSortAndFilter(this.getPageDto());

        if (!StringTool.isEmpty(this.getPageDto().getSort())) {
          if (this.orderByBuf.length() == 0) {
            sqlBuf.append(" order by ");
          } else if (this.orderByBuf.length() > 0) {
            sqlBuf.append(", ");
          }

          String sort =
              ClassTool.getDBColumnNameByObjFieldName(objClass, this.getPageDto().getSort());
          if (StringTool.isEmpty(sort)) {
            sort = StringTool.translateToDBColumn(this.getPageDto().getSort());
          }
          sqlBuf.append(sort);
          sqlBuf.append(" ");
          sqlBuf.append(this.getPageDto().getDir());
        }
      }
    }
  }
Пример #2
0
  private void appendWhereBuffer(StringBuffer sqlBuf) throws Exception {
    if (ClassTool.isNullObj(this.whereBuf)) {
      this.whereBuf = new StringBuffer();
    }

    this.whereBuf.trimToSize();
    if (this.whereBuf.length() > 0 || this.getPageDto() != null) {
      if (this.getPageDto() != null) {
        DBTool.parseSortAndFilter(this.getPageDto());

        if (!StringTool.isEmpty(this.getPageDto().getFilter())) {
          this.getPageDto()
              .setFilterOperator(
                  StringTool.isEmpty(
                      this.getPageDto().getFilterOperator(), GeneralConstants.EQUAL_MARK));

          if (this.whereBuf.length() > 0) {
            whereBuf.append(" and ");
          }

          whereBuf.append(this.getPageDto().getFilter());

          whereBuf.append(" ");

          if ("like".equalsIgnoreCase(this.getPageDto().getFilterOperator())) {
            if (StringTool.isEmpty(this.getPageDto().getFilterValue().trim())) {
              this.getPageDto().setFilterOperator(GeneralConstants.EQUAL_MARK);
            }
          }

          whereBuf.append(this.getPageDto().getFilterOperator());

          if ("like".equalsIgnoreCase(this.getPageDto().getFilterOperator())
              || "not like".equalsIgnoreCase(this.getPageDto().getFilterOperator())) {
            whereBuf.append(" '%");
            whereBuf.append(this.getPageDto().getFilterValue().trim());
            whereBuf.append("%' and ");
            whereBuf.append(this.getPageDto().getFilter());
            whereBuf.append(" != ' ' ");
          } else {
            whereBuf.append(" '");
            whereBuf.append(this.getPageDto().getFilterValue().trim());
            whereBuf.append("'");

            if (StringTool.isEmpty(this.getPageDto().getFilterValue().trim())) {
              if (GeneralConstants.EQUAL_MARK.equals(this.getPageDto().getFilterOperator())) {
                whereBuf.append(" or ");
                whereBuf.append(this.getPageDto().getFilter());
                whereBuf.append(" IS NULL ");
              } else if (GeneralConstants.NOT_EQUAL_MARK.equals(
                  this.getPageDto().getFilterOperator())) {
                whereBuf.append(" and ");
                whereBuf.append(this.getPageDto().getFilter());
                whereBuf.append(" IS NOT NULL ");
              }
            }
          }
        }
      }

      if (this.whereBuf.length() > 0) {
        sqlBuf.append(" where ");
        sqlBuf.append(this.whereBuf);
      }
    }
  }