Skip to content

Commit 43a7b2c

Browse files
committed
✨ :: Add handing main navigate
1 parent 4e7ac3b commit 43a7b2c

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

app/src/main/java/com/stackknowledge/navigation/StackKnowledgeNavHost.kt

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package com.stackknowledge.navigation
33
import androidx.compose.runtime.Composable
44
import androidx.compose.ui.Modifier
55
import androidx.navigation.compose.NavHost
6+
import com.minstone.ui.navigation.NavigateType
67
import com.stackknowledge.login.navigation.loginScreen
78
import com.stackknowledge.login.navigation.navigateToLogin
89
import com.stackknowledge.login.navigation.roleCheckRoute
@@ -11,10 +12,13 @@ import com.stackknowledge.main.navigation.mainPageRoute
1112
import com.stackknowledge.main.navigation.mainScreen
1213
import com.stackknowledge.main.navigation.navigateToMain
1314
import com.stackknowledge.navigation.util.bottomNavigationNavigate
15+
import com.stackknowledge.ranking.navigation.navigateToRanking
16+
import com.stackknowledge.ranking.navigation.navigateToTeacherRanking
1417
import com.stackknowledge.ranking.navigation.rankingScreen
1518
import com.stackknowledge.ranking.navigation.teacherRankingScreen
1619
import com.stackknowledge.score_mission.navigation.gradingAnswerScreen
1720
import com.stackknowledge.score_mission.navigation.navigateToGradingAnswer
21+
import com.stackknowledge.score_mission.navigation.navigateToSolvedMission
1822
import com.stackknowledge.score_mission.navigation.solvedMissionScreen
1923
import com.stackknowledge.shop.navigation.shopScreen
2024
import com.stackknowledge.shop.navigation.teacherShopScreen
@@ -23,8 +27,10 @@ import com.stackkowledge.mission.navigation.createMissionRoute
2327
import com.stackkowledge.mission.navigation.createMissionScreen
2428
import com.stackkowledge.mission.navigation.entireMissionRoute
2529
import com.stackkowledge.mission.navigation.entireMissionScreen
30+
import com.stackkowledge.mission.navigation.navigateToEntireMission
2631
import com.stackkowledge.mission.navigation.navigateToResolveMission
2732
import com.stackkowledge.mission.navigation.resolveMissionScreen
33+
import enumdatatype.Authority
2834

2935
@Composable
3036
fun StackKnowledgeNavHost(
@@ -44,7 +50,17 @@ fun StackKnowledgeNavHost(
4450
onRoleClick = navController::navigateToLogin
4551
)
4652
mainScreen(
47-
onNavigate = { role, navType -> bottomNavigationNavigate(role, navController, navType) }
53+
onNavigate = { role, navType, index ->
54+
if (index != null) {
55+
if (navType == NavigateType.MISSION.value) {
56+
if (role == Authority.ROLE_STUDENT) navController.navigateToEntireMission()
57+
else navController.navigateToSolvedMission()
58+
} else {
59+
if (role == Authority.ROLE_STUDENT) navController.navigateToRanking()
60+
else navController.navigateToTeacherRanking()
61+
}
62+
} else bottomNavigationNavigate(role, navController, navType)
63+
},
4864
)
4965
createMissionScreen(
5066
onNavigate = { role, navType -> bottomNavigationNavigate(role, navController, navType) },

0 commit comments

Comments
 (0)