star-cloud/app
sky121113 201663741d [FEAT] 帳號與角色多層級隔離(主/子帳號樹狀 + 角色權限/機台授權子集把關)
1. 主帳號不變量:storeAccount 的 is_admin 改補位(每家公司恰一主帳號)、destroyAccount 禁刪最後主帳號、roles 新增 is_company_admin 旗標保護公司管理員角色不被刪除
2. 帳號樹狀層級:users 新增 parent_id/level(主帳號 level 0、子帳號最多兩層),新增 visibleTo/canManageAccount,帳號清單與管理端點(accounts/update/destroy/toggle、機台授權選帳號、補貨指派)一律套層級可見範圍與越權防護
3. 角色指派子集:storeAccount/updateAccount 指派角色與帳號 Modal 下拉一律限制為「權限為操作者子集」,杜絕權限提升
4. 機台授權子集:MachinePermissionController 僅允許在操作者本身可授權機台範圍內增刪,保留範圍外既有授權,並修正 machine_access 全域 scope 對讀寫的干擾
5. 角色層級隔離:roles 新增 created_by,子帳號只看/只管/只能指派自己建立的角色(主帳號看全公司),edit/update/destroy 加 canBeManagedBy 守衛
6. 補強:MachineSetting 機台權限人員清單補租戶隔離、修正角色下拉 N+1、三語系新增提示字串
7. 測試:新增 AccountHierarchyTest/AccountSubsetGuardTest/RoleHierarchyTest,Admin 套件 55 測試 0 回歸

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 17:03:43 +08:00
..
Console [FEAT] 實作訂單 pending 狀態轉移與逾時交易自動清除機制 2026-06-16 08:32:06 +08:00
Exceptions first commit 2025-11-21 17:15:27 +08:00
Http [FEAT] 帳號與角色多層級隔離(主/子帳號樹狀 + 角色權限/機台授權子集把關) 2026-06-25 17:03:43 +08:00
Jobs [FEAT] 遠端控制新增「強制重啟 APP」(reboot_force) 指令 2026-06-23 14:05:52 +08:00
Listeners [FEAT] 實作角色權限分類、租戶角控管理與介面多語系優化 2026-03-17 16:53:28 +08:00
Models [FEAT] 帳號與角色多層級隔離(主/子帳號樹狀 + 角色權限/機台授權子集把關) 2026-06-25 17:03:43 +08:00
Policies/Machine [FEAT] 實作維修管理模組與 RBAC 權限整合、多語系支援及 UI 優化 2026-03-25 14:25:42 +08:00
Providers [FEAT] 實作維修管理模組與 RBAC 權限整合、多語系支援及 UI 優化 2026-03-25 14:25:42 +08:00
Services [FEAT] 貨道效期+鎖定 App↔後台雙向同步(LWW) 2026-06-24 14:25:33 +08:00
Traits [FEAT] 銷售紀錄流水號顯示剝除機台序號前綴 2026-06-19 09:16:13 +08:00
View/Components first commit 2025-11-21 17:15:27 +08:00