keepme-backend / src /services /_user_service.py
ramanjitsingh1368's picture
refactor user model and schemas to consolidate name fields and remove signup schema
fcfe4b3
from typing import Dict
from src.models import User
from src.utils import BcryptUtil
from src.schemas import UserSignInSchema
from src.repositories import UserRepository
class UserService:
def __init__(self):
self.user_repository = UserRepository()
async def create_user(self, user: UserSignInSchema):
user = User(name=user.name, email=user.email)
return await self.user_repository.insert_one(user)
async def get_user(self, user_id):
return await self.user_repository.get_by_id(user_id)
async def delete_user(self, user_id):
return await self.user_repository.delete(user_id)
async def update_user(self, user_id, update_data):
return await self.user_repository.update(user_id, update_data)
async def list_users(
self,
page: int = 1,
page_size: int = None,
filter_by: Dict = None,
order_by: str = None,
):
return await self.user_repository.get_all(
page=page, page_size=page_size, filter_by=filter_by, order_by=order_by
)