| | |
| | | @Async |
| | | public CompletableFuture<ModuleSearchResult> searchModuleAsync(String moduleCode, ModuleSearchable service, |
| | | String companion, Date startTime, Date endTime, |
| | | String hasAttachment, Integer pageNum, Integer pageSize) { |
| | | String hasAttachment) { |
| | | long start = System.currentTimeMillis(); |
| | | try { |
| | | // 调用搜索方法,返回 List<?> |
| | |
| | | } |
| | | |
| | | // 并发搜索 |
| | | Integer finalPageNum = pageNum; |
| | | Integer finalPageSize = pageSize; |
| | | |
| | | List<CompletableFuture<ModuleSearchResult>> futures = moduleCodes.stream() |
| | | .map(code -> searchModuleAsync(code, moduleSearchMap.get(code), |
| | | companion, startTime, endTime, hasAttachment, finalPageNum, finalPageSize)) |
| | | companion, startTime, endTime, hasAttachment)) |
| | | .collect(Collectors.toList()); |
| | | |
| | | // 等待完成 |