Files
SQLBot/backend/apps/system/crud/user.py
T
2025-06-10 16:19:52 +08:00

25 lines
1004 B
Python

from sqlmodel import Session, select
from ..models.user import sys_user, user_grid
from common.core.security import verify_md5pwd
def get_user_by_account(*, session: Session, account: str) -> sys_user | None:
#statement = select(sys_user).where(sys_user.account == account)
statement = select(user_grid.id, user_grid.account, user_grid.oid, user_grid.password).where(user_grid.account == account)
session_user = session.exec(statement).first()
result_user = sys_user.model_validate(session_user)
return result_user
def get_user_info(*, session: Session, user_id: int) -> sys_user | None:
db_user = session.get(user_grid, user_id)
if not db_user:
return None
return db_user
def authenticate(*, session: Session, account: str, password: str) -> sys_user | None:
db_user = get_user_by_account(session=session, account=account)
if not db_user:
return None
if not verify_md5pwd(password, db_user.password):
return None
return db_user