fix: 소셜로그인시 유저 행동데이터 SIGN_UP 중복 기록 버그
- 소셜로그인 시 isNew 플래그를 통해 회원가입/로그인을 구분하여 SIGN_UP 중복 기록 버그 수정
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
package kr.co.vividnext.sodalive.member.social
|
||||
|
||||
import kr.co.vividnext.sodalive.member.Member
|
||||
|
||||
data class MemberResolveResult(
|
||||
val member: Member,
|
||||
val isNew: Boolean
|
||||
)
|
@@ -5,5 +5,6 @@ import kr.co.vividnext.sodalive.member.login.LoginResponse
|
||||
data class SocialLoginResponse(
|
||||
val memberId: Long,
|
||||
val marketingPid: String?,
|
||||
val loginResponse: LoginResponse
|
||||
val loginResponse: LoginResponse,
|
||||
val isNew: Boolean
|
||||
)
|
||||
|
@@ -27,7 +27,8 @@ class GoogleAuthService(
|
||||
): SocialLoginResponse {
|
||||
val googleUserInfo = googleService.getUserInfo(idToken)
|
||||
?: throw SodaException("구글 로그인을 하지 못했습니다. 다시 시도해 주세요")
|
||||
val member = memberService.findOrRegister(googleUserInfo, container, marketingPid, pushToken)
|
||||
val memberResolveResult = memberService.findOrRegister(googleUserInfo, container, marketingPid, pushToken)
|
||||
val member = memberResolveResult.member
|
||||
val principal = MemberAdapter(member)
|
||||
val authToken = GoogleAuthenticationToken(idToken, principal.authorities)
|
||||
authToken.setPrincipal(principal)
|
||||
@@ -53,7 +54,8 @@ class GoogleAuthService(
|
||||
return SocialLoginResponse(
|
||||
memberId = member.id!!,
|
||||
marketingPid = marketingPid,
|
||||
loginResponse = loginResponse
|
||||
loginResponse = loginResponse,
|
||||
isNew = memberResolveResult.isNew
|
||||
)
|
||||
}
|
||||
}
|
||||
|
@@ -27,7 +27,8 @@ class KakaoAuthService(
|
||||
): SocialLoginResponse {
|
||||
val kakaoUserInfo = kakaoService.getUserInfo(accessToken)
|
||||
?: throw SodaException("카카오 로그인을 하지 못했습니다. 다시 시도해 주세요")
|
||||
val member = memberService.findOrRegister(kakaoUserInfo, container, marketingPid, pushToken)
|
||||
val memberResolveResult = memberService.findOrRegister(kakaoUserInfo, container, marketingPid, pushToken)
|
||||
val member = memberResolveResult.member
|
||||
val principal = MemberAdapter(member)
|
||||
val authToken = KakaoAuthenticationToken(accessToken, principal.authorities)
|
||||
authToken.setPrincipal(principal)
|
||||
@@ -53,7 +54,8 @@ class KakaoAuthService(
|
||||
return SocialLoginResponse(
|
||||
memberId = member.id!!,
|
||||
marketingPid = marketingPid,
|
||||
loginResponse = loginResponse
|
||||
loginResponse = loginResponse,
|
||||
isNew = memberResolveResult.isNew
|
||||
)
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user