feat:增加分页功能
This commit is contained in:
@@ -18,6 +18,7 @@ from service.advisor_agent.compliance import ensure_safe_content
|
||||
from repositories.sensitive_word import SensitiveWordRepo
|
||||
from model.advisor_draft import AdvisorDraft
|
||||
from utils.exceptions import ApiError
|
||||
from utils.pagination import normalize_pagination, pagination_result
|
||||
|
||||
|
||||
def build_generated_content(content: str) -> str:
|
||||
@@ -133,18 +134,19 @@ async def list_drafts(
|
||||
customer_id: int | None = None,
|
||||
status: str | None = None,
|
||||
page: int = 1,
|
||||
page_size: int = 20,
|
||||
page_size: int = 10,
|
||||
) -> dict:
|
||||
page = max(1, page)
|
||||
page_size = min(100, max(1, page_size))
|
||||
page, page_size, offset = normalize_pagination(page, page_size)
|
||||
total, items = await repo.list_drafts(
|
||||
advisor_id=advisor_id,
|
||||
customer_id=customer_id,
|
||||
status=status,
|
||||
limit=page_size,
|
||||
offset=(page - 1) * page_size,
|
||||
offset=offset,
|
||||
)
|
||||
return pagination_result(
|
||||
[summarize_draft(item) for item in items], total, page=page, page_size=page_size
|
||||
)
|
||||
return {"total": total, "items": [summarize_draft(item) for item in items]}
|
||||
|
||||
|
||||
async def save_draft(
|
||||
|
||||
Reference in New Issue
Block a user