File tree Expand file tree Collapse file tree
data/src/main/java/com/threegap/bitnagil/data/auth
domain/src/main/java/com/threegap/bitnagil/domain/auth/model
presentation/src/main/java/com/threegap/bitnagil/presentation/login Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -4,14 +4,13 @@ import com.threegap.bitnagil.data.auth.model.request.TermsAgreementRequestDto
44import com.threegap.bitnagil.data.auth.model.response.LoginResponseDto
55import com.threegap.bitnagil.domain.auth.model.AuthSession
66import com.threegap.bitnagil.domain.auth.model.TermsAgreement
7- import com.threegap.bitnagil.domain.auth.model.UserRole
87
98// toDomain
109internal fun LoginResponseDto.toDomain () =
1110 AuthSession (
1211 accessToken = this .accessToken,
1312 refreshToken = this .refreshToken,
14- role = UserRole .fromString( this .role) ,
13+ role = this .role,
1514 )
1615
1716// toDto
Original file line number Diff line number Diff line change 11package com.threegap.bitnagil.data.auth.model.response
22
3+ import com.threegap.bitnagil.domain.auth.model.UserRole
34import kotlinx.serialization.SerialName
45import kotlinx.serialization.Serializable
56
@@ -10,5 +11,5 @@ data class LoginResponseDto(
1011 @SerialName(" refreshToken" )
1112 val refreshToken : String ,
1213 @SerialName(" role" )
13- val role : String ,
14+ val role : UserRole ,
1415)
Original file line number Diff line number Diff line change 11package com.threegap.bitnagil.domain.auth.model
22
3+ import kotlinx.serialization.Serializable
4+
5+ @Serializable
36enum class UserRole {
47 USER ,
58 GUEST ,
69 ONBOARDING ,
710 WITHDRAWN ,
811 UNKNOWN ,
912 ;
10-
11- fun isGuest () = this == GUEST
12-
13- companion object {
14- fun fromString (value : String ): UserRole =
15- when (value) {
16- " USER" -> USER
17- " GUEST" -> GUEST
18- " ONBOARDING" -> ONBOARDING
19- " WITHDRAWN" -> WITHDRAWN
20- else -> UNKNOWN
21- }
22- }
2313}
Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ package com.threegap.bitnagil.presentation.login
33import android.util.Log
44import androidx.lifecycle.ViewModel
55import com.kakao.sdk.auth.model.OAuthToken
6+ import com.threegap.bitnagil.domain.auth.model.UserRole
67import com.threegap.bitnagil.domain.auth.usecase.LoginUseCase
78import com.threegap.bitnagil.presentation.login.model.LoginSideEffect
89import com.threegap.bitnagil.presentation.login.model.LoginState
@@ -37,8 +38,7 @@ class LoginViewModel @Inject constructor(
3738 subIntent {
3839 loginUseCase(socialAccessToken = token.accessToken, socialType = KAKAO ).fold(
3940 onSuccess = {
40- val isGuest = it.role.isGuest()
41- if (isGuest) {
41+ if (it.role == UserRole .GUEST ) {
4242 postSideEffect(LoginSideEffect .NavigateToTermsAgreement )
4343 } else {
4444 postSideEffect(LoginSideEffect .NavigateToHome )
You can’t perform that action at this time.
0 commit comments