优化发票查询逻辑并添加分页功能
- 增加 pageNum 参数获取 - 修改发票查询条件判断逻辑,支持发票号码查询- 添加分页筛选功能,根据 pageNum 和 pageSize 对查询结果进行分页
This commit is contained in:
parent
bac9acf5e3
commit
9541f09909
|
@ -66,6 +66,7 @@ public class ApplicationQryAction implements ICommonAction {
|
|||
IQueryScheme scheme = ncCloudQueryService.convertCondition(info);
|
||||
Map<String, List<String>> pkAndTsList = queryService.queryApplicationPksBySchema(scheme, appcode, sgbzflag);
|
||||
String pageSize = (String) pageInfo.get("pageSize");
|
||||
String pageNum = (String) pageInfo.get("pageIndex");
|
||||
// 拿到allApplicationVOList中的所有PK,以及查询参数中的FPHM 再查询一次数据库
|
||||
boolean isSpcialQuery = false;
|
||||
QuerySchemeProcessor processor = new QuerySchemeProcessor(scheme);
|
||||
|
@ -95,7 +96,7 @@ public class ApplicationQryAction implements ICommonAction {
|
|||
filteredPks = ivApplicationHeadVOS.toArray(new String[0]);
|
||||
}
|
||||
// 如果条件中 填写了发票号码 执行此逻辑
|
||||
if (invoiceDate != null && invoiceDate.length > 0) {
|
||||
if (invoiceDate != null && invoiceDate.length > 0 || invoiceNums != null && invoiceNums.length > 0) {
|
||||
List<IVApplogVO> ivApplogVOS = queryService.queryByInvoiceNumberAndAggPK(filteredPks, invoiceDate, invoiceNums);
|
||||
// 将allApplicationAggVOList的主键中 ivApplogVOS每一项的lyid是否包含在内
|
||||
allApplicationAggVOList = allApplicationAggVOList.stream()
|
||||
|
@ -103,9 +104,14 @@ public class ApplicationQryAction implements ICommonAction {
|
|||
.anyMatch(logVO -> logVO.getLyid().equals(aggVO.getPk_ivapplication())))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
// ·ÖÒ³µÄPKS
|
||||
filteredPks = allApplicationAggVOList.stream()
|
||||
.map(IVApplicationHeadVO::getPk_ivapplication)
|
||||
.collect(Collectors.toList()).toArray(new String[0]);
|
||||
// ·Öҳɸѡ
|
||||
int subIndex = Math.min(allApplicationAggVOList.size(), Integer.parseInt(pageNum + 1) * Integer.parseInt(pageSize));
|
||||
allApplicationAggVOList = allApplicationAggVOList
|
||||
.subList(Integer.parseInt(pageNum), subIndex);
|
||||
}
|
||||
if (allApplicationAggVOList != null && allApplicationAggVOList.size() > 0) {
|
||||
invApplication = operator.toGrid(allApplicationAggVOList.toArray(new IVApplicationHeadVO[allApplicationAggVOList.size()]));
|
||||
|
|
Loading…
Reference in New Issue