Fix move task over task error

This commit is contained in:
sosokker 2023-11-27 22:37:51 +07:00
parent b331fd97c3
commit 2b013cda45
2 changed files with 23 additions and 3 deletions

View File

@ -9,7 +9,7 @@ export function ColumnContainer({ column, createTask, tasks, deleteTask, updateT
return tasks.map((task) => task.id);
}, [tasks]);
const { setNodeRef, attributes, listeners, transform, transition, isDragging } = useSortable({
const { setNodeRef, attributes, listeners } = useSortable({
id: column.id,
data: {
type: "Column",

View File

@ -221,17 +221,37 @@ export function KanbanBoard() {
const activeId = active.id;
const isActiveATask = active.data.current?.type === "Task";
const isOverATask = over.data.current?.type === "Task";
const isOverAColumn = over.data.current?.type === "Column";
if (isActiveATask && isOverATask) {
setTasks((tasks) => {
const activeIndex = tasks.findIndex((t) => t.id === activeId);
const columnId = over.data.current.task.columnId;
tasks[activeIndex].columnId = columnId;
// API call to update task's columnId
axiosInstance
.put(`todo/change_task_list_board/`, {
todo_id: activeId,
new_list_board_id: columnId,
new_index: 0,
})
.then((response) => {})
.catch((error) => {
console.error("Error updating task columnId:", error);
});
return arrayMove(tasks, activeIndex, activeIndex);
});
}
// Move tasks between columns and update columnId
if (isActiveATask && isOverAColumn) {
setTasks((tasks) => {
const activeIndex = tasks.findIndex((t) => t.id === activeId);
const columnId = over.data.current.column.id;
tasks[activeIndex].columnId = columnId;
// API call to update task's columnId
axiosInstance
.put(`todo/change_task_list_board/`, {