ចាត់តាំង បន្ថែម ឬលុបអ្នកប្រើប្រាស់ពីកំណត់ត្រាដោយប្រើ Blue API
គ្រប់គ្រងអ្នកចាត់តាំងកំណត់ត្រា
Blue API ផ្តល់នូវប្រតិបត្តិការបីសម្រាប់គ្រប់គ្រងអ្នកចាត់តាំងកំណត់ត្រា៖ ការកំណត់អ្នកចាត់តាំង (ការប្តូរជាដំណើរការស្មាត), ការបន្ថែមអ្នកចាត់តាំង និងការលុបអ្នកចាត់តាំង។ ប្រតិបត្តិការទាំងនេះគ្រប់គ្រងការតាមដានសកម្មភាព ការជូនដំណឹង Webhooks និងការអាប់ដេតពេលវេលាពិតដោយស្វ័យប្រវត្តិ។
កំណត់អ្នកចាត់តាំងកំណត់ត្រា (ការចាត់តាំងស្មាត)
ជំនួសអ្នកចាត់តាំងបច្ចុប្បន្នទាំងអស់ជាមួយបញ្ជីថ្មី។ ប្រព័ន្ធគណនាអ្វីដែលត្រូវការប្រែប្រួលយ៉ាងឆ្លាតវៃ ដោយលុបអ្នកប្រើប្រាស់ដែលមិនមានក្នុងបញ្ជីថ្មី និងបន្ថែមអ្នកថ្មី។
mutation SetRecordAssignees {
setTodoAssignees(input: {
todoId: "record_abc123"
assigneeIds: ["user_123", "user_456", "user_789"]
}) {
success
operationId
}
}
បន្ថែមអ្នកចាត់តាំងកំណត់ត្រា
បន្ថែមអ្នកចាត់តាំងថ្មីដោយមិនលុបអ្នកចាត់តាំងដែលមានស្រាប់។ មានតែអ្នកប្រើប្រាស់ដែលមិនទាន់បានចាត់តាំងនឹងត្រូវបានបន្ថែម។
mutation AddRecordAssignees {
addTodoAssignees(input: {
todoId: "record_abc123"
assigneeIds: ["user_999", "user_111"]
}) {
success
operationId
}
}
លុបអ្នកចាត់តាំងកំណត់ត្រា
លុបអ្នកចាត់តាំងជាក់លាក់ពីកំណត់ត្រា។
mutation RemoveRecordAssignees {
removeTodoAssignees(input: {
todoId: "record_abc123"
assigneeIds: ["user_456"]
}) {
success
operationId
}
}
ប៉ារ៉ាម៉ែត្រ Input
SetTodoAssigneesInput
ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការទេ | ការពិពណ៌នា |
---|---|---|---|
todoId |
String! | ✅ បាទ | អត្តសញ្ញាណ(ID)នៃកំណត់ត្រាដើម្បីចាត់តាំងអ្នកប្រើប្រាស់ |
assigneeIds |
[String!]! | ✅ បាទ | បញ្ជីនៃអត្តសញ្ញាណ(ID)នៃអ្នកប្រើប្រាស់ដើម្បីចាត់តាំង (ជំនួសអ្នកចាត់តាំងបច្ចុប្បន្នទាំងអស់) |
AddTodoAssigneesInput
ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការទេ | ការពិពណ៌នា |
---|---|---|---|
todoId |
String! | ✅ បាទ | អត្តសញ្ញាណ(ID)នៃកំណត់ត្រាដើម្បីចាត់តាំងអ្នកប្រើប្រាស់ |
assigneeIds |
[String!]! | ✅ បាទ | បញ្ជីនៃអត្តសញ្ញាណ(ID)នៃអ្នកប្រើប្រាស់ដើម្បីបន្ថែមជាអ្នកចាត់តាំង |
RemoveTodoAssigneesInput
ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការទេ | ការពិពណ៌នា |
---|---|---|---|
todoId |
String! | ✅ បាទ | អត្តសញ្ញាណ(ID)នៃកំណត់ត្រាដើម្បីលុបអ្នកចាត់តាំង |
assigneeIds |
[String!]! | ✅ បាទ | បញ្ជីនៃអត្តសញ្ញាណ(ID)នៃអ្នកប្រើប្រាស់ដើម្បីលុបចេញពីអ្នកចាត់តាំង |
វាលចម្លើយ
វាល | ប្រភេទ | ការពិពណ៌នា |
---|---|---|
success |
Boolean! | ថាតើប្រតិបត្តិការបានបញ្ចប់ដោយជោគជ័យ |
operationId |
String | អត្តសញ្ញាណមួយគត់សម្រាប់តាមដានប្រតិបត្តិការនេះ |
អនុសាសន៍ដែលត្រូវការ
កំណត់/លុបអ្នកចាត់តាំង
តួនាទី | អាចចាត់តាំង/លុបបាន |
---|---|
OWNER |
✅ បាទ |
ADMIN |
✅ បាទ |
MEMBER |
✅ បាទ |
CLIENT |
✅ បាទ |
VIEW_ONLY |
❌ ទេ |
COMMENT_ONLY |
❌ ទេ |
បន្ថែមអ្នកចាត់តាំង
តួនាទី | អាចបន្ថែមអ្នកចាត់តាំង |
---|---|
OWNER |
✅ បាទ |
ADMIN |
✅ បាទ |
MEMBER |
✅ បាទ |
CLIENT |
✅ បាទ |
VIEW_ONLY |
✅ បាទ |
COMMENT_ONLY |
✅ បាទ |
ការឆ្លើយតបកំហុស
កំណត់ត្រាមិនបានរកឃើញ
{
"errors": [{
"message": "Todo was not found.",
"extensions": {
"code": "TODO_NOT_FOUND"
}
}]
}
អនុសាសន៍មិនគ្រប់គ្រាន់
{
"errors": [{
"message": "You don't have permission to modify this record",
"extensions": {
"code": "FORBIDDEN"
}
}]
}
បញ្ចូលមិនត្រឹមត្រូវ
{
"errors": [{
"message": "Variable '$input' got invalid value; Expected non-nullable type 'String!' not to be null.",
"extensions": {
"code": "GRAPHQL_VALIDATION_FAILED"
}
}]
}
ការប្រៀបធៀបប្រតិបត្តិការ
លក្ខណៈ | កំណត់អ្នកចាត់តាំង | បន្ថែមអ្នកចាត់តាំង | លុបអ្នកចាត់តាំង |
---|---|---|---|
Logic | Smart replacement | Incremental addition | Selective removal |
Activity Tracking | ✅ បាទ | ❌ ទេ | ❌ ទេ |
ការជូនដំណឹង | ✅ បាទ | ❌ ទេ | ❌ ទេ |
Webhooks | ✅ បាទ | ❌ ទេ | ❌ ទេ |
Automations | ✅ បាទ | ❌ ទេ | ❌ ទេ |
Permission Level | Stricter | More permissive | Stricter |
គោលការណ៍អាជីវកម្ម
ការចាត់តាំងស្មាត (setTodoAssignees)
ពេលដែលអ្នកប្រើ setTodoAssignees
ប្រព័ន្ធនឹង៖
- ប្រៀបធៀបបញ្ជី: វិភាគអ្នកចាត់តាំងបច្ចុប្បន្ននិងបញ្ជីអ្នកចាត់តាំងថ្មី
- គណនាប្រែប្រួល: កំណត់ថាតើត្រូវលុប អ្នកណាដែលត្រូវរក្សា និងអ្នកណាដែលត្រូវបន្ថែម
- លុបអ្នកប្រើប្រាស់: លុបអ្នកប្រើប្រាស់ដែលមិនមានក្នុងបញ្ជីថ្មី
- បន្ថែមអ្នកប្រើប្រាស់: ចាត់តាំងអ្នកប្រើប្រាស់ក្នុងបញ្ជីថ្មីដែលមិនទាន់បានចាត់តាំង
- តាមដានសកម្មភាព: បង្កើតចំណុចកំណត់សកម្មភាពសម្រាប់ការប្រែប្រួលនីមួយៗ
- ផ្ញើការជូនដំណឹង: ជូនដំណឹងអ្នកដែលត្រូវបានចាត់តាំងថ្មី
- បង្កើត Webhooks: បញ្ចេញ Webhooks ដែលបានបន្ថែម/លុបអ្នកចាត់តាំង
- អាប់ដេតក្រាហ្វិក: សម្គាល់ក្រាហ្វិកវិភាគសម្រាប់ការអាប់ដេត
- អាប់ដេតពេលវេលាពិត: បោះពុម្ពអាប់ដេតទៅកាន់អតិថិជនដែលភ្ជាប់
ប្រតិបត្តិការងាយៗ (បន្ថែម/លុប)
ប្រតិបត្តិការនៅក្នុង addTodoAssignees
និង removeTodoAssignees
ផ្តល់នូវមុខងារមូលដ្ឋានដោយគ្មានការតាមដាន និងការជូនដំណឹងដ៏ទូលំទូលាយនៃ setTodoAssignees
។
កំណត់ចំណាំសំខាន់
- សមាជិកគម្រោង: អ្នកចាត់តាំងគួរត្រូវជាសមាជិកនៃគម្រោងដែលមានកំណត់ត្រា
- គ្មានកំណត់ចំនួនចាត់តាំង: មិនមានចំនួនអតិបរមានៃអ្នកចាត់តាំងក្នុងកំណត់ត្រា
- ការចាត់តាំងខ្លួនឯង: អ្នកប្រើប្រាស់អាចចាត់តាំងខ្លួនឯងប្រសិនបើពួកគេមានអនុសាសន៍ត្រឹមត្រូវ
- បញ្ជីគ្មានមាតិកា: ការផ្តល់បញ្ជី
assigneeIds
ដែលគ្មានមាតិកាទៅកាន់setTodoAssignees
នឹងលុបអ្នកចាត់តាំងទាំងអស់ - ការពារការក្លែងបន្លំ: ប្រព័ន្ធនឹងការពារការចាត់តាំងក្លែងក្លាយដោយស្វ័យប្រវត្តិ
- ប្រសិទ្ធភាពមូលដ្ឋានទិន្នន័យ: ប្រើតារាងចំណុច (junction table) (
TodoUser
) សម្រាប់ទំនាក់ទំនងច្រើនទៅច្រើនដែលអាចពង្រីកបាន - អាប់ដេតពេលវេលាពិត: អតិថិជនទាំងអស់ដែលភ្ជាប់ទទួលអាប់ដេតភ្លាមៗពេលដែលការចាត់តាំងបានផ្លាស់ប្តូរ
ទទួលបានអ្នកចាត់តាំងដែលអាចប្រើបាន
ដើម្បីទទួលបានបញ្ជីអ្នកប្រើប្រាស់ដែលអាចត្រូវបានចាត់តាំងទៅកាន់កំណត់ត្រានៅក្នុងគម្រោង៖
query GetAssignees {
assignees(projectId: "project_abc123") {
id
name
email
avatar
}
}
ការស្នើសុំនេះនឹងត្រឡប់មកវិញអ្នកសមាជិកគម្រោងទាំងអស់ដែលអាចត្រូវបានចាត់តាំងទៅកាន់កំណត់ត្រា។
ប្រតិបត្តិការទាក់ទង
- បញ្ជីកំណត់ត្រា - ទទួលបានកំណត់ត្រាជាមួយអ្នកចាត់តាំងបច្ចុប្បន្ន
- អាប់ដេតកំណត់ត្រា - កែប្រែលក្ខណៈផ្សេងៗនៃកំណត់ត្រា
- បន្ថែមកំណត់ចំណាំ - បន្ថែមកំណត់ចំណាំទៅកាន់កំណត់ត្រាដែលបានចាត់តាំង