diff --git a/src/main/java/ru/soune/nocopy/service/search/GlobalSearchService.java b/src/main/java/ru/soune/nocopy/service/search/GlobalSearchService.java index 4b5ae40..87a2230 100644 --- a/src/main/java/ru/soune/nocopy/service/search/GlobalSearchService.java +++ b/src/main/java/ru/soune/nocopy/service/search/GlobalSearchService.java @@ -12,6 +12,7 @@ import ru.soune.nocopy.entity.search.SearchStatus; import ru.soune.nocopy.repository.FileEntityRepository; import ru.soune.nocopy.repository.FileMonitoringRepository; import ru.soune.nocopy.repository.GlobalSearchTaskRepository; +import ru.soune.nocopy.service.file.FileEntityService; import java.time.LocalDateTime; import java.util.ArrayList; @@ -30,6 +31,8 @@ public class GlobalSearchService { private final GlobalSearchAsyncProcessor asyncProcessor; + private final FileEntityService fileEntityService; + @Transactional public String startSearch(GlobalSearchStartRequest request, Long userId, List filesToProcess) { GlobalSearchTask task = new GlobalSearchTask(); @@ -56,7 +59,12 @@ public class GlobalSearchService { .map(FileMonitoringEntity::getFile) .toList(); } else { - return fileEntityRepository.findAllById(request.getFileIds()); + List fileIds = request.getFileIds().isEmpty() ? fileEntityService.getAllUserFiles(userId) + .stream() + .map(FileEntity::getId) + .toList(): request.getFileIds(); + + return fileEntityRepository.findAllById(fileIds); } } }