diff --git a/src/main/java/com/atmd/backend/domain/group/repository/GroupDailyWorkoutRecordRepository.java b/src/main/java/com/atmd/backend/domain/group/repository/GroupDailyWorkoutRecordRepository.java index fa74c23..e1f71d9 100644 --- a/src/main/java/com/atmd/backend/domain/group/repository/GroupDailyWorkoutRecordRepository.java +++ b/src/main/java/com/atmd/backend/domain/group/repository/GroupDailyWorkoutRecordRepository.java @@ -11,6 +11,10 @@ public interface GroupDailyWorkoutRecordRepository extends JpaRepository { + @Modifying + @Query("delete from GroupDailyWorkoutRecord r where r.group.id = :groupId") + void deleteAllByGroupId(@Param("groupId") Long groupId); + @Query(value = """ SELECT u.id AS userId, diff --git a/src/main/java/com/atmd/backend/domain/group/service/GroupService.java b/src/main/java/com/atmd/backend/domain/group/service/GroupService.java index 5566d6b..1c75d4b 100644 --- a/src/main/java/com/atmd/backend/domain/group/service/GroupService.java +++ b/src/main/java/com/atmd/backend/domain/group/service/GroupService.java @@ -8,6 +8,7 @@ import com.atmd.backend.domain.group.entity.Group; import com.atmd.backend.domain.group.entity.GroupUser; import com.atmd.backend.domain.group.exception.GroupErrorCode; +import com.atmd.backend.domain.group.repository.GroupDailyWorkoutRecordRepository; import com.atmd.backend.domain.group.repository.GroupRepository; import com.atmd.backend.domain.group.repository.GroupUserRepository; import com.atmd.backend.domain.user.entity.User; @@ -35,6 +36,7 @@ public class GroupService { private final GroupRepository groupRepository; private final GroupUserRepository groupUserRepository; + private final GroupDailyWorkoutRecordRepository groupDailyWorkoutRecordRepository; private final UserRepository userRepository; @Value("${app.frontend-base-url:https://www.atmd.cloud}") @@ -126,6 +128,7 @@ public void deleteGroup(Long groupId, Long userId) { if (!group.isOwner(userId)) { throw new GeneralException(GroupErrorCode.ACCESS_DENIED); } + groupDailyWorkoutRecordRepository.deleteAllByGroupId(groupId); groupUserRepository.deleteAllByGroupId(groupId); groupRepository.delete(group); }