Add DB version with alimbic and add log system
This commit is contained in:
@ -1,5 +1,5 @@
|
||||
from fuware.core.security.hasher import get_hasher
|
||||
from fuware.db.models.users.users import User
|
||||
from fuware.db.models import SessionLogin, User
|
||||
from fuware.schemas import UserCreate
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
@ -7,6 +7,7 @@ from sqlalchemy.orm import Session
|
||||
class RepositoryUsers:
|
||||
def __init__(self):
|
||||
self.user = User()
|
||||
self.sessionLogin = SessionLogin()
|
||||
|
||||
def get_all(self, skip: int = 0, limit: int = 100):
|
||||
return self.user.query.offset(skip).limit(limit).all()
|
||||
@ -26,3 +27,34 @@ class RepositoryUsers:
|
||||
|
||||
db.refresh(db_user)
|
||||
return db_user
|
||||
|
||||
def get_session_by_user_id(self, user_id: str):
|
||||
return self.sessionLogin.query.filter_by(user_id=user_id).first()
|
||||
|
||||
def create_session(self, db: Session, user_id: str):
|
||||
try:
|
||||
db_ss = SessionLogin(user_id=user_id)
|
||||
db.add(db_ss)
|
||||
db.commit()
|
||||
except Exception:
|
||||
db.rollback()
|
||||
raise
|
||||
|
||||
db.refresh(db_ss)
|
||||
return db_ss
|
||||
|
||||
def login(self, db: Session, user_id: str):
|
||||
db_ss = self.get_session_by_user_id(user_id)
|
||||
if not db_ss:
|
||||
db_ss = self.create_session(db=db, user_id=user_id)
|
||||
return db_ss
|
||||
|
||||
def logout(self, db: Session, user_ss: str):
|
||||
db_ss = self.sessionLogin.query.filter_by(session=user_ss).first()
|
||||
try:
|
||||
db.delete(db_ss)
|
||||
db.commit()
|
||||
except Exception as e:
|
||||
db.rollback()
|
||||
raise e
|
||||
pass
|
||||
|
Reference in New Issue
Block a user