feat: 收款流水列表补充收款金额区间与认领人筛选(认领人经认领记录参数化两段查询过滤)
This commit is contained in:
+10
@@ -79,6 +79,16 @@ public class ReceiptFlowVO extends KingdeeReceiptFlow {
|
|||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
private LocalDateTime transactionEndTime;
|
private LocalDateTime transactionEndTime;
|
||||||
|
/**
|
||||||
|
* 收款金额区间-最小值(查询条件)
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal receiptAmountStart;
|
||||||
|
/**
|
||||||
|
* 收款金额区间-最大值(查询条件)
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal receiptAmountEnd;
|
||||||
@TableField(exist = false)
|
@TableField(exist = false)
|
||||||
private List<ReceiptFlowRecord> claimRecords = new ArrayList<>();
|
private List<ReceiptFlowRecord> claimRecords = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|||||||
+21
@@ -144,6 +144,10 @@ public class ReceiptFlowServiceImpl extends BaseServiceImpl<KingdeeReceiptFlowMa
|
|||||||
query.getPushStatus())
|
query.getPushStatus())
|
||||||
.eq(Func.isNotEmpty(query.getKingdeeBillStatus()), KingdeeReceiptFlow::getKingdeeBillStatus,
|
.eq(Func.isNotEmpty(query.getKingdeeBillStatus()), KingdeeReceiptFlow::getKingdeeBillStatus,
|
||||||
query.getKingdeeBillStatus())
|
query.getKingdeeBillStatus())
|
||||||
|
.ge(query.getReceiptAmountStart() != null, KingdeeReceiptFlow::getReceiptAmount,
|
||||||
|
query.getReceiptAmountStart())
|
||||||
|
.le(query.getReceiptAmountEnd() != null, KingdeeReceiptFlow::getReceiptAmount,
|
||||||
|
query.getReceiptAmountEnd())
|
||||||
.ge(query.getTransactionStartTime() != null, KingdeeReceiptFlow::getTransactionTime,
|
.ge(query.getTransactionStartTime() != null, KingdeeReceiptFlow::getTransactionTime,
|
||||||
query.getTransactionStartTime())
|
query.getTransactionStartTime())
|
||||||
.le(query.getTransactionEndTime() != null, KingdeeReceiptFlow::getTransactionTime,
|
.le(query.getTransactionEndTime() != null, KingdeeReceiptFlow::getTransactionTime,
|
||||||
@@ -151,6 +155,23 @@ public class ReceiptFlowServiceImpl extends BaseServiceImpl<KingdeeReceiptFlowMa
|
|||||||
.eq(KingdeeReceiptFlow::getStatus, 1)
|
.eq(KingdeeReceiptFlow::getStatus, 1)
|
||||||
.orderByDesc(KingdeeReceiptFlow::getTransactionTime)
|
.orderByDesc(KingdeeReceiptFlow::getTransactionTime)
|
||||||
.orderByDesc(KingdeeReceiptFlow::getCreateTime);
|
.orderByDesc(KingdeeReceiptFlow::getCreateTime);
|
||||||
|
// 认领人筛选:先查该认领人有效认领的流水id(参数化查询,避免拼接 SQL),空则直接返回空页
|
||||||
|
if (Func.isNotEmpty(query.getClaimerName())) {
|
||||||
|
List<Long> claimedFlowIds = claimMapper.selectList(Wrappers.<ReceiptClaim>lambdaQuery()
|
||||||
|
.select(ReceiptClaim::getReceiptFlowId)
|
||||||
|
.like(ReceiptClaim::getClaimerName, query.getClaimerName())
|
||||||
|
.eq(ReceiptClaim::getClaimStatus, CLAIMED)).stream()
|
||||||
|
.map(ReceiptClaim::getReceiptFlowId)
|
||||||
|
.filter(Objects::nonNull)
|
||||||
|
.distinct()
|
||||||
|
.toList();
|
||||||
|
if (claimedFlowIds.isEmpty()) {
|
||||||
|
page.setRecords(List.of());
|
||||||
|
page.setTotal(0);
|
||||||
|
return page.convert(ReceiptFlowWrapper.build()::entityVO);
|
||||||
|
}
|
||||||
|
wrapper.in(KingdeeReceiptFlow::getId, claimedFlowIds);
|
||||||
|
}
|
||||||
return page(page, wrapper).convert(ReceiptFlowWrapper.build()::entityVO);
|
return page(page, wrapper).convert(ReceiptFlowWrapper.build()::entityVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user