diff --git a/rc-service/rc-service-wallet/wallet-infrastructure/src/main/java/com/red/circle/wallet/infra/database/rds/service/freight/impl/FreightBalanceRunningWaterServiceImpl.java b/rc-service/rc-service-wallet/wallet-infrastructure/src/main/java/com/red/circle/wallet/infra/database/rds/service/freight/impl/FreightBalanceRunningWaterServiceImpl.java index 7b6dcaaa..329ebd95 100644 --- a/rc-service/rc-service-wallet/wallet-infrastructure/src/main/java/com/red/circle/wallet/infra/database/rds/service/freight/impl/FreightBalanceRunningWaterServiceImpl.java +++ b/rc-service/rc-service-wallet/wallet-infrastructure/src/main/java/com/red/circle/wallet/infra/database/rds/service/freight/impl/FreightBalanceRunningWaterServiceImpl.java @@ -39,9 +39,16 @@ public class FreightBalanceRunningWaterServiceImpl extends @Override public List flowByUserId(Long userId, Long acceptUserId, Integer type, Long lastId) { return query() - .eq(FreightBalanceRunningWater::getUserId, userId) - .eq(Objects.nonNull(acceptUserId), FreightBalanceRunningWater::getAcceptUserId, acceptUserId) - .eq(Objects.nonNull(type), FreightBalanceRunningWater::getType, type) + .and(Objects.isNull(acceptUserId), wrapper -> wrapper + .eq(FreightBalanceRunningWater::getUserId, userId) + .or() + .eq(FreightBalanceRunningWater::getAcceptUserId, userId) + ) + .and(Objects.nonNull(acceptUserId), e -> e + .eq(FreightBalanceRunningWater::getUserId, userId) + .or() + .eq(FreightBalanceRunningWater::getAcceptUserId, acceptUserId)) + .and(Objects.nonNull(type), e -> e.eq(FreightBalanceRunningWater::getType, type)) .lt(Objects.nonNull(lastId), FreightBalanceRunningWater::getId, lastId) .orderByDesc(FreightBalanceRunningWater::getId) .last(PageConstant.DEFAULT_LIMIT)