rk
7 小时以前 4f4538356403d620b9bd510fd45729a251291942
server/services/src/main/java/com/doumee/service/business/impl/ReportServiceImpl.java
@@ -433,6 +433,8 @@
        IPage<OperationOrderVO> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        OperationOrderQueryDTO model = pageWrap.getModel() == null
                ? new OperationOrderQueryDTO() : pageWrap.getModel();
        // 租用中(status=1):需过滤掉无骑行记录的订单(已支付但用户从未开锁骑行)
        boolean queryInProgress = Objects.nonNull(model.getStatus()) && model.getStatus().equals(Constants.ONE);
        // ── 步骤1:分页主查询 ──
        // 主表 goodsorder left join member(取手机号)+ left join base_param(取结算车型名);
@@ -459,6 +461,9 @@
                // 订单类型:按骑行记录 member_rides.type 筛选(可选)
                .inSql(Objects.nonNull(model.getBikeType()), Goodsorder::getId,
                        "select ordre_id from member_rides where isdeleted = 0 and type = " + model.getBikeType())
                // 租用中(status=1):仅保留存在骑行记录的订单,过滤掉已支付但无骑行记录的数据
                .inSql(queryInProgress, Goodsorder::getId,
                        "select ordre_id from member_rides where isdeleted = 0")
                .orderByDesc(Goodsorder::getPayDate);
        IPage<OperationOrderVO> result = goodsorderMapper.selectJoinPage(page, OperationOrderVO.class, wrapper);
        List<OperationOrderVO> records = result.getRecords();