32 lines
929 B
Python
32 lines
929 B
Python
"""投顾工作台客户数据查询代理路由。"""
|
||||
|
|
from fastapi import APIRouter, Depends, Request
|
|||
|
|
from sqlalchemy.ext.asyncio import AsyncSession
|
|||
|
|
|
|||
|
|
from api.advisor._auth import extract_auth
|
|||
|
|
from api.deps import require_advisor
|
|||
|
|
from config.deps import get_db
|
|||
|
|
from model.sys_user import SysUser
|
|||
|
|
from schemas.advisor import AdvisorDataQueryReq
|
|||
|
|
from service.advisor.data_query import query_customer_data
|
|||
|
|
from utils.response import success
|
|||
|
|
|
|||
|
|
router = APIRouter()
|
|||
|
|
|
|||
|
|
|
|||
|
|
@router.post("/data-query", summary="查询当前客户数据(代理投顾Agent NL2SQL)")
|
|||
|
|
async def data_query(
|
|||
|
|
req: AdvisorDataQueryReq,
|
|||
|
|
request: Request,
|
|||
|
|
user: SysUser = Depends(require_advisor),
|
|||
|
|
db: AsyncSession = Depends(get_db),
|
|||
|
|
):
|
|||
|
|
auth, trace_id = extract_auth(request)
|
|||
|
|
data = await query_customer_data(
|
|||
|
|
db,
|
|||
|
|
user,
|
|||
|
|
auth_header=auth,
|
|||
|
|
trace_id=trace_id,
|
|||
|
|
req=req,
|
|||
|
|
)
|
|||
|
|
return success(data)
|