TIF_E41211115_Genso_quiz_ba.../app/services/user_service.py

26 lines
902 B
Python

from flask import current_app
from repositories import UserRepository
from schemas import RegisterSchema
from mapper import UserMapper
from exception import AlreadyExistException
from werkzeug.security import generate_password_hash
class UserService:
def __init__(self, user_repository: UserRepository):
self.user_repository = user_repository
def get_all_users(self):
return self.user_repository.get_all_users()
def register_user(self, user_data: RegisterSchema):
existData = self.user_repository.get_user_by_email(user_data.email)
if existData:
raise AlreadyExistException(entity="Email")
encrypted_password = generate_password_hash(user_data.password)
user_data.password = encrypted_password
data = UserMapper.from_register(user_data)
return self.user_repository.insert_user(data)