feat: 实现密码重置功能与用户搜索API,优化注册登录流程
- 新增忘记密码页面与重置密码确认流程(前端+后端) - 修复注册验证码页登录跳转路由 - 新增用户搜索API(按邮箱查询) - 简化infra脚本,统一为app.sh - 补充密码重置与用户API测试覆盖 - 更新runtime文档与AGENTS配置
This commit is contained in:
@@ -11,11 +11,21 @@ from core.auth.models import CurrentUser
|
||||
from core.config.settings import config
|
||||
from core.db import get_db
|
||||
from core.logging import get_logger
|
||||
from v1.auth.gateway import SupabaseAuthGateway
|
||||
from v1.users.repository import SQLAlchemyUserRepository
|
||||
from v1.users.service import UserService
|
||||
from v1.users.service import AuthLookupAdapter, UserService
|
||||
|
||||
logger = get_logger("v1.users.dependencies")
|
||||
|
||||
_auth_gateway: SupabaseAuthGateway | None = None
|
||||
|
||||
|
||||
def get_auth_gateway() -> SupabaseAuthGateway:
|
||||
global _auth_gateway
|
||||
if _auth_gateway is None:
|
||||
_auth_gateway = SupabaseAuthGateway()
|
||||
return _auth_gateway
|
||||
|
||||
|
||||
def get_current_user(authorization: str | None = Header(default=None)) -> CurrentUser:
|
||||
if not authorization:
|
||||
@@ -98,4 +108,10 @@ def get_user_service(
|
||||
user: Annotated[CurrentUser, Depends(get_current_user)],
|
||||
) -> UserService:
|
||||
repository = SQLAlchemyUserRepository(session)
|
||||
return UserService(repository=repository, session=session, current_user=user)
|
||||
auth_gateway = AuthLookupAdapter(get_auth_gateway())
|
||||
return UserService(
|
||||
repository=repository,
|
||||
session=session,
|
||||
current_user=user,
|
||||
auth_gateway=auth_gateway,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user