記錄搭建自己的應用中心-需求看板搭建
- 人員管理
- 新增用戶
- 組織用戶登錄和操作
- 看板狀態
- 看板
- 任務
- 通知
- 任務詳情
人員管理
由于不是所有人都有應用管理權限,所以額外做了一套應用登錄權限,做了一個新的組織人員表,一個登錄賬戶下的所有應用人員共享。
admin賬號為默認創建,不可用于登錄,這里顯示了,其實不該顯示,對應的是主應用情況下,微服務引用的時候,賬號的所有操作均為管理員操作。 目前這樣設計的。
// 新增組織用戶表
model OrganizationUser {id String @id @default(uuid())username Stringnickname Stringpassword String?email String?userStatus StringlastVisitedUrl String?reportedTasks Task[] @relation("ReportedTasks")handledTasks Task[] @relation("HandledTasks")operationLogs OperationLog[]User User @relation(fields: [userId], references: [userId])userId StringcreatedAt DateTime @default(now())updatedAt DateTime @updatedAtemailVerified Boolean @default(false)
}
新增用戶
新增一個用戶后,會向填入的郵箱發送一個驗證鏈接。頁面比較簡單,邏輯為,當新增用戶的時候,會生成一個uuid存在redis有效期10分鐘,然后,鏈接攜帶該uuid,用戶在授權頁面,輸入用戶名,密碼,會攜帶uuid,redis里面,uuid對應的有用戶的信息,如果頁面輸入的和redis存的是一樣的用戶,則做認證處理。
組織用戶登錄和操作
額外做了一套應用登錄授權,原先的應用管理登錄的賬戶,默認為admin賬戶。其他用戶需要登錄子應用的直接訪問鏈接加appId,如果不加appId則為管理員登錄模式(掃碼)對應的和管理中心的一致。
鏈接為 xxx/?appId=d40f0187-4fe2-4ba2-b230-e60013424510
登錄成功后,默認為某個應用的看板管理。不可切換(管理員可看所有)。
做了額外的守衛,這里命名比較隨意,BdGuard為新增的登錄授權,下面是原先的,都能通過。并且都會在request里面加入用戶信息,區別就是一個有idAdmin字段,一個沒有。
來換取組織用戶。
看板狀態
目前做的比較簡單,可以新增,刪除,排序。
看板
目前開發的也比較簡單,就是簡單的拖拽切換狀態。后面考慮增加快速檢索。
看板狀態變動,包括任務從待辦變成進行中,也會有郵件通知,但是郵箱需要通過授權。
任務
可以在待辦和進行中進行切換。
通知
任務待辦進行中切換,或者狀態切換,都會有郵件通知。
任務詳情
記錄了任務狀態,其他用的胡評論,以及上傳的附件。