Files
Mutual_Fund/api/advisor/todos.py
T

39 lines
1.2 KiB
Python
Raw Normal View History

2026-09-12 20:42:33 +08:00
"""投顾待办路由(业务在 service/advisor/todos.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 TodoHandleReq
from service.advisor import todos as todos_service
from utils.response import success
router = APIRouter()
@router.get("/todos", summary="本人待办列表")
async def list_todos(
status: str | None = Query(None, max_length=16),
todo_type: str | None = Query(None, max_length=32),
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 todos_service.list_todos(
db, user, status=status, todo_type=todo_type, page=page, page_size=page_size
)
)
@router.post("/todos/{todo_id}/handle", summary="处理待办(process/done)")
async def handle_todo(
todo_id: int,
req: TodoHandleReq,
user: SysUser = Depends(require_advisor),
db: AsyncSession = Depends(get_db),
):
return success(await todos_service.handle_todo(db, user, todo_id, req))