feat(huya): 协作台账勾选导出 CK 到剪贴板(单点权限 + 逐行审计)+ 工具区固定两行

This commit is contained in:
yml2213
2026-10-16 22:24:08 +08:00
parent 6ef74c8e45
commit 82c59bb4af
9 changed files with 431 additions and 6 deletions
+21
View File
@@ -34,6 +34,8 @@ from ...schemas import (
HuyaExternalOrderActivityQueryOut,
HuyaExternalOrderActivityQueryRequest,
HuyaExternalOrderAuditOut,
HuyaExternalOrderCkExportOut,
HuyaExternalOrderCkExportRequest,
HuyaExternalOrderCkRequest,
HuyaExternalOrderCkStatusRequest,
HuyaExternalOrderCreate,
@@ -375,6 +377,25 @@ def verify_external_orders_ck(
raise _http_error(exc) from exc
@router.post("/external-orders/ck/export", response_model=HuyaExternalOrderCkExportOut)
def export_external_orders_ck(
req: HuyaExternalOrderCkExportRequest,
db: Session = Depends(get_db),
current: User = Depends(require_permission("huya:collab:ck_export")),
):
"""勾选多行导出 **CK 明文**(前端写进剪贴板)。
单独一个权限点 ``huya:collab:ck_export``(默认只给运营):贴 CK 是「录入」,
导出是「把凭据带走」。逐行写审计(``huya:collab:ck_export``),但**只记单号**,
不把 CK 本体写进审计;没 CK 的行在 ``skipped`` 里显式回原因。
"""
try:
orders = collab.list_orders_by_ids(db, req.ids)
return collab.export_cks(db, current, orders)
except collab.CollabError as exc:
raise _http_error(exc) from exc
# --------------------------------------------------------------------------
# 单行操作
# --------------------------------------------------------------------------