add logic for changepassword
This commit is contained in:
parent
561a30edc0
commit
628fb039d6
@ -1,5 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
|
<component name="GradleMigrationSettings" migrationVersion="1" />
|
||||||
<component name="GradleSettings">
|
<component name="GradleSettings">
|
||||||
<option name="linkedExternalProjectsSettings">
|
<option name="linkedExternalProjectsSettings">
|
||||||
<GradleProjectSettings>
|
<GradleProjectSettings>
|
||||||
|
@ -9,6 +9,7 @@ fun main() {
|
|||||||
val userRepository = UserRepositoryImpl()
|
val userRepository = UserRepositoryImpl()
|
||||||
val userUseCase = UserUseCaseImpl(userRepository)
|
val userUseCase = UserUseCaseImpl(userRepository)
|
||||||
val userUI = UserUI(userUseCase)
|
val userUI = UserUI(userUseCase)
|
||||||
userUI.registration()
|
userUI.authorize()
|
||||||
|
userUI.changePassword()
|
||||||
userUI.authorize()
|
userUI.authorize()
|
||||||
}
|
}
|
@ -23,7 +23,8 @@ class UserRepositoryImpl: UserRepository {
|
|||||||
}
|
}
|
||||||
|
|
||||||
override fun updateUserById(userId: Int, updatedUser: UserDTO): UserDTO {
|
override fun updateUserById(userId: Int, updatedUser: UserDTO): UserDTO {
|
||||||
val oldUser = userSource.first { it.userId == userId }
|
val oldUser = userSource.firstOrNull { it.userId == userId }
|
||||||
|
checkNotNull(oldUser)
|
||||||
oldUser.phone = updatedUser.phone
|
oldUser.phone = updatedUser.phone
|
||||||
oldUser.address = updatedUser.address
|
oldUser.address = updatedUser.address
|
||||||
oldUser.firstName = updatedUser.firstName
|
oldUser.firstName = updatedUser.firstName
|
||||||
@ -33,10 +34,10 @@ class UserRepositoryImpl: UserRepository {
|
|||||||
return oldUser
|
return oldUser
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun getAllUsers(): List<UserDTO> = userList
|
override fun getAllUsers(): List<UserDTO> = userSource
|
||||||
|
|
||||||
override fun findUserById(userId: Int): UserDTO {
|
override fun findUserById(userId: Int): UserDTO {
|
||||||
val findUser = userList.firstOrNull { it.userId == userId }
|
val findUser = userSource.firstOrNull { it.userId == userId }
|
||||||
checkNotNull(findUser)
|
checkNotNull(findUser)
|
||||||
return findUser
|
return findUser
|
||||||
}
|
}
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
package org.example.domain
|
package org.example.domain
|
||||||
|
|
||||||
import org.example.domain.request.AuthorizeRequest
|
import org.example.domain.request.AuthorizeRequest
|
||||||
|
import org.example.domain.request.ChangePasswordRequest
|
||||||
import org.example.domain.request.RegistrationRequest
|
import org.example.domain.request.RegistrationRequest
|
||||||
import org.example.domain.response.UserResponse
|
import org.example.domain.response.UserResponse
|
||||||
|
|
||||||
interface UserUseCase {
|
interface UserUseCase {
|
||||||
fun authorize(authorizeRequest: AuthorizeRequest): UserResponse
|
fun authorize(authorizeRequest: AuthorizeRequest): UserResponse
|
||||||
fun registration(registrationRequest: RegistrationRequest): UserResponse
|
fun registration(registrationRequest: RegistrationRequest): UserResponse
|
||||||
fun changePassword()
|
fun changePassword(changePasswordRequest: ChangePasswordRequest)
|
||||||
fun changeProfile()
|
fun changeProfile()
|
||||||
}
|
}
|
@ -2,6 +2,7 @@ package org.example.domain
|
|||||||
|
|
||||||
import org.example.data.UserRepository
|
import org.example.data.UserRepository
|
||||||
import org.example.domain.request.AuthorizeRequest
|
import org.example.domain.request.AuthorizeRequest
|
||||||
|
import org.example.domain.request.ChangePasswordRequest
|
||||||
import org.example.domain.request.RegistrationRequest
|
import org.example.domain.request.RegistrationRequest
|
||||||
import org.example.domain.response.UserResponse
|
import org.example.domain.response.UserResponse
|
||||||
|
|
||||||
@ -32,12 +33,15 @@ class UserUseCaseImpl(private val userRepository: UserRepository): UserUseCase {
|
|||||||
return UserDtoToUserResponse(newUser)
|
return UserDtoToUserResponse(newUser)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun changePassword(changePasswordRequest: ChangePasswordRequest) {
|
||||||
|
val updatedUser = userRepository.findUserById(changePasswordRequest.userId)
|
||||||
override fun changePassword() {
|
updatedUser.password = changePasswordRequest.newPassword
|
||||||
TODO("Not yet implemented")
|
userRepository.updateUserById(changePasswordRequest.userId, updatedUser)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
override fun changeProfile() {
|
override fun changeProfile() {
|
||||||
TODO("Not yet implemented")
|
TODO("Not yet implemented")
|
||||||
}
|
}
|
||||||
|
6
src/main/kotlin/domain/request/ChangePasswordRequest.kt
Normal file
6
src/main/kotlin/domain/request/ChangePasswordRequest.kt
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
package org.example.domain.request
|
||||||
|
|
||||||
|
data class ChangePasswordRequest(
|
||||||
|
val userId: Int,
|
||||||
|
val newPassword: String
|
||||||
|
)
|
@ -2,10 +2,12 @@ package org.example.ui
|
|||||||
|
|
||||||
import org.example.domain.UserUseCase
|
import org.example.domain.UserUseCase
|
||||||
import org.example.domain.request.AuthorizeRequest
|
import org.example.domain.request.AuthorizeRequest
|
||||||
|
import org.example.domain.request.ChangePasswordRequest
|
||||||
import org.example.domain.request.RegistrationRequest
|
import org.example.domain.request.RegistrationRequest
|
||||||
import org.example.domain.response.UserResponse
|
import org.example.domain.response.UserResponse
|
||||||
|
|
||||||
class UserUI(private val userUseCase: UserUseCase) {
|
class UserUI(private val userUseCase: UserUseCase) {
|
||||||
|
var userAuthorized: UserResponse? = null
|
||||||
fun authorize(){
|
fun authorize(){
|
||||||
println("Введите почту")
|
println("Введите почту")
|
||||||
val email = readlnOrNull()
|
val email = readlnOrNull()
|
||||||
@ -21,9 +23,25 @@ class UserUI(private val userUseCase: UserUseCase) {
|
|||||||
email = email,
|
email = email,
|
||||||
password = password,)
|
password = password,)
|
||||||
val user = userUseCase.authorize(authorizeRequest)
|
val user = userUseCase.authorize(authorizeRequest)
|
||||||
|
userAuthorized = user
|
||||||
println(userResponseToString(user))
|
println(userResponseToString(user))
|
||||||
}
|
}
|
||||||
|
fun changePassword(){
|
||||||
|
checkNotNull(userAuthorized){
|
||||||
|
"Вы не авторизованы"
|
||||||
|
}
|
||||||
|
println("Введите пароль")
|
||||||
|
val password = readlnOrNull()
|
||||||
|
checkNotNull(password){
|
||||||
|
"Пароль не должен отсутствовать"
|
||||||
|
}
|
||||||
|
val changePasswordRequest = ChangePasswordRequest(
|
||||||
|
userId = userAuthorized!!.userId,
|
||||||
|
newPassword = password
|
||||||
|
)
|
||||||
|
userUseCase.changePassword(changePasswordRequest)
|
||||||
|
|
||||||
|
}
|
||||||
fun registration(){
|
fun registration(){
|
||||||
println("Введите имя")
|
println("Введите имя")
|
||||||
val firstName = readlnOrNull()
|
val firstName = readlnOrNull()
|
||||||
|
Loading…
Reference in New Issue
Block a user