# 角色權限管理 # 角色權限管理 ## (OK) 取得角色列表 Request: GET /role?$queryParams [Query Params:](Untitled%204/Query%20Params.csv) Response (成功): ```json= { "success": true, "total": "總數量 <number>", "data": [ { "id": "角色編號 <string>", "name": "角色名稱 <string>", "amount": "人數 <string>", "updateAt": "更新時間 <number, bigint>" } ] } ``` ## (OK) 新增角色 Request: POST /role Payload: ```json= { "name": "角色名稱 <string>", "permission": "[{ "function": "功能名稱 <string>", "read": "讀寫權限 <boolean>", "write": "讀寫權限 <boolean>" }]" } ``` Response (成功): ```json= { "success": true, "data": { "id": "角色 ID <string>" } } ``` ## (OK) 編輯角色 Request: PUT /role/$id Payload: ```json= { "name": "角色名稱 <string>", "permission": "[{ "function": "功能(頁面)名稱 <string>", "read": "讀寫權限 <boolean>", "write": "讀寫權限 <boolean>" }]" } ``` Response (成功): ```json= { "success": true } ``` ## (OK) 刪除角色 Request: DEL /role/$id Response (成功): ```json= { "success": true } ``` ## (OK) 取得權限表 Request: GET /role/permission/$id Response (成功): ```json= { "success": true, "data": { "permission": { "caseMgmt": { "caseList": { "addCase": "RW" }, "caseContent": { "info": "RW", "physiological": "RW", "diet": "RW", "state": "RW", "course": "RW" } }, "calendarMgmt": { "courseReservation": "RW" }, "statisticalReport": { "physiological": "R", "caseMgmt": "R", "course": "R" }, "courseMgmt": { "courseSchedule": "R", "courseLesson": "RW" }, "caseTypeMgmt": { "caseTypeMgmt": "R" } } } } ``` ## (OK) 更新權限表 Request: PUT /role/permission/$id Payload: ```json= { "permission": { "caseMgmt": { "caseList": { "addCase": "RW" }, "caseContent": { "info": "RW", "physiological": "RW", "diet": "RW", "state": "RW", "course": "RW" } }, "calendarMgmt": { "courseReservation": "RW" }, "statisticalReport": { "physiological": "R", "caseMgmt": "R", "course": "R" }, "courseMgmt": { "courseSchedule": "R", "courseLesson": "RW" }, "caseTypeMgmt": { "caseTypeMgmt": "R" } } } ``` Response (成功): ```json= { "success": true } ```