add logic for registration

This commit is contained in:
KP9lKk 2025-01-23 11:39:06 +03:00
parent 3ffa81cb9b
commit 561a30edc0
3 changed files with 29 additions and 1 deletions

View File

@ -9,5 +9,6 @@ fun main() {
val userRepository = UserRepositoryImpl()
val userUseCase = UserUseCaseImpl(userRepository)
val userUI = UserUI(userUseCase)
userUI.registration()
userUI.authorize()
}

View File

@ -28,7 +28,8 @@ class UserUseCaseImpl(private val userRepository: UserRepository): UserUseCase {
require(isUnique){
"Такая почта уже существует"
}
userRepository.addUser()
val newUser = userRepository.addUser(registrationRequest)
return UserDtoToUserResponse(newUser)
}

View File

@ -2,6 +2,7 @@ package org.example.ui
import org.example.domain.UserUseCase
import org.example.domain.request.AuthorizeRequest
import org.example.domain.request.RegistrationRequest
import org.example.domain.response.UserResponse
class UserUI(private val userUseCase: UserUseCase) {
@ -23,6 +24,31 @@ class UserUI(private val userUseCase: UserUseCase) {
println(userResponseToString(user))
}
fun registration(){
println("Введите имя")
val firstName = readlnOrNull()
checkNotNull(firstName){
"Имя не должно отсутствовать"
}
println("Введите почту")
val email = readlnOrNull()
checkNotNull(email){
"Почта не должна отсутствовать"
}
println("Введите пароль")
val password = readlnOrNull()
checkNotNull(password){
"Пароль не должен отсутствовать"
}
val registrationRequest = RegistrationRequest(
email = email,
firstName = firstName,
password = password
)
val newUser = userUseCase.registration(registrationRequest)
userResponseToString(newUser)
}
private fun userResponseToString(userResponse: UserResponse): String{
val printOutput = StringBuilder()
printOutput.append("Ваша почта ${userResponse.email}")