diff --git a/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java b/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java index 9d9cb0f..e54e23b 100644 --- a/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java +++ b/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java @@ -75,4 +75,7 @@ public interface FileEntityRepository extends JpaRepository Page findByStatusIn(List statuses, Pageable pageable); List findByUserIdAndStatusIn(Long userId, List statuses); + + @Query("SELECT f FROM FileEntity f WHERE f.userId = :userId AND f.status IN :statuses") + List findByStatuses(Long userId, @Param("statuses") List statuses); } diff --git a/src/main/java/ru/soune/nocopy/service/file/FileEntityService.java b/src/main/java/ru/soune/nocopy/service/file/FileEntityService.java index 5ef91f3..bb70f14 100644 --- a/src/main/java/ru/soune/nocopy/service/file/FileEntityService.java +++ b/src/main/java/ru/soune/nocopy/service/file/FileEntityService.java @@ -9,19 +9,14 @@ import ru.soune.nocopy.dto.file.FileEntityResponse; import ru.soune.nocopy.dto.file.FileResponse; import ru.soune.nocopy.entity.file.FileEntity; import ru.soune.nocopy.entity.file.FileStatus; -import ru.soune.nocopy.entity.file.FileUploadSession; import ru.soune.nocopy.entity.file.ProtectionStatus; import ru.soune.nocopy.entity.monitoring.FileMonitoringEntity; import ru.soune.nocopy.entity.monitoring.MonitoringType; import ru.soune.nocopy.entity.user.User; -import ru.soune.nocopy.exception.DuplicateImageException; import ru.soune.nocopy.exception.FileEntityNotFoundException; import ru.soune.nocopy.repository.FileEntityRepository; import ru.soune.nocopy.repository.FileMonitoringRepository; -import ru.soune.nocopy.repository.SimilarImageProjection; import ru.soune.nocopy.repository.UserRepository; -import ru.soune.nocopy.service.FileSimilarityService; -import ru.soune.nocopy.service.ImageHashService; import java.io.File; import java.io.IOException; @@ -31,7 +26,6 @@ import java.nio.file.Paths; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; -import java.util.Map; import java.util.Optional; import java.util.stream.Collectors; @@ -42,10 +36,6 @@ public class FileEntityService { private final FileEntityRepository fileEntityRepository; - private final ImageHashService imageHashService; - - private final FileSimilarityService fileSimilarityService; - private final UserRepository userRepository; private final ImageResizeService imageResizeService; @@ -91,7 +81,7 @@ public class FileEntityService { List.of(FileStatus.ACTIVE, FileStatus.BLOCKED, FileStatus.MODERATION))); } } else { - fileEntityRepository.findByUserIdAndStatusIn(userId, + allFiles = fileEntityRepository.findByUserIdAndStatusIn(userId, List.of(FileStatus.ACTIVE, FileStatus.BLOCKED, FileStatus.MODERATION)); } @@ -150,19 +140,6 @@ public class FileEntityService { .build(); } - @Transactional - public FileEntity markAsDeleted(FileEntity fileEntity) throws IOException { - fileEntity.setStatus(FileStatus.DELETED); - fileEntity.setUpdatedAt(LocalDateTime.now()); - fileEntity.setProtectionStatus(ProtectionStatus.NOT_PROTECTED); - - Path path = Paths.get(fileEntity.getProtectedFilePath()); - Files.deleteIfExists(path); - fileEntity.setProtectedFilePath(""); - - return fileEntityRepository.save(fileEntity); - } - public void softDeleteFileWithHash(FileEntity fileEntity) throws IOException { if (fileEntity.getImageHash() != null) { fileEntity.setImageHash(null);