គ្រប់គ្រងបញ្ជី todo ក្នុងគម្រោង - បង្កើត, កែប្រែ, លុប និងស្វែងរកបញ្ជី
ទិដ្ឋភាពទូទៅ
បញ្ជីក្នុង Blue គឺជាកុងតឺន័រដើម្បីរៀបចំ todos ក្នុងគម្រោងមួយ។ បញ្ជីមួយអាចកាន់ todos ច្រើន និងជួយរៀបចំការងារនៅក្នុងក្រុមដែលមានល្បឿន។ បញ្ជីគាំទ្រការកំណត់ទីតាំង, ការបិទ និងការគ្រប់គ្រងការចូលដំណើរការដែលមានមូលដ្ឋានលើតួនាទី។
គំនិតសំខាន់ៗ
- គម្រោងមួយអាចមានបញ្ជីបានរហូតដល់ 50 បញ្ជី
- បញ្ជីត្រូវបានរៀបចំតាមទីតាំង (កើនឡើង)
- បញ្ជីអាចត្រូវបានបិទដើម្បីការពារការកែប្រែ
- បញ្ជីគោរពសិទ្ធិមូលដ្ឋានគម្រោង និងសិទ្ធិមូលដ្ឋានលើតួនាទី
- បញ្ជីដែលត្រូវបានលុបត្រូវបានផ្លាស់ទីទៅកាន់កុងតឺន័រលុប (លុបទន់)
សំណួរ
ទទួលបានបញ្ជីតែមួយ
ទាញយកបញ្ជី todo ជាក់លាក់តាម ID ។
query GetTodoList($id: String!) {
todoList(id: $id) {
id
uid
title
position
isDisabled
isLocked
createdAt
updatedAt
project {
id
name
}
createdBy {
id
username
}
}
}
ទទួលបានបញ្ជីទាំងអស់ក្នុងគម្រោងមួយ
ទាញយកបញ្ជី todo ទាំងអស់សម្រាប់គម្រោងជាក់លាក់មួយ។
query GetProjectLists($projectId: String!) {
todoLists(projectId: $projectId) {
id
uid
title
position
isDisabled
isLocked
createdAt
updatedAt
}
}
សំណួរបញ្ជីកម្រិតខ្ពស់
សំណួរបញ្ជីជាមួយការកំណត់ត្រា, ការរៀបចំ និងការបែងចែកទំព័រ។
query SearchTodoLists($filter: TodoListsFilterInput!, $sort: [TodoListsSort!], $skip: Int, $take: Int) {
todoListQueries {
todoLists(filter: $filter, sort: $sort, skip: $skip, take: $take) {
items {
id
uid
title
position
isDisabled
isLocked
createdAt
updatedAt
project {
id
name
}
}
pageInfo {
hasNextPage
hasPreviousPage
total
}
}
}
}
ការប្រែប្រួល
បង្កើតបញ្ជី
បង្កើតបញ្ជី todo ថ្មីក្នុងគម្រោងមួយ។
mutation CreateTodoList($input: CreateTodoListInput!) {
createTodoList(input: $input) {
id
uid
title
position
isDisabled
isLocked
createdAt
project {
id
name
}
}
}
ឧទាហរណ៍:
mutation {
createTodoList(input: {
projectId: "project-123"
title: "Sprint 1 Tasks"
position: 1.0
}) {
id
title
}
}
កែប្រែបញ្ជី
ធ្វើអាប់ដេតលក្ខណៈរបស់បញ្ជី todo ដែលមានស្រាប់។
mutation EditTodoList($input: EditTodoListInput!) {
editTodoList(input: $input) {
id
title
position
isLocked
updatedAt
}
}
ឧទាហរណ៍:
mutation {
editTodoList(input: {
todoListId: "list-123"
title: "Sprint 1 - In Progress"
position: 2.0
isLocked: true
}) {
id
title
isLocked
}
}
លុបបញ្ជី
លុបបញ្ជី todo (ផ្លាស់ទីទៅកាន់កុងតឺន័រលុប)។
mutation DeleteTodoList($input: DeleteTodoListInput!) {
deleteTodoList(input: $input) {
success
}
}
ឧទាហរណ៍:
mutation {
deleteTodoList(input: {
projectId: "project-123"
todoListId: "list-123"
}) {
success
}
}
គណនាបញ្ជីថា បានធ្វើ/មិនបានធ្វើ
គណនាទាំងអស់ todos ក្នុងបញ្ជីថា បានធ្វើ ឬ មិនបានធ្វើ។
# Mark as done
mutation MarkListDone($todoListId: String!, $filter: TodosFilter) {
markTodoListAsDone(todoListId: $todoListId, filter: $filter)
}
# Mark as undone
mutation MarkListUndone($todoListId: String!, $filter: TodosFilter) {
markTodoListAsUndone(todoListId: $todoListId, filter: $filter)
}
ប្រភេទចូល
CreateTodoListInput
ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការទេ | ការពិពណ៌នា |
---|---|---|---|
projectId |
String! | ✅ បាទ | ID គម្រោងដែលបញ្ជីនឹងត្រូវបានបង្កើត |
title |
String! | ✅ បាទ | ឈ្មោះរបស់បញ្ជី |
position |
Float! | ✅ បាទ | ទីតាំងរបស់បញ្ជី (សម្រាប់ការរៀបចំ) |
EditTodoListInput
ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការទេ | ការពិពណ៌នា |
---|---|---|---|
todoListId |
String! | ✅ បាទ | ID របស់បញ្ជីដែលត្រូវកែប្រែ |
title |
String | មិនត្រូវការទេ | ចំណងជើងថ្មីសម្រាប់បញ្ជី |
position |
Float | មិនត្រូវការទេ | ទីតាំងថ្មីសម្រាប់បញ្ជី |
isLocked |
Boolean | មិនត្រូវការទេ | តើបញ្ជីត្រូវបានបិទឬអត់ |
DeleteTodoListInput
ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការទេ | ការពិពណ៌នា |
---|---|---|---|
projectId |
String! | ✅ បាទ | ID គម្រោង (សម្រាប់ការបញ្ជាក់) |
todoListId |
String! | ✅ បាទ | ID របស់បញ្ជីដែលត្រូវលុប |
TodoListsFilterInput
ប៉ារ៉ាម៉ែត្រ | ប្រភេទ | ត្រូវការទេ | ការពិពណ៌នា |
---|---|---|---|
companyIds |
[String!]! | ✅ បាទ | ការកំណត់តាម ID ក្រុមហ៊ុន |
projectIds |
[String!] | មិនត្រូវការទេ | ការកំណត់តាម ID គម្រោងជាក់លាក់ |
ids |
[String!] | មិនត្រូវការទេ | ការកំណត់តាម ID បញ្ជីជាក់លាក់ |
titles |
[String!] | មិនត្រូវការទេ | ការកំណត់តាមចំណងជើងបញ្ជី |
search |
String | មិនត្រូវការទេ | ស្វែងរកបញ្ជីតាមចំណងជើង |
TodoListsSort Values
តម្លៃ | ការពិពណ៌នា |
---|---|
title_ASC |
រៀបចំតាមចំណងជើងកើនឡើង |
title_DESC |
រៀបចំតាមចំណងជើងកើនឡើង |
createdAt_ASC |
រៀបចំតាមថ្ងៃបង្កើតកើនឡើង |
createdAt_DESC |
រៀបចំតាមថ្ងៃបង្កើតកើនឡើង |
updatedAt_ASC |
រៀបចំតាមថ្ងៃអាប់ដេតកើនឡើង |
updatedAt_DESC |
រៀបចំតាមថ្ងៃអាប់ដេតកើនឡើង |
position_ASC |
រៀបចំតាមទីតាំងកើនឡើង (លំនាំដើម) |
position_DESC |
រៀបចំតាមទីតាំងកើនឡើង |
ប្រភេទចម្លើយ
TodoList Type
វាល | ប្រភេទ | ការពិពណ៌នា |
---|---|---|
id |
ID! | អត្តសញ្ញាណឯកតា |
uid |
String! | អត្តសញ្ញាណដែលងាយស្រួលប្រើ |
position |
Float! | ទីតាំងបញ្ជីសម្រាប់ការរៀបចំ |
title |
String! | ឈ្មោះបញ្ជី |
isDisabled |
Boolean! | តើបញ្ជីត្រូវបានបិទឬអត់ |
isLocked |
Boolean | តើបញ្ជីត្រូវបានបិទឬអត់ |
createdAt |
DateTime! | ម៉ោងបង្កើត |
updatedAt |
DateTime! | ម៉ោងអាប់ដេតចុងក្រោយ |
activity |
Activity | កំណត់ហេតុសកម្មភាពដែលភ្ជាប់ |
createdBy |
User | អ្នកដែលបានបង្កើតបញ្ជី |
project |
Project! | គម្រោងមាត្រ |
todos |
[Todo!]! | Todos ក្នុងបញ្ជីនេះ |
todosCount |
Int! | ចំនួន todos |
TodoListsPagination Type
វាល | ប្រភេទ | ការពិពណ៌នា |
---|---|---|
items |
[TodoList!]! | អារ៉ាយនៃបញ្ជី todo |
pageInfo |
PageInfo! | ព័ត៌មានបែងចែក |
សិទ្ធិដែលត្រូវការ
សិទ្ធិសំណួរ
ប្រតិបត្តិការ | សិទ្ធិដែលត្រូវការ |
---|---|
todoList |
Must be authenticated |
todoLists |
Must be authenticated and in company |
todoListQueries.todoLists |
Must be authenticated and in company |
សិទ្ធិការប្រែប្រួល
ប្រតិបត្តិការ | តួនាទីមូលដ្ឋានគម្រោងដែលអនុញ្ញាត |
---|---|
createTodoList |
OWNER, ADMIN, MEMBER |
editTodoList |
OWNER, ADMIN, MEMBER, CLIENT |
deleteTodoList |
OWNER, ADMIN, MEMBER |
markTodoListAsDone |
OWNER, ADMIN, MEMBER |
markTodoListAsUndone |
OWNER, ADMIN, MEMBER |
កំណត់ចំណាំ: អ្នកប្រើដែលមានតួនាទី CLIENT អាចកែប្រាបញ្ជីបាន ប៉ុន្តែមិនអាចបង្កើត ឬ លុបបានទេ។ អ្នកប្រើដែលមានតួនាទី VIEW_ONLY ឬ COMMENT_ONLY មិនអាចបង្កើត, កែប្រែ, ឬ លុបបញ្ជីបានទេ។
ចម្លើយកំហុស
TodoListNotFoundError
{
"errors": [{
"message": "Todo list was not found.",
"extensions": {
"code": "TODO_LIST_NOT_FOUND"
}
}]
}
ProjectNotFoundError
{
"errors": [{
"message": "Project was not found.",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Maximum Lists Error
{
"errors": [{
"message": "You have reached the maximum number of todo lists for this project.",
"extensions": {
"code": "INTERNAL_SERVER_ERROR"
}
}]
}
UnauthorizedError
{
"errors": [{
"message": "Unauthorized",
"extensions": {
"code": "UNAUTHORIZED"
}
}]
}
កំណត់ចំណាំសំខាន់
- កំណត់បញ្ជី: គម្រោងមួយអាចមានបញ្ជីបានរហូតដល់ 50 បញ្ជី
- លុបទន់: បញ្ជីដែលត្រូវបានលុបត្រូវបានផ្លាស់ទីទៅកាន់កុងតឺន័រលុប និងអាចត្រូវបានស្ដារឡើងវិញ
- ការគ្រប់គ្រងទីតាំង: នៅពេលបង្កើតបញ្ជី សូមប្រាកដថាទីតាំងមិនមានការប្រកួតប្រជែង។ ប្រើតម្លៃបន្ថែម (1.0, 2.0, 3.0) ដើម្បីអនុញ្ញាតឱ្យបញ្ចូលចន្លោះរវាងបញ្ជី
- ការចូលដំណើរការដែលមានមូលដ្ឋានលើតួនាទី: បញ្ជីអាចត្រូវបានលាក់ពីតួនាទីជាក់លាក់ដោយប្រើសិទ្ធិ ProjectUserRoleTodoList
- Webhooks: ការបង្កើត, ការអាប់ដេត, និងការលុបបញ្ជីបង្កើត webhooks ប្រសិនបើបានកំណត់
- ការតាមដានសកម្មភាព: ការប្រតិបត្តិការទាំងអស់លើបញ្ជីត្រូវបានកំណត់ក្នុង feed សកម្មភាព
- ការអាប់ដេតពេលវេលាពិត: ការផ្លាស់ប្តូរបញ្ជីត្រូវបានផ្សព្វផ្សាយតាមរយៈការជាវសម្រាប់ការអាប់ដេតពេលវេលាពិត
ប្រតិបត្តិការដែលពាក់ព័ន្ធ
- ប្រើ
todos
សំណួរដើម្បីទាញយក todos ក្នុងបញ្ជី - ប្រើ
createTodo
ការប្រែប្រួលដើម្បីបន្ថែម todos ទៅក្នុងបញ្ជី - ប្រើ
moveTodo
ការប្រែប្រួលដើម្បីផ្លាស់ប្តូរទៅកាន់ todos រវាងបញ្ជី - ចុះឈ្មោះដើម្បីផ្លាស់ប្តូរបញ្ជីដោយប្រើ
subscribeToTodoList
ការជាវ