Skip to content

Commit 450d0c2

Browse files
authored
fix: 탈퇴한 유저 재가입 시 기존 정보 복구되지 않는 문제 해결 (#100)
* [BOOK-269] refactor: infra - enum 타입에서 String 타입으로 JpaRepository로 전달하도록 변경 * [BOOK-269] refactor: infra - JPQL 대신 Native Query를 사용하여 SQLRestriction 회피 * [BOOK-269] refactor: infra - 코드레빗 리뷰 반영
1 parent 38ff6ce commit 450d0c2

File tree

1 file changed

+9
-2
lines changed

1 file changed

+9
-2
lines changed

infra/src/main/kotlin/org/yapp/infra/user/repository/JpaUserRepository.kt

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package org.yapp.infra.user.repository
22

33
import org.springframework.data.jpa.repository.JpaRepository
44
import org.springframework.data.jpa.repository.Query
5+
import org.springframework.data.repository.query.Param
56
import org.yapp.domain.user.ProviderType
67
import org.yapp.infra.user.entity.UserEntity
78
import java.util.*
@@ -15,6 +16,12 @@ interface JpaUserRepository : JpaRepository<UserEntity, UUID> {
1516

1617
fun existsByEmail(email: String): Boolean
1718

18-
@Query("SELECT u FROM UserEntity u WHERE u.providerType = :providerType AND u.providerId = :providerId")
19-
fun findByProviderTypeAndProviderIdIncludingDeleted(providerType: ProviderType, providerId: String): UserEntity?
19+
@Query(
20+
value = "SELECT u.* FROM users u WHERE u.provider_type = :#{#providerType.name()} AND u.provider_id = :providerId",
21+
nativeQuery = true
22+
)
23+
fun findByProviderTypeAndProviderIdIncludingDeleted(
24+
@Param("providerType") providerType: ProviderType,
25+
@Param("providerId") providerId: String
26+
): UserEntity?
2027
}

0 commit comments

Comments
 (0)