diff --git a/sscivm/src/client/nccloud/web/sscivm/ivsale/application/action/ApplicationQryAction.java b/sscivm/src/client/nccloud/web/sscivm/ivsale/application/action/ApplicationQryAction.java index ce61806..76cca3b 100644 --- a/sscivm/src/client/nccloud/web/sscivm/ivsale/application/action/ApplicationQryAction.java +++ b/sscivm/src/client/nccloud/web/sscivm/ivsale/application/action/ApplicationQryAction.java @@ -66,6 +66,7 @@ public class ApplicationQryAction implements ICommonAction { IQueryScheme scheme = ncCloudQueryService.convertCondition(info); Map> 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 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()]));