Nutz

自定义Sql + 拼接查询条件 + 分页

@Override
  public Pagination<SnAfterSalesLog> pagiByCondition(int pageNo, int pageSize, String snHex) {
    // 获取自定义sql语句
    Sql sql = getQueryRecordSqlByKey(SqlKey.LIST_ALL_WITH_SNBURNERTIME_PRODUCTNUMBER);
    // 默认查询条件
    Cnd conditionParam = Cnd.where("t.deleted_at", "=", 0);
    Cnd cndForCount = createDefaultQueryCondition();
    if (StringUtils.isNoneBlank(snHex)) {
      int sn = 0;
      try {
        sn = Integer.parseInt(snHex, 16);
      } catch (Exception e) {
        throw IgnisException.clientError("SN号转换错误");
      }
      // 设置并拼接查询条件
      conditionParam.and("t.sn", "=", sn);
      cndForCount.and(Field.SN, "=", sn);
      sql.setCondition(conditionParam);
    }
    // 设置分页
    sql.setPager(new Pager(pageNo, pageSize));
    List<SnAfterSalesLog> snAfterSalesLogs = query(sql, SnAfterSalesLog.class);
    Pagination<SnAfterSalesLog> pagination = new Pagination<>(pageNo, pageSize);
    pagination.setRecordCount(base().count(cndForCount));
    pagination.setRecords(snAfterSalesLogs);
    return pagination;
  }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 转 # https://www.cnblogs.com/easypass/archive/2010/12/ 08/...
    吕品㗊阅读 9,833评论 0 44
  • 大学的时候才接触网络,上一辈人总说我们是最好的时代,有更多的机会成就不平凡。接触网络之前,感觉自己还不错,接触之后...
    手执桔梗阅读 347评论 2 0
  • 背景 当一个App发布之后,突然发现了一个严重bug需要进行紧急修复,这时候公司各方就会忙得焦头烂额:重新打包Ap...
    灬丨墨殇丶阅读 768评论 0 4
  • 一个人若是出远门,去异地谋生,那种感觉总有凄凉,似乎从此背井离乡,被迫认他乡作故乡了。而一个人来到一座陌生的城市,...
    HF的平方阅读 441评论 0 1
  • (其一)等 文/甜点 图书馆门口的雨 像一场交通意外 轻易地困住一群男孩女孩 他们撑着沉重的大脑 空着虚无的手臂 ...
    思甜_根号2阅读 597评论 0 2