Add DB version with alimbic and add log system

This commit is contained in:
2024-05-11 15:16:16 +00:00
parent 392dee8640
commit a7e31b8ca9
24 changed files with 1131 additions and 137 deletions

View File

@ -1,9 +1,12 @@
from fastapi import HTTPException
from sqlalchemy.orm import Session
from fuware.core.security.hasher import get_hasher
from fuware.repos import RepositoryUsers
from fuware.schemas import UserRequest, UserCreate
from fuware.services._base_service import BaseService
from fuware.schemas import UserCreate
hasher = get_hasher()
class UserService(BaseService):
def __init__(self):
@ -17,3 +20,17 @@ class UserService(BaseService):
def create(self, db: Session, user: UserCreate):
return self.repos.create(db=db, user=user)
def check_exist(self, db: Session, user: UserRequest):
db_user = self.get_by_username(username=user.username)
if not db_user:
raise HTTPException(status_code=401, detail="Your username or password input is wrong!")
if not hasher.verify(password=user.password, hashed=db_user.password):
raise HTTPException(status_code=401, detail="Your username or password input is wrong!")
if db_user.is_lock is True:
raise HTTPException(status_code=401, detail="Your Account is banned")
return db_user
def check_login(self, db: Session, user_id: str):
db_session = self.repos.login(db=db, user_id=user_id)
return db_session