Database-Design
B2B應用:使用者有自己的使用者
我正在嘗試的 B2B 場景是:
系統中存在以下角色:
- 超級管理員
- 超級管理員
- 業主(客戶)
- 管理員(所有者即客戶並創建管理員來定義銷售櫃檯)
- 銷售櫃檯
這意味著有些使用者會創建自己的子使用者,例如
**$$ FLAG-A $$**ROLE“SUPER ADMIN”創建一個ROLE“Owner”,“OWNER”創建自己的子使用者ROLES,即“ADMN”和“SALES COUNTER”。
每個角色顯然都有其登錄系統的資訊
我試圖設計數據庫如下:
在此圖中,我假設主使用者創建了在我看來多對多關係的子使用者,因此我必須在它們之間添加表作為“USER_PERSON”。
問題是在系統中設置“誰創建的使用者”。我的意思是哪個使用者創建了子使用者,如中所述**$$ FLAG-A $$**
您的方法不必要地複雜。你的情況歸結為:
- 你有使用者(也是人),他們有相應的屬性,包括登錄憑據等,還有狀態和上次登錄日期。
- 一個使用者(人)可以有一個(或多個?)角色。
- 一個角色具有一個或多個權限。
- 一個使用者可以由另一個使用者創建,因此使用者的創建者是使用者的屬性之一。
所以,我會為三個實體建模:
- 使用者(具有所有屬性),具有對使用者創建者的自引用。
- 角色,與使用者具有多對多關係。
- 權限,與 Role 具有多對一(或多對多)關係。
就是這樣。