@@ -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.shopScreen
20
24
import com.stackknowledge.shop.navigation.teacherShopScreen
@@ -23,8 +27,10 @@ import com.stackkowledge.mission.navigation.createMissionRoute
23
27
import com.stackkowledge.mission.navigation.createMissionScreen
24
28
import com.stackkowledge.mission.navigation.entireMissionRoute
25
29
import com.stackkowledge.mission.navigation.entireMissionScreen
30
+ import com.stackkowledge.mission.navigation.navigateToEntireMission
26
31
import com.stackkowledge.mission.navigation.navigateToResolveMission
27
32
import com.stackkowledge.mission.navigation.resolveMissionScreen
33
+ import enumdatatype.Authority
28
34
29
35
@Composable
30
36
fun StackKnowledgeNavHost (
@@ -44,7 +50,17 @@ fun StackKnowledgeNavHost(
44
50
onRoleClick = navController::navigateToLogin
45
51
)
46
52
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
+ },
48
64
)
49
65
createMissionScreen(
50
66
onNavigate = { role, navType -> bottomNavigationNavigate(role, navController, navType) },
0 commit comments