diff --git a/src/main/java/ru/soune/nocopy/repository/FileAppealRepository.java b/src/main/java/ru/soune/nocopy/repository/FileAppealRepository.java index 03955a4..c6ba7ef 100644 --- a/src/main/java/ru/soune/nocopy/repository/FileAppealRepository.java +++ b/src/main/java/ru/soune/nocopy/repository/FileAppealRepository.java @@ -6,6 +6,7 @@ import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; +import org.springframework.transaction.annotation.Transactional; import ru.soune.nocopy.entity.file.FileAppeal; import ru.soune.nocopy.entity.file.AppealStatus; import java.util.List; @@ -27,6 +28,7 @@ public interface FileAppealRepository extends JpaRepository boolean existsByFileIdAndStatusIn(String fileId, List statuses); @Modifying + @Transactional @Query("DELETE FROM FileAppeal a WHERE a.fileId IN :fileIds") void deleteAllByFileIdIn(@Param("fileIds") List fileIds); } diff --git a/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java b/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java index f285ab8..d209839 100644 --- a/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java +++ b/src/main/java/ru/soune/nocopy/repository/FileEntityRepository.java @@ -7,6 +7,7 @@ import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; +import org.springframework.transaction.annotation.Transactional; import ru.soune.nocopy.dto.statistic.UserFilesStatisticResponse; import ru.soune.nocopy.entity.file.FileEntity; import ru.soune.nocopy.entity.file.FileStatus; @@ -134,6 +135,7 @@ public interface FileEntityRepository extends JpaRepository List getProtectedFilesPerUserStats(); @Modifying + @Transactional @Query("DELETE FROM FileEntity f WHERE f.id IN :ids") void deleteAllByIdIn(@Param("ids") List ids); } diff --git a/src/main/java/ru/soune/nocopy/repository/FileMonitoringRepository.java b/src/main/java/ru/soune/nocopy/repository/FileMonitoringRepository.java index e645b4d..eb85885 100644 --- a/src/main/java/ru/soune/nocopy/repository/FileMonitoringRepository.java +++ b/src/main/java/ru/soune/nocopy/repository/FileMonitoringRepository.java @@ -1,5 +1,6 @@ package ru.soune.nocopy.repository; +import jakarta.transaction.Transactional; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; @@ -32,6 +33,7 @@ public interface FileMonitoringRepository extends JpaRepository fileIds); } diff --git a/src/main/java/ru/soune/nocopy/repository/ImageHashRepository.java b/src/main/java/ru/soune/nocopy/repository/ImageHashRepository.java index 2df443d..e67b15d 100644 --- a/src/main/java/ru/soune/nocopy/repository/ImageHashRepository.java +++ b/src/main/java/ru/soune/nocopy/repository/ImageHashRepository.java @@ -5,6 +5,7 @@ import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Repository; +import org.springframework.transaction.annotation.Transactional; import ru.soune.nocopy.entity.file.ImageHashEntity; import java.util.List; @@ -15,6 +16,7 @@ public interface ImageHashRepository extends JpaRepository findByFileId(String fileId); ImageHashEntity findByHash64HiAndHash64Lo(Long hash64Hi, Long hash64Lo); @Modifying + @Transactional @Query("DELETE FROM ImageHashEntity i WHERE i.file.id IN :fileIds") void deleteAllByFileIdIn(@Param("fileIds") List fileIds); } diff --git a/src/main/java/ru/soune/nocopy/repository/ModerationLogRepository.java b/src/main/java/ru/soune/nocopy/repository/ModerationLogRepository.java index 6772f9f..eda838f 100644 --- a/src/main/java/ru/soune/nocopy/repository/ModerationLogRepository.java +++ b/src/main/java/ru/soune/nocopy/repository/ModerationLogRepository.java @@ -4,6 +4,7 @@ import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; +import org.springframework.transaction.annotation.Transactional; import ru.soune.nocopy.entity.file.moderation.ModerationLog; import java.util.List; @@ -17,6 +18,7 @@ public interface ModerationLogRepository extends JpaRepository findByFileId(String fileId); @Modifying + @Transactional @Query("DELETE FROM ModerationLog m WHERE m.fileId IN :fileIds") void deleteAllByFileIdIn(@Param("fileIds") List fileIds); } \ No newline at end of file