docs: rebuild architecture and taskplans for role-site model

This commit is contained in:
Chris
2026-04-02 23:35:05 +08:00
parent 7cdf2b5a51
commit 16bbfdba24
8 changed files with 263 additions and 286 deletions

View File

@@ -1,17 +1,43 @@
# Frontend Handoff
# Frontend HandoffRole-Site 模型)
## 目前後端契約重點
- 後台登入:只吃 Bearer + admin 群組檢查
- 會員模型:`user_sub`, `username`, `email`, `display_name`, `is_active`
- 會員密碼:支援重設 API回傳臨時密碼
## 目
前端只實作新模型,不再使用舊 `permission_groups` / `module-action` 流程。
## 會員頁必做
1. 新增會員表單欄位:`username``email``display_name`
2. 編輯會員表單欄位:`username``email``display_name``is_active`
3. 表格欄位要顯示:`user_sub``username``email``display_name`
4. 操作欄新增「重設密碼」按鈕,串 `POST /admin/members/{user_sub}/password/reset`
5. 重設成功後顯示臨時密碼,並提醒管理員安全轉交
## 主要頁面
1. 公司管理CRUD
- 欄位:`company_key`, `display_name`, `legal_name`, `status`
- 詳情頁需顯示底下 `sites` 列表
## 其他頁面
- 仍維持群組中心模型site/system/module/member + action(view/edit)
- 系統/模組/公司/會員關聯頁面沿用目前 API
2. 站台管理CRUD
- 欄位:`site_key`, `company_id`, `display_name`, `domain`, `status`
- 站台詳情需顯示:
- 此站台綁定的 `roles`
- 此站台包含的 `users`
3. 系統管理CRUD
- 欄位:`system_key`, `name`, `idp_client_id`, `status`
- 系統詳情需顯示底下 `roles` 列表
4. 角色管理CRUD
- 欄位:`role_key`, `system_id`, `name`, `description`, `idp_role_name`, `status`
- 關聯操作:指派到 Site新增/刪除 `site_roles`
5. 會員管理CRUD
- 欄位:`user_sub`, `username`, `email`, `display_name`, `is_active`, `status`
- 關聯操作:加入/移除 Site新增/刪除 `user_sites`
- 顯示推導角色(唯讀)
6. API Clients 管理CRUD
- 欄位:`client_key`, `name`, `status`, `allowed_origins`, `allowed_ips`, `allowed_paths`, `rate_limit_per_min`, `expires_at`
## 前端互動規則
- 角色不可直接綁會員UI 不提供此操作)。
- Site 與 User 的關聯調整後,角色顯示即時刷新。
- 刪除操作一律二次確認,顯示影響提示。
## 驗收重點
- 看不到舊 permission group 流程。
- 可以完整做:
- Site 綁 Role
- User 綁 Site
- 顯示 User 推導角色