feat(contracts,api): page-mode pagination + synced profile on admin users list

Co-Authored-By: Claude Code <noreply@anthropic.com>
This commit is contained in:
浅念
2026-09-22 18:06:12 +08:00
parent 91c85e196a
commit 2f6b6afc92
7 changed files with 337 additions and 15 deletions
+45 -1
View File
@@ -1242,7 +1242,25 @@ paths:
- $ref: '#/components/parameters/CursorQuery'
- name: limit
in: query
description: 每页条数。
description: 每页条数(游标模式)。
schema:
type: integer
minimum: 1
maximum: 100
default: 20
- name: page
in: query
description: |
页码(偏移分页模式):提供 page 且不带 cursor 时启用,响应返回
total 且 nextCursor=null / hasMore=false(翻页由 total 驱动)。
未提供 → 游标模式(keyset,兼容旧客户端);提供 cursor 时忽略
page。仅管理列表模式有意义。
schema:
type: integer
minimum: 1
- name: pageSize
in: query
description: 偏移分页每页条数(仅 page 模式生效,缺省 20)。
schema:
type: integer
minimum: 1
@@ -3665,6 +3683,29 @@ components:
format: date-time
readOnly: true
description: 创建时间。
synced:
type: [object, 'null']
readOnly: true
description: |
同步源档案快照(G4:工号/邮箱/公司/头像,来自用户同步、落
external_user_mappings.profile 列);本地创建/未同步用户为 null。
纯展示维度,不参与任何治理判定。
properties:
sn:
type: string
description: 工号。
email:
type: string
description: 企业邮箱。
companyName:
type: string
description: 公司全称。
companyAbbr:
type: string
description: 公司简称。
avatar:
type: string
description: 头像 URL。
AdminUserList:
allOf:
@@ -3677,6 +3718,9 @@ components:
description: 用户条目(前缀模式按 account 升序且仅激活资格用户;管理列表模式按 createdAt 与 ID 稳定倒序)。
items:
$ref: '#/components/schemas/AdminUser'
total:
type: [integer, 'null']
description: 过滤命中总数——仅管理列表 page 模式返回;游标/前缀模式为 null。
AdminUserStatusFilter:
type: string