From 3860540d9c7cba8e9f59a3809439d2574621d938 Mon Sep 17 00:00:00 2001 From: ElEgEv <112943269+ElEgEv@users.noreply.github.com> Date: Thu, 7 Dec 2023 23:49:07 +0400 Subject: [PATCH] Create drop down. --- .../8.0/executionHistory/executionHistory.bin | Bin 2726944 -> 2726944 bytes .../executionHistory/executionHistory.lock | Bin 17 -> 17 bytes compose/.gradle/8.0/fileHashes/fileHashes.bin | Bin 356446 -> 386264 bytes .../.gradle/8.0/fileHashes/fileHashes.lock | Bin 17 -> 17 bytes .../8.0/fileHashes/resourceHashesCache.bin | Bin 219751 -> 231515 bytes .../buildOutputCleanup.lock | Bin 17 -> 17 bytes compose/.gradle/file-system.probe | Bin 8 -> 8 bytes .../is/pmu/composeui/navigation/MainNavbar.kt | 2 +- .../ulstu/is/pmu/tank/composeui/TankList.kt | 24 +- .../tank/composeui/edit/TankEditViewModel.kt | 2 +- .../java/ru/ulstu/is/pmu/tank/dao/TankDao.kt | 6 +- .../ulstu/is/pmu/tank/database/AppDatabase.kt | 18 +- .../is/pmu/tanks/composeui/Constructor.kt | 209 ++++++++++-------- 13 files changed, 142 insertions(+), 119 deletions(-) diff --git a/compose/.gradle/8.0/executionHistory/executionHistory.bin b/compose/.gradle/8.0/executionHistory/executionHistory.bin index 4094cece29bb53ba00aa3087c619beeab3cccb25..65d6285aba3e76944189efb82f572073ad95a783 100644 GIT binary patch delta 25472 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 diff --git a/compose/.gradle/8.0/executionHistory/executionHistory.lock b/compose/.gradle/8.0/executionHistory/executionHistory.lock index 176eef405a953cb3351cd1c138b3acd7fce51e64..15f3bc62bb677e8f20c7e1b6e611e0580d4fc842 100644 GIT binary patch literal 17 VcmZQpM1oQv^ literal 17 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 F{~!DsSNs3~ delta 13145 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

6(lCn>GSn6%Lrb{h% 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 VFpsj}hgtV}tiN!7xW}cX{{y(IGo%0j diff --git a/compose/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/compose/.gradle/buildOutputCleanup/buildOutputCleanup.lock index de34659e9c5cffefe585b08a63d12f45e239534d..cacd50e36ca05b7825b5037dcb5e4051840d2db4 100644 GIT binary patch literal 17 VcmZQhF*rNr{gMY+3}7%<3IIGD1&sgz literal 17 VcmZQhF*rNr{gMY+3}7%Z1pquw1c diff --git a/compose/.gradle/file-system.probe b/compose/.gradle/file-system.probe index 7b9e870aebc94eb99768e30005c5888ad7f20963..e3bf28d9c2706fa8c0cdecc8f32c38b55fdcf0d8 100644 GIT binary patch literal 8 PcmZQzVC->S)T9Og2JQkK literal 8 PcmZQzVC)fzp12191_=U6 diff --git a/compose/app/src/main/java/ru/ulstu/is/pmu/composeui/navigation/MainNavbar.kt b/compose/app/src/main/java/ru/ulstu/is/pmu/composeui/navigation/MainNavbar.kt index ab88cab..73ba94f 100644 --- a/compose/app/src/main/java/ru/ulstu/is/pmu/composeui/navigation/MainNavbar.kt +++ b/compose/app/src/main/java/ru/ulstu/is/pmu/composeui/navigation/MainNavbar.kt @@ -193,7 +193,7 @@ fun DropDownList( .width(200.dp), readOnly = true, value = mySelectedOption, - onValueChange = {}, + onValueChange = { mySelectedOption = it }, label = { Text("") }, trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded = expandedOptions) }, colors = ExposedDropdownMenuDefaults.textFieldColors(), diff --git a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/TankList.kt b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/TankList.kt index 97e20cb..b84af96 100644 --- a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/TankList.kt +++ b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/TankList.kt @@ -38,13 +38,10 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.lifecycle.viewmodel.compose.viewModel import androidx.navigation.NavController -import androidx.navigation.compose.rememberNavController import ru.ulstu.`is`.pmu.R import ru.ulstu.`is`.pmu.composeui.navigation.Screen import ru.ulstu.`is`.pmu.tank.composeui.list.TankListViewModel -import ru.ulstu.`is`.pmu.tank.database.AppDatabase import ru.ulstu.`is`.pmu.tank.model.Tank -import ru.ulstu.`is`.pmu.tank.model.getStudents import ru.ulstu.`is`.pmu.ui.AppViewModelProvider import ru.ulstu.`is`.pmu.ui.theme.CustomDark import ru.ulstu.`is`.pmu.ui.theme.CustomOrange @@ -69,12 +66,11 @@ fun TankList( if (navController != null) { TankList( numbers = listIds, - listTanks = tankListUiState.tankList, - onClick = { uid: Long -> - val route = Screen.Constructor.route.replace("{id}", uid.toString()) - navController.navigate(route) - } - ) + listTanks = tankListUiState.tankList + ) { uid: Long -> + val route = Screen.Constructor.route.replace("{id}", uid.toString()) + navController.navigate(route) + } } } @@ -213,9 +209,8 @@ fun TankListPreview() { ) { TankList( numbers = listOf(1, 2, 3), - listTanks = (1..20).map { i -> Tank.getTank(i.toLong()) }, - onClick = { } - ) + listTanks = (1..20).map { i -> Tank.getTank(i.toLong()) } + ) { } } } } @@ -230,9 +225,8 @@ fun TankEmptyListPreview() { ) { TankList( numbers = listOf(1, 2, 3), - listTanks = listOf(), - onClick = { } - ) + listTanks = listOf() + ) { } } } } \ No newline at end of file diff --git a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/edit/TankEditViewModel.kt b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/edit/TankEditViewModel.kt index b87e87f..4140e7b 100644 --- a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/edit/TankEditViewModel.kt +++ b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/composeui/edit/TankEditViewModel.kt @@ -82,7 +82,7 @@ fun TankDetails.toTank(uid: Long = 0): Tank = Tank( price = price, image = image, levelId = levelId, - nationId = levelId + nationId = nationId ) fun Tank.toDetails(): TankDetails = TankDetails( diff --git a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/dao/TankDao.kt b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/dao/TankDao.kt index 98ea165..cb27a49 100644 --- a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/dao/TankDao.kt +++ b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/dao/TankDao.kt @@ -14,10 +14,10 @@ import ru.ulstu.`is`.pmu.tank.model.TankWithNationAndLevel @Dao interface TankDao { - @Query("select * from tanks") + @Query("select * from tanks GROUP BY nationId, levelId ORDER BY nationId") fun getAll(): Flow> - //получить конкретный уровень + //получить конкретный танк @Query("select * from tanks where tanks.tankId = :uid") fun getTankUid(uid: Long): Flow @@ -27,7 +27,7 @@ interface TankDao { "LEFT JOIN tanks as t on ut.tankId = t.tankId " + "LEFT JOIN levels as l on t.levelId = l.uid " + "LEFT JOIN nations as n on t.nationId = n.uid " + - "WHERE ut.userId = :uid" + "WHERE ut.userId = :uid GROUP BY t.nationId, t.levelId ORDER BY t.nationId" ) fun getUserTanks(uid: Long): Flow> diff --git a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/database/AppDatabase.kt b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/database/AppDatabase.kt index e7aef6f..60f989d 100644 --- a/compose/app/src/main/java/ru/ulstu/is/pmu/tank/database/AppDatabase.kt +++ b/compose/app/src/main/java/ru/ulstu/is/pmu/tank/database/AppDatabase.kt @@ -29,7 +29,7 @@ abstract class AppDatabase : RoomDatabase() { abstract fun userDao() : UserDao companion object { - private const val DB_NAME: String = "ten-db" + private const val DB_NAME: String = "12-db" @Volatile private var INSTANCE: AppDatabase? = null @@ -88,14 +88,14 @@ abstract class AppDatabase : RoomDatabase() { val tankDao = database.tankDao() val tank1 = Tank(20L,"МС-1", 1000, R.drawable.t_34_85, level1.uid, nation1.uid) val tank2 = Tank(21L, "Т-34-85", 960000, R.drawable.t_34_85, level6.uid, nation1.uid) - val tank3 = Tank(22L, "ИС-2", 1230000, R.drawable.t_34_85, level7.uid, nation1.uid) - val tank4 = Tank(23L, "ИСУ-152", 2350000, R.drawable.t_34_85, level8.uid, nation1.uid) - val tank5 = Tank(24L, "Tiger 1", 1430000, R.drawable.tiger_1, level7.uid, nation2.uid) - val tank6 = Tank(25L, "Ferdinand", 2500000, R.drawable.tiger_1, level8.uid, nation2.uid) - val tank7 = Tank(26L, "Tiger 2", 2500000, R.drawable.tiger_1, level8.uid, nation2.uid) - val tank8 = Tank(27L, "Panther", 1350000, R.drawable.tiger_1, level7.uid, nation2.uid) - val tank9 = Tank(28L, "M4A2E3", 990000, R.drawable.sherman, level6.uid, nation3.uid) - val tank10 = Tank(29L, "Pershing", 1260000, R.drawable.sherman, level8.uid, nation3.uid) + val tank10 = Tank(22L, "Pershing", 1260000, R.drawable.sherman, level8.uid, nation3.uid) + val tank6 = Tank(23L, "Ferdinand", 2500000, R.drawable.tiger_1, level8.uid, nation2.uid) + val tank3 = Tank(24L, "ИС-2", 1230000, R.drawable.t_34_85, level7.uid, nation1.uid) + val tank4 = Tank(25L, "ИСУ-152", 2350000, R.drawable.t_34_85, level8.uid, nation1.uid) + val tank5 = Tank(26L, "Tiger 1", 1430000, R.drawable.tiger_1, level7.uid, nation2.uid) + val tank7 = Tank(27L, "Tiger 2", 2500000, R.drawable.tiger_1, level8.uid, nation2.uid) + val tank8 = Tank(28L, "Panther", 1350000, R.drawable.tiger_1, level7.uid, nation2.uid) + val tank9 = Tank(29L, "M4A2E3", 990000, R.drawable.sherman, level6.uid, nation3.uid) val tank11 = Tank(30L, "Hellcat", 940000, R.drawable.sherman, level7.uid, nation3.uid) tankDao.insert(tank1) diff --git a/compose/app/src/main/java/ru/ulstu/is/pmu/tanks/composeui/Constructor.kt b/compose/app/src/main/java/ru/ulstu/is/pmu/tanks/composeui/Constructor.kt index ed47c2e..8bc8491 100644 --- a/compose/app/src/main/java/ru/ulstu/is/pmu/tanks/composeui/Constructor.kt +++ b/compose/app/src/main/java/ru/ulstu/is/pmu/tanks/composeui/Constructor.kt @@ -13,16 +13,17 @@ import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.width import androidx.compose.material3.Button import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.DropdownMenu import androidx.compose.material3.DropdownMenuItem import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExposedDropdownMenuBox import androidx.compose.material3.ExposedDropdownMenuDefaults +import androidx.compose.material3.ExposedDropdownMenuDefaults.TrailingIcon import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.material3.TextField import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue -import androidx.compose.runtime.mutableIntStateOf import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope @@ -38,11 +39,8 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.lifecycle.viewmodel.compose.viewModel import androidx.navigation.NavController -import androidx.navigation.compose.currentBackStackEntryAsState -import androidx.navigation.compose.rememberNavController import kotlinx.coroutines.launch import ru.ulstu.`is`.pmu.R -import ru.ulstu.`is`.pmu.composeui.navigation.Screen import ru.ulstu.`is`.pmu.tank.composeui.edit.LevelDropDownViewModel import ru.ulstu.`is`.pmu.tank.composeui.edit.LevelUiState import ru.ulstu.`is`.pmu.tank.composeui.edit.LevelsListUiState @@ -53,12 +51,9 @@ import ru.ulstu.`is`.pmu.tank.composeui.edit.TankDetails import ru.ulstu.`is`.pmu.tank.composeui.edit.TankEditViewModel import ru.ulstu.`is`.pmu.tank.composeui.edit.TankUiState import ru.ulstu.`is`.pmu.tank.composeui.edit.toUiState -import ru.ulstu.`is`.pmu.tank.composeui.list.TankListViewModel import ru.ulstu.`is`.pmu.tank.model.Level import ru.ulstu.`is`.pmu.tank.model.Nation import ru.ulstu.`is`.pmu.tank.model.Tank -import ru.ulstu.`is`.pmu.tank.model.getLevels -import ru.ulstu.`is`.pmu.tank.model.getNations import ru.ulstu.`is`.pmu.ui.AppViewModelProvider import ru.ulstu.`is`.pmu.ui.theme.CustomDark import ru.ulstu.`is`.pmu.ui.theme.CustomOrange @@ -73,15 +68,12 @@ fun Constructor( nationDropDownViewModel: NationDropDownViewModel = viewModel(factory = AppViewModelProvider.Factory) ){ val coroutineScope = rememberCoroutineScope() - - val tankUiState = tankEditViewModel.tankUiState - Log.d("hi-2", tankUiState.tankDetails.name) levelDropDownViewModel.setCurrentLevel(tankEditViewModel.tankUiState.tankDetails.levelId ?: 1) - nationDropDownViewModel.setCurrentNation(tankUiState.tankDetails.nationId ?: 1) + nationDropDownViewModel.setCurrentNation(tankEditViewModel.tankUiState.tankDetails.nationId ?: 1) Constructor( - tankUiState = tankUiState, + tankUiState = tankEditViewModel.tankUiState, levelUiState = levelDropDownViewModel.levelUiState, levelsListUiState = levelDropDownViewModel.levelsListUiState, onLevelUpdate = levelDropDownViewModel::updateUiState, @@ -98,7 +90,106 @@ fun Constructor( ) } -@OptIn(ExperimentalMaterial3Api::class, ExperimentalTextApi::class) +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun LevelDropDown( + levelUiState: LevelUiState, + levelsListUiState: LevelsListUiState, + onLevelUpdate: (Level) -> Unit +) { + var expanded: Boolean by remember { mutableStateOf(false) } + ExposedDropdownMenuBox( + modifier = Modifier + .padding(top = 7.dp), + expanded = expanded, + onExpandedChange = { + expanded = !expanded + } + ) { + TextField( + value = levelUiState.level?.level.toString(), + onValueChange = {}, + readOnly = true, + trailingIcon = { + TrailingIcon(expanded = expanded) + }, + modifier = Modifier + .width(200.dp) + .menuAnchor() + ) + DropdownMenu( + expanded = expanded, + onDismissRequest = { expanded = false }, + modifier = Modifier + .background(Color.White) + .exposedDropdownSize() + ) { + levelsListUiState.levelList.forEach { level -> + DropdownMenuItem( + text = { + Text(text = level.level.toString()) + }, + onClick = { + onLevelUpdate(level) + expanded = false + } + ) + } + } + } +} + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +private fun NationDropDown( + nationUiState: NationUiState, + nationsListUiState: NationsListUiState, + onNationUpdate: (Nation) -> Unit +) { + var expanded: Boolean by remember { mutableStateOf(false) } + ExposedDropdownMenuBox( + modifier = Modifier + .padding(top = 7.dp), + expanded = expanded, + onExpandedChange = { + expanded = !expanded + } + ) { + TextField( + value = nationUiState.nation?.nationName ?: "", + onValueChange = {}, + readOnly = true, + trailingIcon = { + TrailingIcon(expanded = expanded) + }, + modifier = Modifier + .width(200.dp) + .menuAnchor() + ) + DropdownMenu( + expanded = expanded, + onDismissRequest = { expanded = false }, + modifier = Modifier + .background(Color.White) + .exposedDropdownSize() + ) { + nationsListUiState.nationList.forEach { nation -> + DropdownMenuItem( + text = { + Text(text = nation.nationName) + }, + onClick = { + onNationUpdate(nation) + expanded = false + } + ) + } + } + } +} + + +@OptIn(ExperimentalMaterial3Api::class) @Composable private fun Constructor( tankUiState: TankUiState, @@ -160,86 +251,24 @@ private fun Constructor( ) Spacer(Modifier.height(10.dp)) // Выпадающий список уровней - ExposedDropdownMenuBox( - expanded = expandedLevels, - onExpandedChange = { - expandedLevels = !expandedLevels + LevelDropDown( + levelUiState = levelUiState, + levelsListUiState = levelsListUiState, + onLevelUpdate = { + onUpdate(tankUiState.tankDetails.copy(levelId = it.uid)) + onLevelUpdate(it) }, - ) { - // textfield - TextField( - modifier = Modifier - .menuAnchor() // menuAnchor modifier must be passed to the text field for correctness. - .width(200.dp), - readOnly = true, - value = levelUiState.level?.level.toString(), - onValueChange = {}, - label = { Text("") }, - trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded = expandedLevels) }, - colors = ExposedDropdownMenuDefaults.textFieldColors(), - ) - - // menu - ExposedDropdownMenu( - expanded = expandedLevels, - onDismissRequest = { - expandedLevels = false - }, - ) { - // menu items - levelsListUiState.levelList.forEach { selectionOption -> - DropdownMenuItem( - text = { Text(selectionOption.level.toString()) }, - onClick = { - onLevelUpdate(selectionOption) - expandedLevels = false - }, - contentPadding = ExposedDropdownMenuDefaults.ItemContentPadding, - ) - } - } - } + ) Spacer(Modifier.height(10.dp)) // Выпадающий список наций - ExposedDropdownMenuBox( - expanded = expandedNation, - onExpandedChange = { - expandedNation = !expandedNation - } - ) { - // textfield - TextField( - modifier = Modifier - .menuAnchor() // menuAnchor modifier must be passed to the text field for correctness. - .width(200.dp), - readOnly = true, - value = nationUiState.nation?.nationName ?: "", - onValueChange = {}, - label = { Text("") }, - trailingIcon = { ExposedDropdownMenuDefaults.TrailingIcon(expanded = expandedNation) }, - colors = ExposedDropdownMenuDefaults.textFieldColors(), - ) - - // menu - ExposedDropdownMenu( - expanded = expandedNation, - onDismissRequest = { - expandedNation = false - }, - ) { - // menu items - nationsListUiState.nationList.forEach { selectionOption -> - DropdownMenuItem( - text = { Text(selectionOption.nationName) }, - onClick = { - onNationUpdate(selectionOption) - expandedNation = false - }, - contentPadding = ExposedDropdownMenuDefaults.ItemContentPadding, - ) - } - } - } + NationDropDown( + nationUiState = nationUiState, + nationsListUiState = nationsListUiState, + onNationUpdate = { + onUpdate(tankUiState.tankDetails.copy(nationId = it.uid)) + onNationUpdate(it) + }, + ) Spacer(Modifier.height(10.dp)) TextField( value = tankUiState.tankDetails.price.toString(),