Files
Mutual_Fund/repositories/sys_user.py
T

25 lines
948 B
Python
Raw Normal View History

2026-09-12 20:59:10 +08:00
"""sys_user 仓储:认证用按用户名/主键取用户 + 账号状态更新。"""
2026-09-08 19:17:35 +08:00
from __future__ import annotations
2026-09-12 20:59:10 +08:00
from sqlalchemy import select, update
2026-09-08 19:17:35 +08:00
from model.sys_user import SysUser
from repositories.base import BaseRepository
class SysUserRepo(BaseRepository):
model = SysUser
async def get_by_username(self, username: str) -> SysUser | None:
return await self.db.scalar(select(SysUser).where(SysUser.username == username))
async def get_by_phone(self, phone: str) -> SysUser | None:
2026-09-12 20:59:10 +08:00
return await self.db.scalar(select(SysUser).where(SysUser.phone == phone))
async def update_status(self, user_id: int, status: str) -> int:
"""更新账号状态(如风控冻结客户)。不 commit,由 service 层事务统一提交。"""
result = await self.db.execute(
update(SysUser).where(SysUser.id == user_id).values(status=status)
)
return result.rowcount