`
air291988889
  • 浏览: 14052 次
社区版块
存档分类
最新评论

甘特图父子任务级联关系

    博客分类:
  • java
阅读更多

由于甘特图的任务id必须是0-9的数字,所以这里的任务id为rid,id字段为数据库中的逐渐。

下面两个方法为核心方法。

 

//定义一个空有序集合

List<GanttViewBean> resultList = new ArrayList<GanttViewBean>();

 

//将获取的数据进行级联排序

private List<GanttViewBean> compareList(List<GanttViewBean> dataList) {
  if (!dataList.isEmpty()) {
   for (GanttViewBean gvb : dataList) {
    if (gvb.getParent().equals("0")) {
     resultList.add(gvb);
     for (int i = 0; i < dataList.size(); i++) {
      put2List(dataList, gvb.getRid(), dataList.get(i));
     }
    }
   }

  }
  return resultList;
 }

 

//递归

/**

 *dataList:数据集合

 *rid:父任务id

 *gvb:当前任务对象,用于获取当前任务的父id 

 */

 public void put2List(List<GanttViewBean> dataList, String rid,
   GanttViewBean gvb) {
  if (rid.equals(gvb.getParent())) {
   resultList.add(gvb);
   for (int n = 0; n < dataList.size(); n++) {
    put2List(dataList, gvb.getRid(), dataList.get(n));
   }
  }
 }

 

 

 

//下面是bean类,为了节省空间,构造器就不贴了.

public class GanttViewBean {

 String id = ""; // ID
 String rid = "";// rid
 String name = ""; // 名称
 String start = ""; // 开始日期
 String end = ""; // 结束日期
 String color = ""; // 颜色
 String link = ""; // 链接
 String complete = ""; // 完成度
 String group = ""; // 分组
 String mileStone = ""; // 里程碑
 String resource = ""; // 资源
 String parent = ""; // 上级任务ID
 String open = "0"; // 是否展开
 String dependency = ""; // 依赖任务
 String caption = ""; // 标题
 String isGroup = StringUtil.isBlank(group) ? "0" : group; // 是否分组
 String isMileStone = StringUtil.isBlank(mileStone) ? "0" : mileStone; // 是否里程碑

}

分享到:
评论

相关推荐

    DevExpress 甘特图Demo

    1. **任务和依赖关系**:甘特图可以显示各个任务及其相互依赖关系,帮助用户清晰地看到项目中的任务链和逻辑结构。 2. **时间轴定制**:允许自定义时间刻度,从小到分钟,大到年,以适应不同项目的需要。 3. **...

    甘特图,可以拖拽甘特图模块。

    甘特图是一种流行的时间管理工具,它以图形化的方式展示了项目计划和进度,通常用于工程管理、项目规划和任务调度。在IT行业中,甘特图是软件开发过程中的重要组成部分,尤其是在敏捷开发方法中,它可以帮助团队清晰...

    自动化甘特图日程表工具_甘特图excel_甘特图_甘特图vba_ExcelVBA_自动甘特图小工具_源码

    在项目管理中,甘特图是一种广泛应用的图表形式,用于直观展示任务的进度和时间安排。Excel VBA(Visual Basic for Applications)则提供了强大的编程能力,使我们能够自定义Excel功能,包括创建自动化的甘特图日程...

    Delphi甘特图,甘特图控件源码及应用..rar

    - 开发者还可以通过插件或组件扩展控件功能,如添加里程碑、任务依赖关系图或资源分配等高级特性。 5. **在项目管理中的应用**: - 甘特图在项目管理软件中扮演着重要角色,提供直观的进度视图,有助于识别延迟、...

    甘特图实现 HTML+CSS

    在项目管理和任务调度中,甘特图是一种非常实用的工具,它能够清晰地展示任务的时间线和进度,帮助我们更好地理解项目的整体流程和各个任务之间的关系。本教程将详细介绍如何使用HTML和CSS来创建一个基本的甘特图,...

    .net甘特图|网页甘特图asp.net版

    甘特图会用线段连接这些任务,以示关系。 4. **进度跟踪**:通过调整任务条的长度或颜色,可以实时显示任务的完成进度。 5. **资源分配**:可以标记每个任务所分配的资源,如人员或设备,帮助管理者优化资源分配。...

    工作计划进度甘特图16份打包.zip

    Excel自动甘特图模板.xlsx HR实施计划甘特图Excel模板.xls 个人计划甘特图Excel模板.xlsx 企业甘特图excel模板.xlsx 全自动甘特图excel模板.xlsx 客户投诉处理进度甘特图Excel模板.xlsx 工程施工时间进度表甘特图...

    各类excel甘特图模板

    甘特图是一种项目管理图表,通过条形图展示任务的开始和结束时间,以及任务之间的关系,帮助用户清晰地理解项目的进度和规划。下面将详细讨论如何使用Excel创建和应用甘特图模板。 1. **什么是甘特图**: 甘特图由...

    可直接使用的9套甘特图模板及教程

    1. 数据准确性:确保输入的任务开始和结束日期、持续时间以及依赖关系正确无误,这是甘特图有效性的基础。 2. 模板适用性:不同的项目可能需要不同类型的甘特图,选择最能反映项目特点和需求的模板。 3. 更新与维护...

    甘特图,用于项目计划等

    甘特图,用于项目计划等甘特图,用于项目计划等甘特图,用于项目计划等甘特图,用于项目计划等甘特图,用于项目计划等甘特图,用于项目计划等甘特图,用于项目计划等甘特图,用于项目计划等甘特图,用于项目计划等...

    C# 实现简单的甘特图控件

    由于控件的内容复杂性和功能的多样性,实际上创建一个功能完整的甘特图控件可能需要涉及更多的细节处理,例如通过图形界面与用户交互,进行任务节点的拖拽、调整,以及展示任务依赖关系等。但是,以上提及的概念和...

    Excel甘特图模板.zip

    Excel甘特图模板通常提供链接任务的功能,显示哪些任务必须在其他任务完成后才能开始。 6. **资源管理:** 高级的甘特图模板还可能包含资源分配信息,如人员、设备等,以便更有效地管理项目资源。 7. **时间刻度...

    C#甘特图实现

    在IT领域,甘特图是一种常用的项目管理工具,它通过条形图的形式展示项目的时间进度,使得任务的开始和结束日期、依赖关系等信息一目了然。在C#编程环境中,实现甘特图可以帮助开发者直观地跟踪和管理项目状态。下面...

    js实现前端甘特图.zip

    在前端开发中,甘特图是一种非常实用的图表类型,常用于项目管理、时间线展示以及任务进度跟踪。"js实现前端甘特图"是一个基于JavaScript(js)和DHTML技术实现的甘特图库,它能帮助开发者在网页上直观地呈现复杂的...

    jquery甘特图插件开源

    3. **功能全面**:一个优秀的甘特图插件应具备多种功能,如任务添加、删除、编辑,进度调整,依赖关系显示等。此插件可能包含这些特性,使项目管理更加直观和便捷。 4. **数据绑定**:插件通常支持从JSON或其他数据...

    项目进度图-甘特图(Gantt图)

    它通过条形图来显示项目、任务和活动的开始与结束时间,以及它们之间的依赖关系。在IT行业中,甘特图是项目管理的重要工具,尤其在软件开发、系统集成、工程实施等领域中广泛使用。 甘特图的核心元素包括: 1. **...

    VB甘特图控件

    甘特图是一种流行的时间线图表,它通过条形图来表示项目、任务或者工作流程的开始与结束时间,以及它们之间的相互依赖关系。这种图形化的表示方式使得管理者能够清晰地看到项目的整体进度和各个阶段的状态。 控件是...

    项目甘特图

    项目甘特图是一种在项目管理中广泛使用的工具,它通过图形化的方式清晰地展示项目进度、任务分配以及各个任务之间的关系。在IT行业中,尤其是在软件开发、系统集成或工程实施等项目密集型领域,甘特图是规划和监控...

    基于vue的甘特图,可上下拖拽

    在IT行业中,甘特图是一种常用的项目管理工具,它通过条形图来显示项目的时间进度,使得任务的开始和结束日期、持续时间等信息一目了然。在Web开发领域,利用前端框架如Vue.js来实现甘特图,可以极大地提升用户体验...

    PHP甘特图,含注释

    在IT行业中,甘特图是一种常用的项目管理工具,它通过条形图来表示项目的时间进度,使得团队成员能清晰地看到各个任务的开始和结束时间,以及任务间的依赖关系。在PHP开发中,创建甘特图可以让我们更直观地监控和...

Global site tag (gtag.js) - Google Analytics