prepare fastapi root layout for server deployment
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
from fastapi import APIRouter, Depends
|
||||
from sqlalchemy.orm import Session
|
||||
|
||||
from app.core.config import settings
|
||||
from app.core.response import ApiResponse, ok
|
||||
from app.core.user_context import UserContext, get_user_context
|
||||
from app.db.session import get_db
|
||||
from app.schemas.agent import AgentHelloResponse, AgentHelloUser
|
||||
from app.services.audit_service import AuditService
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@router.get("/agent/hello", response_model=ApiResponse[AgentHelloResponse])
|
||||
def hello(ctx: UserContext = Depends(get_user_context), db: Session = Depends(get_db)):
|
||||
"""Agent Hello:读取宿主用户上下文并返回 Demo 功能配置。"""
|
||||
AuditService(db).log(ctx, "agent.hello", "agent")
|
||||
db.commit()
|
||||
return ok(
|
||||
AgentHelloResponse(
|
||||
user=AgentHelloUser(
|
||||
user_id=ctx.user_id,
|
||||
tenant_id=ctx.tenant_id,
|
||||
role=ctx.role,
|
||||
source=ctx.auth_source,
|
||||
username=ctx.username,
|
||||
display_name=ctx.display_name,
|
||||
),
|
||||
features=settings.as_public_dict(),
|
||||
)
|
||||
)
|
||||
Reference in New Issue
Block a user