@@ -3,6 +3,7 @@ package com.stackknowledge.navigation
3
3
import androidx.compose.runtime.Composable
4
4
import androidx.compose.ui.Modifier
5
5
import androidx.navigation.compose.NavHost
6
+ import com.minstone.ui.navigation.NavigateType
6
7
import com.stackknowledge.login.navigation.loginScreen
7
8
import com.stackknowledge.login.navigation.navigateToLogin
8
9
import com.stackknowledge.login.navigation.roleCheckRoute
@@ -11,10 +12,13 @@ import com.stackknowledge.main.navigation.mainPageRoute
11
12
import com.stackknowledge.main.navigation.mainScreen
12
13
import com.stackknowledge.main.navigation.navigateToMain
13
14
import com.stackknowledge.navigation.util.bottomNavigationNavigate
15
+ import com.stackknowledge.ranking.navigation.navigateToRanking
16
+ import com.stackknowledge.ranking.navigation.navigateToTeacherRanking
14
17
import com.stackknowledge.ranking.navigation.rankingScreen
15
18
import com.stackknowledge.ranking.navigation.teacherRankingScreen
16
19
import com.stackknowledge.score_mission.navigation.gradingAnswerScreen
17
20
import com.stackknowledge.score_mission.navigation.navigateToGradingAnswer
21
+ import com.stackknowledge.score_mission.navigation.navigateToSolvedMission
18
22
import com.stackknowledge.score_mission.navigation.solvedMissionScreen
19
23
import com.stackknowledge.shop.navigation.shopRoute
20
24
import com.stackknowledge.shop.navigation.shopScreen
@@ -25,8 +29,10 @@ import com.stackkowledge.mission.navigation.createMissionRoute
25
29
import com.stackkowledge.mission.navigation.createMissionScreen
26
30
import com.stackkowledge.mission.navigation.entireMissionRoute
27
31
import com.stackkowledge.mission.navigation.entireMissionScreen
32
+ import com.stackkowledge.mission.navigation.navigateToEntireMission
28
33
import com.stackkowledge.mission.navigation.navigateToResolveMission
29
34
import com.stackkowledge.mission.navigation.resolveMissionScreen
35
+ import enumdatatype.Authority
30
36
31
37
@Composable
32
38
fun StackKnowledgeNavHost (
@@ -46,7 +52,17 @@ fun StackKnowledgeNavHost(
46
52
onRoleClick = navController::navigateToLogin
47
53
)
48
54
mainScreen(
49
- onNavigate = { role, navType -> bottomNavigationNavigate(role, navController, navType) }
55
+ onNavigate = { role, navType, index ->
56
+ if (index != null ) {
57
+ if (navType == NavigateType .MISSION .value) {
58
+ if (role == Authority .ROLE_STUDENT ) navController.navigateToEntireMission()
59
+ else navController.navigateToSolvedMission()
60
+ } else {
61
+ if (role == Authority .ROLE_STUDENT ) navController.navigateToRanking()
62
+ else navController.navigateToTeacherRanking()
63
+ }
64
+ } else bottomNavigationNavigate(role, navController, navType)
65
+ },
50
66
)
51
67
createMissionScreen(
52
68
onNavigate = { role, navType -> bottomNavigationNavigate(role, navController, navType) },
0 commit comments