feat:新增投顾工作台相关接口

This commit is contained in:
2026-09-12 20:42:33 +08:00
parent b95fb5d4f7
commit 639a10e10a
50 changed files with 3434 additions and 14 deletions
+56
View File
@@ -0,0 +1,56 @@
"""投后服务路由(回访/话术库/触达日志,业务在 service/advisor/visits.py)。"""
from fastapi import APIRouter, Depends, Query
from sqlalchemy.ext.asyncio import AsyncSession
from api.deps import require_advisor
from config.deps import get_db
from model.sys_user import SysUser
from schemas.advisor import VisitCreateReq
from service.advisor import visits as visits_service
from utils.response import success
router = APIRouter()
@router.get("/visits", summary="回访记录列表")
async def list_visits(
customer_id: int | None = Query(None),
page: int = Query(1, ge=1),
page_size: int = Query(20, ge=1, le=100),
user: SysUser = Depends(require_advisor),
db: AsyncSession = Depends(get_db),
):
return success(
await visits_service.list_visits(
db, user, customer_id=customer_id, page=page, page_size=page_size
)
)
@router.post("/visits", summary="新增回访留痕(不触发 Agent 记忆抽取)")
async def create_visit(
req: VisitCreateReq,
user: SysUser = Depends(require_advisor),
db: AsyncSession = Depends(get_db),
):
return success(await visits_service.create_visit(db, user, req))
@router.get("/talk-templates", summary="合规话术库(内置,投顾参考)")
async def talk_templates(user: SysUser = Depends(require_advisor)):
return success(visits_service.list_talk_templates())
@router.get("/touch-logs", summary="触达留痕(站内信 + 回访)")
async def touch_logs(
customer_id: int = Query(...),
page: int = Query(1, ge=1),
page_size: int = Query(20, ge=1, le=100),
user: SysUser = Depends(require_advisor),
db: AsyncSession = Depends(get_db),
):
return success(
await visits_service.list_touch_logs(
db, user, customer_id, page=page, page_size=page_size
)
)