Files
member-platform/docs/FRONTEND_HANDOFF_SCHEMA_V2.md

88 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Frontend 交辦清單Schema v2
## 目標
前端要改成對應後端新模型:
- 公司companies
- 品牌站台sites
- 會員users
- 系統/模組systems/modules
- 權限群組permission-groups
## 既有頁面要調整
### 1) 權限管理頁 `/admin/permissions`
- Grant/Revoke payload 改為:
- `scope_type`: `company``site`
- `scope_id`: `company_key``site_key`
- `system`: 必填(例如 `mkt`
- `module`: 選填(空值代表系統層權限)
- `action`
- 表單新增 `system` 欄位。
- `module` 改成可選。
### 2) 我的權限頁 `/me/permissions`
- 顯示欄位改為:
- `scope_type`
- `scope_id`
- `system`
- `module`
- `action`
## 新增頁面
### 3) 系統管理 `/admin/systems`
- 列表:`GET /admin/systems`
- 新增:`POST /admin/systems`
### 4) 模組管理 `/admin/modules`
- 列表:`GET /admin/modules`
- 新增:`POST /admin/modules`
- `system_key`
- `module_key`
- `name`
### 5) 公司管理 `/admin/companies`
- 列表:`GET /admin/companies`
- 新增:`POST /admin/companies`
### 6) 站台管理 `/admin/sites`
- 列表:`GET /admin/sites`
- 新增:`POST /admin/sites`
- `company_key`
### 7) 會員列表 `/admin/members`
- 列表:`GET /admin/members`
### 8) 權限群組 `/admin/permission-groups`
- 群組列表/新增:
- `GET /admin/permission-groups`
- `POST /admin/permission-groups`
- 群組綁會員:
- `POST /admin/permission-groups/{group_key}/members/{authentik_sub}`
- `DELETE /admin/permission-groups/{group_key}/members/{authentik_sub}`
- 群組授權:
- `POST /admin/permission-groups/{group_key}/permissions/grant`
- `POST /admin/permission-groups/{group_key}/permissions/revoke`
## 共用資料載入(下拉選單)
權限表單應先載入:
- systems: `GET /admin/systems`
- modules: `GET /admin/modules`
- companies: `GET /admin/companies`
- sites: `GET /admin/sites`
## 認證(管理 API
所有 `/admin/*` API 一律帶:
- `X-Client-Key`
- `X-API-Key`
本地測試可用:
- `X-Client-Key: admin-frontend`
- `X-API-Key: dev-admin-key-123`
## 驗收條件
- 可以新增 system/module/company/site。
- 可以做 user 直接 grant/revoke。
- 可以建立 permission-group、加會員、做群組 grant/revoke。
- `/me/permissions/snapshot` 能看到直接權限 + 群組權限(去重後)。