Skip to content

Commit c514e10

Browse files
committed
✨ :: Use getRole
1 parent 76c0bbd commit c514e10

File tree

2 files changed

+7
-3
lines changed

2 files changed

+7
-3
lines changed

feature/main/src/main/java/com/stackknowledge/main/MainPageScreen.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,15 +41,15 @@ internal fun MainPageRoute(
4141
onNavigate: (Authority, String, Int?) -> Unit,
4242
viewModel: MainViewModel = hiltViewModel()
4343
) {
44-
var role by remember { mutableStateOf(Authority.ROLE_TEACHER) } //로그인 로직 적용후 변경
44+
val role by viewModel.role.collectAsStateWithLifecycle(initialValue = "")
4545
val getMissionUiState by viewModel.getMissionUiState.collectAsStateWithLifecycle()
4646
val getRankingUiState by viewModel.getRankingUiState.collectAsStateWithLifecycle()
4747

4848
MainPageScreen(
49-
role = role,
49+
role = if (role.isNotBlank()) Authority.valueOf(role) else Authority.ROLE_TEACHER,
5050
getMissionUiState = getMissionUiState,
5151
getRankingUiState = getRankingUiState,
52-
onNavigate = { navType, index -> onNavigate(role, navType, index) },
52+
onNavigate = { navType, index -> onNavigate(Authority.valueOf(role), navType, index) },
5353
initMain = {
5454
with(viewModel) {
5555
getMission()

feature/main/src/main/java/com/stackknowledge/main/viewModel/MainViewModel.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import com.example.common.result.Result
77
import com.example.common.result.asResult
88
import com.stackknowledge.main.viewModel.uistate.GetMissionUiState
99
import com.stackknowledge.main.viewModel.uistate.GetRankingUiState
10+
import com.stackknowledge.repository.auth.AuthRepository
1011
import com.stackknowledge.usecase.mission.GetMissionUseCase
1112
import com.stackknowledge.usecase.student.GetStudentPointRankingUseCase
1213
import dagger.hilt.android.lifecycle.HiltViewModel
@@ -20,12 +21,15 @@ import javax.inject.Inject
2021
class MainViewModel @Inject constructor(
2122
private val getMissionUseCase: GetMissionUseCase,
2223
private val getStudentPointRankingUseCase: GetStudentPointRankingUseCase,
24+
private val authRepository: AuthRepository
2325
): ViewModel() {
2426
private val _getMissionUiState = MutableStateFlow<GetMissionUiState>(GetMissionUiState.Loading)
2527
internal val getMissionUiState = _getMissionUiState.asStateFlow()
2628

2729
private val _getRankingUiState = MutableStateFlow<GetRankingUiState>(GetRankingUiState.Loading)
2830
internal val getRankingUiState = _getRankingUiState.asStateFlow()
31+
32+
internal val role = authRepository.getRole()
2933
internal fun getMission() = viewModelScope.launch {
3034
getMissionUseCase()
3135
.asResult()

0 commit comments

Comments
 (0)