feat:新增投顾agent和nl2sqlagent

This commit is contained in:
2026-09-13 16:19:24 +08:00
parent c80c6acac0
commit 163192bf55
122 changed files with 7488 additions and 362 deletions
+4 -2
View File
@@ -17,6 +17,7 @@ router = APIRouter()
@router.get("/audit/ledger", summary="本人审计台账筛选")
async def ledger(
action: str | None = Query(None, max_length=64),
customer_id: int | None = Query(None, gt=0),
keyword: str | None = Query(None, max_length=128),
start: datetime | None = Query(None),
end: datetime | None = Query(None),
@@ -27,7 +28,7 @@ async def ledger(
):
return success(
await audit_service.list_ledger(
db, user, action=action, keyword=keyword, start=start, end=end,
db, user, action=action, customer_id=customer_id, keyword=keyword, start=start, end=end,
page=page, page_size=page_size,
)
)
@@ -36,6 +37,7 @@ async def ledger(
@router.get("/audit/export", summary="导出本人审计台账(CSV)")
async def export(
action: str | None = Query(None, max_length=64),
customer_id: int | None = Query(None, gt=0),
keyword: str | None = Query(None, max_length=128),
start: datetime | None = Query(None),
end: datetime | None = Query(None),
@@ -43,7 +45,7 @@ async def export(
db: AsyncSession = Depends(get_db),
):
csv_text = await audit_service.export_ledger(
db, user, action=action, keyword=keyword, start=start, end=end
db, user, action=action, customer_id=customer_id, keyword=keyword, start=start, end=end
)
return Response(
content=csv_text,
+20 -1
View File
@@ -5,7 +5,7 @@ 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 schemas.advisor import VisitCreateReq, VisitUpdateReq
from service.advisor import visits as visits_service
from utils.response import success
@@ -36,6 +36,25 @@ async def create_visit(
return success(await visits_service.create_visit(db, user, req))
@router.get("/visits/{visit_id}", summary="回访记录详情")
async def get_visit(
visit_id: int,
user: SysUser = Depends(require_advisor),
db: AsyncSession = Depends(get_db),
):
return success(await visits_service.get_visit(db, user, visit_id))
@router.put("/visits/{visit_id}", summary="编辑回访留痕")
async def update_visit(
visit_id: int,
req: VisitUpdateReq,
user: SysUser = Depends(require_advisor),
db: AsyncSession = Depends(get_db),
):
return success(await visits_service.update_visit(db, user, visit_id, req))
@router.get("/talk-templates", summary="合规话术库(内置,投顾参考)")
async def talk_templates(user: SysUser = Depends(require_advisor)):
return success(visits_service.list_talk_templates())