31 lines
1.0 KiB
Python
31 lines
1.0 KiB
Python
from repositories import UserRepository
|
|
from models import ApiResponse
|
|
|
|
|
|
class AuthService:
|
|
def __init__(self, userRepository: UserRepository):
|
|
self.user_repository = userRepository
|
|
|
|
def login(self, data):
|
|
try:
|
|
email = data.get("email")
|
|
password = data.get("password")
|
|
|
|
user_data = self.user_repository.get_user_by_email(email)
|
|
|
|
if user_data == None:
|
|
return ApiResponse(success=False, message="User not found", data=None)
|
|
|
|
if user_data["password"] == password:
|
|
del user_data["password"]
|
|
return ApiResponse(
|
|
success=True, message="Login success", data=user_data
|
|
)
|
|
|
|
return ApiResponse(success=False, message="Invalid password", data=None)
|
|
except Exception as e:
|
|
print(f"the issue is {e}")
|
|
return ApiResponse(
|
|
success=False, message="Internal server error", data=None
|
|
)
|