diff --git a/src/main/java/com/mos/backend/privatechatmessages/application/PrivateChatMessageService.java b/src/main/java/com/mos/backend/privatechatmessages/application/PrivateChatMessageService.java index 38d89c3..9c3f439 100644 --- a/src/main/java/com/mos/backend/privatechatmessages/application/PrivateChatMessageService.java +++ b/src/main/java/com/mos/backend/privatechatmessages/application/PrivateChatMessageService.java @@ -49,9 +49,10 @@ public void publish(Long userId, Long privateChatRoomId, PrivateChatMessagePubli ); List chatRoomMembers = privateChatRoomMemberService.findByPrivateChatRoom(privateChatRoom); - chatRoomMembers.forEach(member -> { + chatRoomMembers.forEach(privateChatRoomMember -> { + privateChatRoomMember.undeleteIfDeleted(); PrivateChatRoomInfoMessageDto privateChatRoomInfoMessageDto = PrivateChatRoomInfoMessageDto.of( - member.getUser().getId(), privateChatRoom.getId(), privateChatMessage.getMessage(), privateChatMessage.getCreatedAt() + privateChatRoomMember.getUser().getId(), privateChatRoom.getId(), privateChatMessage.getMessage(), privateChatMessage.getCreatedAt() ); redisPublisher.publishPrivateChatRoomInfoMessage(privateChatRoomInfoMessageDto); }); diff --git a/src/main/java/com/mos/backend/privatechatroommember/entity/PrivateChatRoomMember.java b/src/main/java/com/mos/backend/privatechatroommember/entity/PrivateChatRoomMember.java index 78d5e6e..a957e98 100644 --- a/src/main/java/com/mos/backend/privatechatroommember/entity/PrivateChatRoomMember.java +++ b/src/main/java/com/mos/backend/privatechatroommember/entity/PrivateChatRoomMember.java @@ -56,4 +56,8 @@ public static PrivateChatRoomMember of(PrivateChatRoom privateChatRoom, User use public void updateLastEntryAt() { this.lastEntryAt = LocalDateTime.now(); } + + public void undeleteIfDeleted() { + this.deletedAt = null; + } } diff --git a/src/main/java/com/mos/backend/privatechatrooms/infrastructure/PrivateChatRoomJpaRepository.java b/src/main/java/com/mos/backend/privatechatrooms/infrastructure/PrivateChatRoomJpaRepository.java index 3e2db10..460d3ad 100644 --- a/src/main/java/com/mos/backend/privatechatrooms/infrastructure/PrivateChatRoomJpaRepository.java +++ b/src/main/java/com/mos/backend/privatechatrooms/infrastructure/PrivateChatRoomJpaRepository.java @@ -22,7 +22,7 @@ having count(distinct m.user) = 2 @Query(""" select m.privateChatRoom from PrivateChatRoomMember m - where m.user = :user and m.privateChatRoom.status = 'VISIBLE' + where m.user = :user and m.privateChatRoom.status = 'VISIBLE' and m.deletedAt IS NULL """) List findByUserAndStatusIsVisible(@Param("user") User user); }