diff --git a/app/src/main/java/com/zyzf/coffeepreorder/CoffeeApplication.kt b/app/src/main/java/com/zyzf/coffeepreorder/CoffeeApplication.kt index 457cbc1..ce12640 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/CoffeeApplication.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/CoffeeApplication.kt @@ -3,7 +3,6 @@ package com.zyzf.coffeepreorder import android.app.Application import com.zyzf.coffeepreorder.database.AppContainer import com.zyzf.coffeepreorder.database.AppDataContainer -import com.zyzf.coffeepreorder.database.model.Coffee import com.zyzf.coffeepreorder.database.model.User class CoffeeApplication : Application() { diff --git a/app/src/main/java/com/zyzf/coffeepreorder/MainComposeActivity.kt b/app/src/main/java/com/zyzf/coffeepreorder/MainComposeActivity.kt index 3fadc1c..dffe05c 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/MainComposeActivity.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/MainComposeActivity.kt @@ -1,15 +1,12 @@ package com.zyzf.coffeepreorder -import android.content.res.Configuration import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Surface -import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier -import androidx.compose.ui.tooling.preview.Preview import com.zyzf.coffeepreorder.ui.navigation.MainNavbar import com.zyzf.coffeepreorder.ui.theme.CoffeePreorderTheme diff --git a/app/src/main/java/com/zyzf/coffeepreorder/api/user/RestUserRepository.kt b/app/src/main/java/com/zyzf/coffeepreorder/api/user/RestUserRepository.kt index 16c051a..03a1ecd 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/api/user/RestUserRepository.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/api/user/RestUserRepository.kt @@ -6,18 +6,11 @@ import androidx.paging.Pager import androidx.paging.PagingConfig import androidx.paging.PagingData import com.zyzf.coffeepreorder.api.MyServerService -import com.zyzf.coffeepreorder.api.coffee.CoffeeRemoteMediator -import com.zyzf.coffeepreorder.api.model.UserRemote -import com.zyzf.coffeepreorder.api.model.toCoffee -import com.zyzf.coffeepreorder.api.model.toCoffeeRemote import com.zyzf.coffeepreorder.api.model.toUser import com.zyzf.coffeepreorder.api.model.toUserRemote import com.zyzf.coffeepreorder.database.AppContainer import com.zyzf.coffeepreorder.database.AppDatabase -import com.zyzf.coffeepreorder.database.model.Coffee import com.zyzf.coffeepreorder.database.model.User -import com.zyzf.coffeepreorder.database.repository.CoffeeRepository -import com.zyzf.coffeepreorder.database.repository.OfflineCoffeeRepository import com.zyzf.coffeepreorder.database.repository.OfflineRemoteKeyRepository import com.zyzf.coffeepreorder.database.repository.OfflineUserRepository import com.zyzf.coffeepreorder.database.repository.UserRepository diff --git a/app/src/main/java/com/zyzf/coffeepreorder/api/user/UserRemoteMediator.kt b/app/src/main/java/com/zyzf/coffeepreorder/api/user/UserRemoteMediator.kt index db24acb..e3a2499 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/api/user/UserRemoteMediator.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/api/user/UserRemoteMediator.kt @@ -6,14 +6,11 @@ import androidx.paging.PagingState import androidx.paging.RemoteMediator import androidx.room.withTransaction import com.zyzf.coffeepreorder.api.MyServerService -import com.zyzf.coffeepreorder.api.model.toCoffee import com.zyzf.coffeepreorder.api.model.toUser import com.zyzf.coffeepreorder.database.AppDatabase -import com.zyzf.coffeepreorder.database.model.Coffee import com.zyzf.coffeepreorder.database.model.RemoteKeyType import com.zyzf.coffeepreorder.database.model.RemoteKeys import com.zyzf.coffeepreorder.database.model.User -import com.zyzf.coffeepreorder.database.repository.OfflineCoffeeRepository import com.zyzf.coffeepreorder.database.repository.OfflineRemoteKeyRepository import com.zyzf.coffeepreorder.database.repository.OfflineUserRepository import retrofit2.HttpException diff --git a/app/src/main/java/com/zyzf/coffeepreorder/database/dao/UserDao.kt b/app/src/main/java/com/zyzf/coffeepreorder/database/dao/UserDao.kt index 4f9c1e1..cc1884b 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/database/dao/UserDao.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/database/dao/UserDao.kt @@ -6,10 +6,7 @@ import androidx.room.Delete import androidx.room.Insert import androidx.room.Query import androidx.room.Update -import com.zyzf.coffeepreorder.api.user.RestUserRepository -import com.zyzf.coffeepreorder.database.model.Coffee import com.zyzf.coffeepreorder.database.model.User -import kotlinx.coroutines.flow.Flow @Dao interface UserDao { diff --git a/app/src/main/java/com/zyzf/coffeepreorder/database/model/Cart.kt b/app/src/main/java/com/zyzf/coffeepreorder/database/model/Cart.kt index b031660..ac9a86c 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/database/model/Cart.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/database/model/Cart.kt @@ -35,8 +35,7 @@ data class Cart( other as Cart if (uid != other.uid) return false if (coffeeId != other.coffeeId) return false - if (count != other.count) return false - return true + return count == other.count } override fun hashCode(): Int { diff --git a/app/src/main/java/com/zyzf/coffeepreorder/database/model/Coffee.kt b/app/src/main/java/com/zyzf/coffeepreorder/database/model/Coffee.kt index 5dcac82..2cd4142 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/database/model/Coffee.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/database/model/Coffee.kt @@ -41,8 +41,7 @@ data class Coffee( if (uid != other.uid) return false if (name != other.name) return false if (cost != other.cost) return false - if (ingredients != other.ingredients) return false - return true + return ingredients == other.ingredients } override fun hashCode(): Int { diff --git a/app/src/main/java/com/zyzf/coffeepreorder/database/model/User.kt b/app/src/main/java/com/zyzf/coffeepreorder/database/model/User.kt index 21dea05..c044e5f 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/database/model/User.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/database/model/User.kt @@ -51,8 +51,7 @@ data class User( if (fio != other.fio) return false if (phone != other.phone) return false if (password != other.password) return false - if (role != other.role) return false - return true + return role == other.role } override fun hashCode(): Int { diff --git a/app/src/main/java/com/zyzf/coffeepreorder/database/repository/OfflineUserRepository.kt b/app/src/main/java/com/zyzf/coffeepreorder/database/repository/OfflineUserRepository.kt index 40df1f5..d84de96 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/database/repository/OfflineUserRepository.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/database/repository/OfflineUserRepository.kt @@ -6,7 +6,6 @@ import androidx.paging.PagingData import androidx.paging.PagingSource import com.zyzf.coffeepreorder.database.AppContainer import com.zyzf.coffeepreorder.database.dao.UserDao -import com.zyzf.coffeepreorder.database.model.Coffee import com.zyzf.coffeepreorder.database.model.User import kotlinx.coroutines.flow.Flow diff --git a/app/src/main/java/com/zyzf/coffeepreorder/ui/cart/Cart.kt b/app/src/main/java/com/zyzf/coffeepreorder/ui/cart/Cart.kt index aadc424..ef411c0 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/ui/cart/Cart.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/ui/cart/Cart.kt @@ -6,7 +6,6 @@ import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.heightIn import androidx.compose.foundation.layout.padding @@ -96,7 +95,7 @@ fun Cart( } ) { innerPadding -> Box (modifier = Modifier - .padding(0.dp) + .padding(innerPadding) .pullRefresh(state)) { PullRefreshIndicator(refreshing = refreshing, state = state, modifier = Modifier @@ -104,34 +103,27 @@ fun Cart( .align(Alignment.TopCenter) ) CartList( - modifier = Modifier - .padding(innerPadding) - .pullRefresh(state) - .fillMaxSize(), coffeeList = coffeeListUiState, onDeleteFromCartClick = {currentCoffee: Coffee -> coffee.value = currentCoffee openDialog.value = true - }, - getCoffeeCount = {coffeeId: Int -> - viewModel.getCountForCoffee(coffeeId) } - ) + ) { coffeeId: Int -> + viewModel.getCountForCoffee(coffeeId) + } } } DeleteFromCartAlertDialog( - openDialog = openDialog, - onConfirmClick = { - coroutineScope.launch { - viewModel.deleteCoffeeFromCart(coffee.value) - } + openDialog = openDialog + ) { + coroutineScope.launch { + viewModel.deleteCoffeeFromCart(coffee.value) } - ) + } } @Composable private fun CartList( - modifier: Modifier = Modifier, coffeeList: LazyPagingItems, onDeleteFromCartClick: (coffee: Coffee) -> Unit, getCoffeeCount: (coffeeId: Int) -> Double @@ -158,7 +150,6 @@ private fun CartList( @Composable private fun CartListItem ( coffee: Coffee, - modifier: Modifier = Modifier, onDeleteFromCartClick: (coffee: Coffee) -> Unit, getCoffeeCount: (coffeeId: Int) -> Double ) { @@ -219,7 +210,6 @@ private fun CartListItem ( @Composable private fun DeleteFromCartAlertDialog( - modifier: Modifier = Modifier, openDialog: MutableState, onConfirmClick: () -> Unit ) { diff --git a/app/src/main/java/com/zyzf/coffeepreorder/ui/coffee/CoffeeList.kt b/app/src/main/java/com/zyzf/coffeepreorder/ui/coffee/CoffeeList.kt index b37fe59..016ca10 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/ui/coffee/CoffeeList.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/ui/coffee/CoffeeList.kt @@ -15,7 +15,6 @@ import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.Spacer -import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.heightIn import androidx.compose.foundation.layout.padding @@ -131,27 +130,23 @@ fun CoffeeList( } } ) { innerPadding -> - Box (modifier = Modifier.padding(0.dp).pullRefresh(state)) { + Box (modifier = Modifier.padding(innerPadding).pullRefresh(state)) { PullRefreshIndicator(refreshing = refreshing, state = state, modifier = Modifier.zIndex(100f).align(Alignment.TopCenter) ) CoffeeList( - modifier = Modifier - .padding(innerPadding) - .fillMaxSize(), coffeeList = coffeeListUiState, onAddToCartClick = { coffeeUid: Int -> coroutineScope.launch { viewModel.addCoffeeToCart(coffeeUid = coffeeUid) } - }, - onEditClick = { currentCoffee: Coffee -> - coroutineScope.launch { - coffee.value = currentCoffee - openDialog.value = true - } } - ) + ) { currentCoffee: Coffee -> + coroutineScope.launch { + coffee.value = currentCoffee + openDialog.value = true + } + } } } AddEditModalBottomSheet( @@ -290,7 +285,6 @@ private fun AddEditModalBottomSheet( @Composable private fun CoffeeList( - modifier: Modifier = Modifier, coffeeList: LazyPagingItems, onAddToCartClick: (coffeeUid: Int) -> Unit, onEditClick: (coffee: Coffee) -> Unit @@ -304,7 +298,11 @@ private fun CoffeeList( ) {index -> val coffee = coffeeList[index] coffee?.let { - CoffeeListItem(coffee = coffee, onAddToCartClick = onAddToCartClick, onEditClick = onEditClick) + CoffeeListItem( + coffee = coffee, + onAddToCartClick = onAddToCartClick, + onEditClick = onEditClick + ) } } } @@ -313,7 +311,6 @@ private fun CoffeeList( @Composable private fun CoffeeListItem( coffee: Coffee, - modifier: Modifier = Modifier, onAddToCartClick: (coffeeUid: Int) -> Unit, onEditClick: (coffee: Coffee) -> Unit ) { @@ -395,9 +392,8 @@ fun CoffeeListPreview() { coffeeList = MutableStateFlow( PagingData.from((1..20).map { i -> Coffee.getCoffee(i) }) ).collectAsLazyPagingItems(), - onAddToCartClick = {}, - onEditClick = {} - ) + onAddToCartClick = {} + ) {} } } } @@ -415,9 +411,8 @@ fun CoffeeEmptyListPreview() { coffeeList = MutableStateFlow( PagingData.empty() ).collectAsLazyPagingItems(), - onAddToCartClick = {}, - onEditClick = {} - ) + onAddToCartClick = {} + ) {} } } } \ No newline at end of file diff --git a/app/src/main/java/com/zyzf/coffeepreorder/ui/login/Login.kt b/app/src/main/java/com/zyzf/coffeepreorder/ui/login/Login.kt index 6ad308c..c555a98 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/ui/login/Login.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/ui/login/Login.kt @@ -44,17 +44,13 @@ import com.zyzf.coffeepreorder.R import com.zyzf.coffeepreorder.database.AppDatabase import com.zyzf.coffeepreorder.database.model.User import com.zyzf.coffeepreorder.ui.AppViewModelProvider -import com.zyzf.coffeepreorder.ui.coffee.CoffeeListViewModel import com.zyzf.coffeepreorder.ui.navigation.Screen import com.zyzf.coffeepreorder.ui.theme.CoffeePreorderTheme import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.GlobalScope -import kotlinx.coroutines.coroutineScope import kotlinx.coroutines.launch import kotlinx.coroutines.withContext -@OptIn(DelicateCoroutinesApi::class) @Composable fun Login( navController: NavController?, diff --git a/app/src/main/java/com/zyzf/coffeepreorder/ui/login/LoginViewModel.kt b/app/src/main/java/com/zyzf/coffeepreorder/ui/login/LoginViewModel.kt index 1b14407..5e2bcff 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/ui/login/LoginViewModel.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/ui/login/LoginViewModel.kt @@ -1,7 +1,6 @@ package com.zyzf.coffeepreorder.ui.login import androidx.lifecycle.ViewModel -import com.zyzf.coffeepreorder.api.user.RestUserRepository import com.zyzf.coffeepreorder.database.model.User import com.zyzf.coffeepreorder.database.repository.UserRepository diff --git a/app/src/main/java/com/zyzf/coffeepreorder/ui/profile/Profile.kt b/app/src/main/java/com/zyzf/coffeepreorder/ui/profile/Profile.kt index 97a82fe..6e03c48 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/ui/profile/Profile.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/ui/profile/Profile.kt @@ -195,7 +195,8 @@ fun Profile(navController: NavController?) { onClick = { GlobalScope.launch (Dispatchers.Main) { if (userOldPsswd.value == user.password && userNewPsswd.value == userNewPsswdConf.value) { - val userUid: Int? = AppDatabase.getInstance(context).userDao().update(User(user.uid!!, userLogin, userFIO, userPhone, userNewPsswd.value, user.role)) + val userUid: Int? = AppDatabase.getInstance(context).userDao().update(User( + user.uid, userLogin, userFIO, userPhone, userNewPsswd.value, user.role)) user = AppDatabase.getInstance(context).userDao().getByUid(userUid!!)!! CoffeeApplication.currentUser = user } diff --git a/app/src/main/java/com/zyzf/coffeepreorder/ui/register/Register.kt b/app/src/main/java/com/zyzf/coffeepreorder/ui/register/Register.kt index ce05e41..3694728 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/ui/register/Register.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/ui/register/Register.kt @@ -40,25 +40,19 @@ import coil.compose.AsyncImage import coil.request.ImageRequest import com.zyzf.coffeepreorder.CoffeeApplication import com.zyzf.coffeepreorder.R -import com.zyzf.coffeepreorder.database.AppDatabase import com.zyzf.coffeepreorder.database.model.User import com.zyzf.coffeepreorder.ui.AppViewModelProvider -import com.zyzf.coffeepreorder.ui.login.LoginViewModel import com.zyzf.coffeepreorder.ui.navigation.Screen import com.zyzf.coffeepreorder.ui.theme.CoffeePreorderTheme import kotlinx.coroutines.DelicateCoroutinesApi import kotlinx.coroutines.Dispatchers -import kotlinx.coroutines.GlobalScope -import kotlinx.coroutines.coroutineScope import kotlinx.coroutines.launch -@OptIn(DelicateCoroutinesApi::class) @Composable fun Register( navController: NavController?, viewModel: RegisterViewModel = viewModel(factory = AppViewModelProvider.Factory) ) { - val context = LocalContext.current val coroutineScope = rememberCoroutineScope() var login: String by remember { mutableStateOf("") } var fio: String by remember { mutableStateOf("") } diff --git a/app/src/main/java/com/zyzf/coffeepreorder/ui/register/RegisterViewModel.kt b/app/src/main/java/com/zyzf/coffeepreorder/ui/register/RegisterViewModel.kt index d0dcf7b..af518f5 100644 --- a/app/src/main/java/com/zyzf/coffeepreorder/ui/register/RegisterViewModel.kt +++ b/app/src/main/java/com/zyzf/coffeepreorder/ui/register/RegisterViewModel.kt @@ -1,7 +1,6 @@ package com.zyzf.coffeepreorder.ui.register import androidx.lifecycle.ViewModel -import com.zyzf.coffeepreorder.database.AppDatabase import com.zyzf.coffeepreorder.database.model.User import com.zyzf.coffeepreorder.database.repository.UserRepository diff --git a/app/src/main/res/drawable/coffee_image.png b/app/src/main/res/drawable/coffee_image.png deleted file mode 100644 index c82e432..0000000 Binary files a/app/src/main/res/drawable/coffee_image.png and /dev/null differ diff --git a/app/src/main/res/drawable/ic_connection_error.xml b/app/src/main/res/drawable/ic_connection_error.xml deleted file mode 100644 index a961d63..0000000 --- a/app/src/main/res/drawable/ic_connection_error.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index f8c6127..a6b3dae 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -1,10 +1,2 @@ - - #FFBB86FC - #FF6200EE - #FF3700B3 - #FF03DAC5 - #FF018786 - #FF000000 - #FFFFFFFF - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index c493969..6f4c641 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -8,7 +8,6 @@ Название Стоимость Ингредиенты - Изменить кофе Профиль Логин @@ -19,17 +18,4 @@ Новый пароль Подтверждение пароля - Имя - Фамилия - Группа - Телефон - e-mail - Список студентов - Профиль студента - О нас - -

Это текст о нас!

\n\n -

Здесь могла быть Ваша реклама!

\n\n -

Наш сайт ulstu.ru

-
\ No newline at end of file diff --git a/backend/build.gradle b/backend/build.gradle index f86170e..0c07ab8 100644 --- a/backend/build.gradle +++ b/backend/build.gradle @@ -6,7 +6,6 @@ plugins { group = 'com.kalyshev' version = '0.0.1-SNAPSHOT' -sourceCompatibility = '17' repositories { mavenCentral() @@ -28,3 +27,5 @@ dependencies { tasks.named('test') { useJUnitPlatform() } + +java.targetCompatibility = JavaVersion.VERSION_17 \ No newline at end of file diff --git a/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeController.java b/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeController.java index ee62444..2de860b 100644 --- a/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeController.java +++ b/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeController.java @@ -2,7 +2,6 @@ package com.kalyshev.yan.coffee.controller; import com.kalyshev.yan.WebConfiguration; import com.kalyshev.yan.coffee.service.CoffeeService; -import com.kalyshev.yan.user.model.User; import jakarta.validation.Valid; import org.springframework.web.bind.annotation.*; diff --git a/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeDto.java b/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeDto.java index d43b824..06a6df5 100644 --- a/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeDto.java +++ b/backend/src/main/java/com/kalyshev/yan/coffee/controller/CoffeeDto.java @@ -1,8 +1,6 @@ package com.kalyshev.yan.coffee.controller; import com.kalyshev.yan.coffee.model.Coffee; -import lombok.Getter; -import lombok.Setter; public class CoffeeDto { private Long id; diff --git a/backend/src/main/java/com/kalyshev/yan/coffee/model/Coffee.java b/backend/src/main/java/com/kalyshev/yan/coffee/model/Coffee.java index be7b99e..83bedc7 100644 --- a/backend/src/main/java/com/kalyshev/yan/coffee/model/Coffee.java +++ b/backend/src/main/java/com/kalyshev/yan/coffee/model/Coffee.java @@ -4,8 +4,6 @@ import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; import jakarta.persistence.Table; -import lombok.Getter; -import lombok.Setter; import java.util.Objects; diff --git a/backend/src/main/java/com/kalyshev/yan/coffee/service/CoffeeService.java b/backend/src/main/java/com/kalyshev/yan/coffee/service/CoffeeService.java index 4b82906..66077ae 100644 --- a/backend/src/main/java/com/kalyshev/yan/coffee/service/CoffeeService.java +++ b/backend/src/main/java/com/kalyshev/yan/coffee/service/CoffeeService.java @@ -3,7 +3,6 @@ package com.kalyshev.yan.coffee.service; import com.kalyshev.yan.coffee.controller.CoffeeDto; import com.kalyshev.yan.coffee.model.Coffee; import com.kalyshev.yan.coffee.repository.CoffeeRepository; -import com.kalyshev.yan.user.model.User; import com.kalyshev.yan.user.repository.UserNotFoundException; import com.kalyshev.yan.util.validation.ValidatorUtil; import org.springframework.data.domain.Page; diff --git a/backend/src/main/java/com/kalyshev/yan/user/controller/UserDto.java b/backend/src/main/java/com/kalyshev/yan/user/controller/UserDto.java index 5bf7833..08233f8 100644 --- a/backend/src/main/java/com/kalyshev/yan/user/controller/UserDto.java +++ b/backend/src/main/java/com/kalyshev/yan/user/controller/UserDto.java @@ -1,8 +1,6 @@ package com.kalyshev.yan.user.controller; import com.kalyshev.yan.user.model.User; -import lombok.Getter; -import lombok.Setter; public class UserDto { private Long id; diff --git a/backend/src/main/java/com/kalyshev/yan/user/model/User.java b/backend/src/main/java/com/kalyshev/yan/user/model/User.java index 068177b..f6dc7b3 100644 --- a/backend/src/main/java/com/kalyshev/yan/user/model/User.java +++ b/backend/src/main/java/com/kalyshev/yan/user/model/User.java @@ -4,8 +4,6 @@ import jakarta.persistence.Entity; import jakarta.persistence.GeneratedValue; import jakarta.persistence.Id; import jakarta.persistence.Table; -import lombok.Getter; -import lombok.Setter; import java.util.Objects; diff --git a/backend/src/main/java/com/kalyshev/yan/user/service/UserService.java b/backend/src/main/java/com/kalyshev/yan/user/service/UserService.java index c25a613..077676f 100644 --- a/backend/src/main/java/com/kalyshev/yan/user/service/UserService.java +++ b/backend/src/main/java/com/kalyshev/yan/user/service/UserService.java @@ -53,8 +53,7 @@ public class UserService { } @Transactional(readOnly = true) public Optional tryLogin(String login, String password) { - final Optional user = userRepository.tryLogin(login, password); - return user; + return userRepository.tryLogin(login, password); } @Transactional(readOnly = true) public List findAllUsers(int pageNo, int pageSize, String sortBy, String sortDir) { @@ -69,11 +68,9 @@ public class UserService { // get content for page object List listOfUsers = users.getContent(); - List content = listOfUsers.stream() + return listOfUsers.stream() .map(UserDto::new) .toList(); - - return content; } @Transactional public User updateUser(Long id, String login, String fio, String phone, String password, String role) { diff --git a/backend/src/test/java/com/kalyshev/yan/JpaCabinetTests.java b/backend/src/test/java/com/kalyshev/yan/JpaCabinetTests.java deleted file mode 100644 index b889fdc..0000000 --- a/backend/src/test/java/com/kalyshev/yan/JpaCabinetTests.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.kalyshev.yan; - -import com.kalyshev.yan.cabinet.model.Cabinet; -import com.kalyshev.yan.cabinet.repository.CabinetNotFoundException; -import com.kalyshev.yan.cabinet.service.CabinetService; -import com.kalyshev.yan.computer.service.ComputerService; -import com.kalyshev.yan.monitor.service.MonitorService; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; - -import java.util.List; - -@SpringBootTest -public class JpaCabinetTests { - private static final Logger log = LoggerFactory.getLogger(JpaCabinetTests.class); - @Autowired - private ComputerService computerService; - @Autowired - private MonitorService monitorService; - @Autowired - private CabinetService cabinetService; - - @Test - void testCabinetCreate() { - cabinetService.deleteAllCabinets(); - final Cabinet cabinet = cabinetService.addCabinet("18"); - log.info(cabinet.toString()); - Assertions.assertNotNull(cabinet.getId()); - } - @Test - void testCabinetRead() { - cabinetService.deleteAllCabinets(); - final Cabinet cabinet = cabinetService.addCabinet("18"); - log.info(cabinet.toString()); - final Cabinet findCabinet = cabinetService.findCabinet(cabinet.getId()); - log.info(findCabinet.toString()); - Assertions.assertEquals(cabinet, findCabinet); - } - @Test - void testCabinetReadNotFound() { - cabinetService.deleteAllCabinets(); - Assertions.assertThrows(CabinetNotFoundException.class, () -> cabinetService.findCabinet(-1L)); - } - @Test - void testCabinetReadAll() { - cabinetService.deleteAllCabinets(); - cabinetService.addCabinet("18"); - cabinetService.addCabinet("19"); - final List cabinets = cabinetService.findAllCabinets(); - log.info(cabinets.toString()); - Assertions.assertEquals(cabinets.size(), 2); - } - @Test - void testComputerReadAllEmpty() { - cabinetService.deleteAllCabinets(); - final List cabinets = cabinetService.findAllCabinets(); - log.info(cabinets.toString()); - Assertions.assertEquals(cabinets.size(), 0); - } -} diff --git a/backend/src/test/java/com/kalyshev/yan/JpaComputerCabinetTests.java b/backend/src/test/java/com/kalyshev/yan/JpaComputerCabinetTests.java deleted file mode 100644 index 8c05d06..0000000 --- a/backend/src/test/java/com/kalyshev/yan/JpaComputerCabinetTests.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.kalyshev.yan; - -import com.kalyshev.yan.cabinet.model.Cabinet; -import com.kalyshev.yan.cabinet.service.CabinetService; -import com.kalyshev.yan.computer.model.Computer; -import com.kalyshev.yan.computer.service.ComputerService; -import com.kalyshev.yan.monitor.model.Monitor; -import com.kalyshev.yan.monitor.service.MonitorService; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; - -@SpringBootTest -public class JpaComputerCabinetTests { - private static final Logger log = LoggerFactory.getLogger(JpaCabinetTests.class); - @Autowired - private ComputerService computerService; - @Autowired - private MonitorService monitorService; - @Autowired - private CabinetService cabinetService; - - @Test - void testCabinetAddOneToMany() { - cabinetService.deleteAllCabinets(); - computerService.deleteAllComputers(); - computerService.deleteAllMonitorsWithRelations(); - final Cabinet cabinet = cabinetService.addCabinet("18"); - final Monitor monitor = monitorService.addMonitor("Asus"); - final Computer computer = computerService.addComputer("PC", "78457h", monitor.getId()); - cabinet.addComputer(computer); - log.info(cabinet.toString()); - log.info(computer.toString()); - Assertions.assertEquals(cabinet.getComputers().get(0).getSerialNum(), computer.getSerialNum()); - } - - @Test - void testCabinetDeleteOneToMany() { - cabinetService.deleteAllCabinets(); - computerService.deleteAllComputers(); - computerService.deleteAllMonitorsWithRelations(); - final Cabinet cabinet = cabinetService.addCabinet("18"); - final Monitor monitor = monitorService.addMonitor("Asus"); - final Computer computer = computerService.addComputer("PC", "78457h", monitor.getId()); - cabinet.addComputer(computer); - log.info(cabinet.toString()); - log.info(computer.toString()); - Assertions.assertEquals(cabinet.getComputers().get(0).getSerialNum(), computer.getSerialNum()); - cabinet.removeComputer(computer); - Assertions.assertEquals(cabinet.getComputers().size(), 0); - } - - @Test - void testComputerAddManyToMany() { - cabinetService.deleteAllCabinets(); - computerService.deleteAllComputers(); - computerService.deleteAllMonitorsWithRelations(); - final Cabinet cabinet = cabinetService.addCabinet("18"); - final Monitor monitor = monitorService.addMonitor("Asus"); - final Computer computer = computerService.addComputer("PC", "78457h", monitor.getId()); - computer.setCabinet(cabinet); - log.info(cabinet.toString()); - log.info(computer.toString()); - Assertions.assertEquals(computer.getCabinet().getNumber(), cabinet.getNumber()); - } - - @Test - void testComputerDeleteManyToMany() { - cabinetService.deleteAllCabinets(); - computerService.deleteAllComputers(); - computerService.deleteAllMonitorsWithRelations(); - final Cabinet cabinet = cabinetService.addCabinet("18"); - final Monitor monitor = monitorService.addMonitor("Asus"); - final Computer computer = computerService.addComputer("PC", "78457h", monitor.getId()); - computer.setCabinet(cabinet); - log.info(cabinet.toString()); - log.info(computer.toString()); - Assertions.assertEquals(computer.getCabinet().getNumber(), cabinet.getNumber()); - computer.setCabinet(null); - Assertions.assertNull(computer.getCabinet()); - } -} diff --git a/backend/src/test/java/com/kalyshev/yan/JpaComputerTests.java b/backend/src/test/java/com/kalyshev/yan/JpaComputerTests.java deleted file mode 100644 index 007d090..0000000 --- a/backend/src/test/java/com/kalyshev/yan/JpaComputerTests.java +++ /dev/null @@ -1,89 +0,0 @@ -package com.kalyshev.yan; - -import com.kalyshev.yan.cabinet.model.Cabinet; -import com.kalyshev.yan.cabinet.service.CabinetService; -import com.kalyshev.yan.computer.model.Computer; -import com.kalyshev.yan.computer.repository.ComputerNotFoundException; -import com.kalyshev.yan.computer.service.ComputerService; -import com.kalyshev.yan.monitor.model.Monitor; -import com.kalyshev.yan.monitor.service.MonitorService; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; - -import java.util.List; - -@SpringBootTest -public class JpaComputerTests { - private static final Logger log = LoggerFactory.getLogger(JpaComputerTests.class); - @Autowired - private ComputerService computerService; - @Autowired - private MonitorService monitorService; - @Autowired - private CabinetService cabinetService; - - @Test - void testComputerPartialCreate() { - computerService.deleteAllComputers(); - final Monitor monitor = monitorService.addMonitor("Asus"); - final Computer computer = computerService.addComputer("Computer", "w7894572", monitor.getId()); - log.info(computer.toString()); - Assertions.assertNotNull(computer.getId()); - Assertions.assertNull(computer.getCabinet()); - } - @Test - void testComputerFullCreate() { - computerService.deleteAllComputers(); - final Monitor monitor = monitorService.addMonitor("Asus"); - final Cabinet cabinet = cabinetService.addCabinet("18a"); - final Computer computer = computerService.addComputer("Computer", "w7894572", monitor.getId()); - computer.setCabinet(cabinet); - log.info(computer.toString()); - Assertions.assertNotNull(computer.getId()); - Assertions.assertEquals(cabinet, computer.getCabinet()); - } - @Test - void testComputerDelete() { - computerService.deleteAllComputers(); - final Monitor monitor = monitorService.addMonitor("Asus"); - final Computer computer = computerService.addComputer("Computer", "w7894572", null); - log.info(computer.toString()); - computerService.deleteComputer(computer.getId()); - Assertions.assertThrows(ComputerNotFoundException.class, () -> computerService.findComputer(computer.getId())); - } - @Test - void testComputerRead() { - computerService.deleteAllComputers(); - final Computer computer = computerService.addComputer("Computer", "w7894572", null); - log.info(computer.toString()); - final Computer findComputer = computerService.findComputer(computer.getId()); - log.info(findComputer.toString()); - Assertions.assertEquals(computer, findComputer); - } - @Test - void testComputerReadNotFound() { - computerService.deleteAllComputers(); - Assertions.assertThrows(ComputerNotFoundException.class, () -> computerService.findComputer(-1L)); - } - @Test - void testComputerReadAll() { - computerService.deleteAllComputers(); - final Monitor monitor = monitorService.addMonitor("Asus"); - computerService.addComputer("Computer", "w7894572", null); - computerService.addComputer("Another comp", "3453s", null); - final List computers = computerService.findAllComputers(); - log.info(computers.toString()); - Assertions.assertEquals(computers.size(), 2); - } - @Test - void testComputerReadAllEmpty() { - computerService.deleteAllComputers(); - final List computers = computerService.findAllComputers(); - log.info(computers.toString()); - Assertions.assertEquals(computers.size(), 0); - } -} diff --git a/backend/src/test/java/com/kalyshev/yan/JpaMonitorTests.java b/backend/src/test/java/com/kalyshev/yan/JpaMonitorTests.java deleted file mode 100644 index 03dc8a5..0000000 --- a/backend/src/test/java/com/kalyshev/yan/JpaMonitorTests.java +++ /dev/null @@ -1,78 +0,0 @@ -package com.kalyshev.yan; - -import com.kalyshev.yan.computer.model.Computer; -import com.kalyshev.yan.computer.service.ComputerService; -import com.kalyshev.yan.monitor.model.Monitor; -import com.kalyshev.yan.monitor.repository.MonitorNotFoundException; -import com.kalyshev.yan.monitor.service.MonitorService; -import org.junit.jupiter.api.Assertions; -import org.junit.jupiter.api.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; - -import java.util.List; -@SpringBootTest -public class JpaMonitorTests { - private static final Logger log = LoggerFactory.getLogger(JpaMonitorTests.class); - @Autowired - private MonitorService monitorService; - @Autowired - private ComputerService computerService; - @Test - void testMonitorCreate() { - computerService.deleteAllMonitorsWithRelations(); - final Monitor monitor = monitorService.addMonitor("Asus"); - log.info(monitor.toString()); - Assertions.assertNotNull(monitor.getId()); - } - @Test - void testMonitorRead() { - computerService.deleteAllMonitorsWithRelations(); - final Monitor monitor = monitorService.addMonitor("Asus"); - log.info(monitor.toString()); - final Monitor findMonitor = monitorService.findMonitor(monitor.getId()); - log.info(findMonitor.toString()); - Assertions.assertEquals(monitor, findMonitor); - } - @Test - void testMonitorDelete() { - computerService.deleteAllMonitorsWithRelations(); - final Monitor monitor = monitorService.addMonitor("Asus"); - log.info(monitor.toString()); - computerService.deleteMonitorWithRelation(monitor.getId()); - Assertions.assertThrows(MonitorNotFoundException.class, () -> monitorService.findMonitor(monitor.getId())); - } - @Test - void testMonitorReadNotFound() { - computerService.deleteAllMonitorsWithRelations(); - Assertions.assertThrows(MonitorNotFoundException.class, () -> monitorService.findMonitor(-1L)); - } - @Test - void testMonitorReadAll() { - computerService.deleteAllMonitorsWithRelations(); - monitorService.addMonitor("Asus"); - monitorService.addMonitor("HP"); - final List monitors = monitorService.findAllMonitors(); - log.info(monitors.toString()); - Assertions.assertEquals(monitors.size(), 2); - } - @Test - void testMonitorReadAllEmpty() { - computerService.deleteAllMonitorsWithRelations(); - final List monitors = monitorService.findAllMonitors(); - log.info(monitors.toString()); - Assertions.assertEquals(monitors.size(), 0); - } - @Test - void testMonitorGetComputer() { - computerService.deleteAllMonitorsWithRelations(); - computerService.deleteAllComputers(); - Monitor monitor = monitorService.addMonitor("Asus"); - Computer computer = computerService.addComputer("Model", "6sfv4", monitor.getId()); - log.info(computer.toString()); - Computer fetchedComputer = computerService.findComputerByMonitor(monitor); - Assertions.assertEquals(computer, fetchedComputer); - } -}