jordium-gantt-vue3
Version:
A Vue 3 Gantt chart component for project management, task scheduling, resource planning, calendar, resource usage and timeline visualization.
32 lines (31 loc) • 1.24 kB
TypeScript
import { Task } from '../models/classes/Task';
/**
* 任务树操作工具函数
*/
/**
* 从任务树中查找任务的父任务
*/
export declare function findTaskParent(taskList: Task[], targetId: number, parent?: Task | null): Task | null;
/**
* 从任务树中移除指定任务
* @returns 被移除的任务,如果未找到则返回 null
*/
export declare function removeTaskFromTree(taskList: Task[], taskId: number): Task | null;
/**
* 将任务插入到任务树的指定位置
* @param taskList 任务列表
* @param targetId 目标任务ID
* @param taskToInsert 要插入的任务
* @param position 插入位置:'after' 表示在目标任务之后,'child' 表示作为目标任务的子任务
* @returns 是否插入成功
*/
export declare function insertTaskInTree(taskList: Task[], targetId: number, taskToInsert: Task, position: 'after' | 'child'): boolean;
/**
* 执行任务移动操作(直接修改传入的 taskList)
* @returns 移动信息,如果移动失败则返回 null
*/
export declare function moveTask(taskList: Task[], draggedTaskId: number, targetTaskId: number, position: 'after' | 'child'): {
movedTask: Task;
oldParent: Task | null;
newParent: Task | null;
} | null;