1. if (ArrayUtils.isNotEmpty(baseDataIds)) {
    2. List<Long> baseDataIdList = new ArrayList<>(baseDataIds);
    3. // id 长度有限制
    4. if (baseDataIdList.size() > 1000) {
    5. Set<String> result = new HashSet<>();
    6. List<Long> queryIds = new ArrayList<>();
    7. for (Long aLong : baseDataIdList) {
    8. if (queryIds.size() < 1000) {
    9. queryIds.add(aLong);
    10. } else {
    11. Set<String> addSet = baseDataRepository.findAllByBaseDataCodeAndIdIn(baseDataCode, queryIds)
    12. .stream().map(UniqueNumOnly::getUniqueNum)
    13. .filter(StringUtils::isNotEmpty)
    14. .collect(Collectors.toSet());
    15. result.addAll(addSet);
    16. queryIds = new ArrayList<>();
    17. }
    18. }
    19. return result;
    20. } else {
    21. return baseDataRepository.findAllByBaseDataCodeAndIdIn(baseDataCode, baseDataIds)
    22. .stream()
    23. .map(UniqueNumOnly::getUniqueNum)
    24. .filter(StringUtils::isNotEmpty)
    25. .collect(Collectors.toSet());
    26. }
    27. }