Skip to content

Commit

Permalink
fix: 회원탈퇴 에러 (ShopBookMark 삭제)
Browse files Browse the repository at this point in the history
  • Loading branch information
swa07016 committed Mar 10, 2024
1 parent 9a156a0 commit 3d44bba
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@
import com.example.wineydomain.badge.repository.UserWineBadgeRepository;
import com.example.wineydomain.common.model.Status;
import com.example.wineydomain.common.model.VerifyMessageStatus;
import com.example.wineydomain.shop.entity.BookMarkPk;
import com.example.wineydomain.shop.entity.ShopBookMark;
import com.example.wineydomain.shop.repository.ShopBookMarkRepository;
import com.example.wineydomain.tastingNote.repository.TastingNoteRepository;
import com.example.wineydomain.user.entity.SocialType;
import com.example.wineydomain.user.entity.User;
Expand Down Expand Up @@ -63,6 +66,7 @@ public class UserServiceImpl implements UserService {
private final UserFcmTokenRepository userFcmTokenRepository;
private final UserExitHistoryRepository userExitHistoryRepository;
private final UserConnectionRepository userConnectionRepository;
private final ShopBookMarkRepository shopBookMarkRepository;

private DefaultMessageService coolSmsService;

Expand Down Expand Up @@ -107,6 +111,7 @@ public String getKakaoAccessToken(String code) {
4. 추천 와인 1 : N
- User엔티티에서 그래프탐색으로 추천와인목록을 조회할 경우가 없을 것 같아서 양방향 매핑은 하지 않고
유저 삭제시 추천와인 리포지토리로 목록을 삭제하는 것으로 결정했습니다.
+ FCM 토큰, ShopBookMark
*/
@Transactional
@Override
Expand Down Expand Up @@ -134,6 +139,12 @@ public Long delete(Long id, String reason) {
.collect(Collectors.toList());
userFcmTokenRepository.deleteAllByIdInBatch(userFcmTokenIds);

// 상점 북마크 삭제
List<ShopBookMark> shopBookMarkList = shopBookMarkRepository.findByUser(user);
List<BookMarkPk> shopBookMarkIds = shopBookMarkList.stream()
.map(ShopBookMark::getId)
.collect(Collectors.toList());
shopBookMarkRepository.deleteAllByIdInBatch(shopBookMarkIds);

// 탈퇴 히스토리 테이블에 탈퇴 정보 기록
userExitHistoryRepository.save(UserExitHistory.from(user, reason));
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,15 @@
package com.example.wineydomain.shop.repository;

import com.example.wineydomain.user.entity.User;
import org.springframework.data.jpa.repository.JpaRepository;

import com.example.wineydomain.shop.entity.BookMarkPk;
import com.example.wineydomain.shop.entity.ShopBookMark;
import org.springframework.data.jpa.repository.Query;

import java.util.List;

public interface ShopBookMarkRepository extends JpaRepository<ShopBookMark, BookMarkPk> {
@Query(value = "select s from ShopBookMark s where s.id.user = :user")
List<ShopBookMark> findByUser(User user);
}

0 comments on commit 3d44bba

Please sign in to comment.