From a57c7520d6281273a41dcee845d668545fc38952 Mon Sep 17 00:00:00 2001 From: PaulLuchyn Date: Fri, 30 Dec 2016 11:46:50 +0200 Subject: [PATCH] Added javadoc Docs update, fixed ArithmeticException on dashboard page --- .../src/main/java/org/zkoss/ganttz/LeftTasksTree.java | 10 ++++++++++ .../main/java/org/zkoss/ganttz/data/TaskContainer.java | 5 ++++- .../libreplan/business/orders/entities/OrderLine.java | 4 ++++ .../business/orders/entities/OrderLineGroup.java | 4 ++-- .../libreplan/business/orders/entities/TaskSource.java | 2 ++ .../business/planner/entities/Dependency.java | 3 +-- .../business/planner/entities/PlanningData.java | 7 ++----- .../entities/TaskDeadlineViolationStatusEnum.java | 2 +- .../libreplan/business/planner/entities/TaskGroup.java | 3 +++ .../business/scenarios/entities/Scenario.java | 1 + .../org/libreplan/web/dashboard/DashboardModel.java | 6 ++++-- .../web/planner/taskedition/EditTaskController.java | 2 +- 12 files changed, 35 insertions(+), 14 deletions(-) diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java b/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java index 4b1989c1a..c4e3cc2d7 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/LeftTasksTree.java @@ -384,6 +384,16 @@ public class LeftTasksTree extends HtmlMacroComponent { fillModel(this.tasksTreeModel.getRoot(), 0, tasks, firstTime); } + /** + * This method is used to fill {@link LeftTasksTree} model. + * It is using recursive go-round to go over all tasks. + * For top-level tasks parent is null, for child tasks the parent is parent task. + * + * @param parent parent for current {@link Task} + * @param insertionPosition + * @param children child elements of a current {@link Task} + * @param firstTime + */ private void fillModel(Task parent, Integer insertionPosition, Collection children, diff --git a/ganttzk/src/main/java/org/zkoss/ganttz/data/TaskContainer.java b/ganttzk/src/main/java/org/zkoss/ganttz/data/TaskContainer.java index 1001312c3..7108958cd 100644 --- a/ganttzk/src/main/java/org/zkoss/ganttz/data/TaskContainer.java +++ b/ganttzk/src/main/java/org/zkoss/ganttz/data/TaskContainer.java @@ -32,7 +32,10 @@ import org.zkoss.zk.ui.util.Clients; /** * This class contains the information of a task container. It can be modified - * and notifies of the changes to the interested parties.
+ * and notifies of the changes to the interested parties. + * This class is used in {@link org.zkoss.ganttz.LeftTasksTree} as a container for tasks and is put + * as {@link org.zkoss.ganttz.util.MutableTreeModel} node. + * * @author Lorenzo Tilve Álvaro */ public class TaskContainer extends Task { diff --git a/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLine.java b/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLine.java index d4ec9fb23..12ab0813a 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLine.java +++ b/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLine.java @@ -43,6 +43,10 @@ import org.libreplan.business.planner.entities.DayAssignment.FilterType; import org.libreplan.business.requirements.entities.CriterionRequirement; import org.libreplan.business.templates.entities.OrderLineTemplate; +/** + * Used in WBS (Work Breakdown Structure). + * Represents every task without children. + */ public class OrderLine extends OrderElement { private HoursGroupOrderLineHandler hoursGroupOrderLineHandler = HoursGroupOrderLineHandler.getInstance(); diff --git a/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLineGroup.java b/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLineGroup.java index 383596caf..0da0094ca 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLineGroup.java +++ b/libreplan-business/src/main/java/org/libreplan/business/orders/entities/OrderLineGroup.java @@ -60,8 +60,8 @@ import org.libreplan.business.trees.ITreeParentNode; /** - * Represents every container in the WBS view. A task of the WBS that has some children. - *
+ * Represents every container in the WBS (Work Breakdown Structure) view. + * A task of the WBS that has some children. * The project itself is also an {@link OrderLineGroup}. * * @author Manuel Rego Casasnovas diff --git a/libreplan-business/src/main/java/org/libreplan/business/orders/entities/TaskSource.java b/libreplan-business/src/main/java/org/libreplan/business/orders/entities/TaskSource.java index a27b5c91b..f5d7e0e24 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/orders/entities/TaskSource.java +++ b/libreplan-business/src/main/java/org/libreplan/business/orders/entities/TaskSource.java @@ -41,6 +41,8 @@ import org.libreplan.business.util.deepcopy.OnCopy; import org.libreplan.business.util.deepcopy.Strategy; /** + * This class is kind of data source for {@link TaskElement} + * * @author Óscar González Fernández */ public class TaskSource extends BaseEntity { diff --git a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/Dependency.java b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/Dependency.java index 5cbd167c8..68efc89af 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/Dependency.java +++ b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/Dependency.java @@ -30,8 +30,7 @@ import org.libreplan.business.util.deepcopy.Strategy; import org.libreplan.business.util.deepcopy.OnCopy; /** - * Entity which represents an associated with properties - * between two @{link Task} + * Entity which represents an association with properties between two {@link Task} * * @author Óscar González Fernández * @author Javier Moran Rua diff --git a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/PlanningData.java b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/PlanningData.java index 6602ea10d..71bd2b1e1 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/PlanningData.java +++ b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/PlanningData.java @@ -33,13 +33,10 @@ import org.libreplan.business.planner.entities.DayAssignment.FilterType; import org.libreplan.business.workingday.EffortDuration; /** + * This is a class, directly associated with a {@link TaskGroup} with no parent element, + * which is used to store data about the whole scheduling. * * @author Diego Pino García - * - * This is a class, directly associated with a TaskGroup with no parent - * (TaskRoot element), which is used to store data about the whole - * scheduling - * */ public class PlanningData extends BaseEntity { diff --git a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskDeadlineViolationStatusEnum.java b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskDeadlineViolationStatusEnum.java index 79af1d5d4..30545df0c 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskDeadlineViolationStatusEnum.java +++ b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskDeadlineViolationStatusEnum.java @@ -22,7 +22,7 @@ package org.libreplan.business.planner.entities; import static org.libreplan.business.i18n.I18nHelper._; /** - * Enumerate of {@Link Task} deadline violation statuses. + * Enumerate of {@link Task} deadline violation statuses. * * NO_DEADLINE: Task has no deadline set. * DEADLINE_VIOLATED: Task didn't finish on time. diff --git a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskGroup.java b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskGroup.java index 6e006af5f..5588b8284 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskGroup.java +++ b/libreplan-business/src/main/java/org/libreplan/business/planner/entities/TaskGroup.java @@ -43,6 +43,9 @@ import org.libreplan.business.workingday.EffortDuration; import org.libreplan.business.workingday.IntraDayDate; /** + * Represents a parent task which can hold child tasks. + * The project itself is also an {@link TaskGroup}. + * * @author Óscar González Fernández * @author Javier Moran Rua * @author Manuel Rego Casasnovas diff --git a/libreplan-business/src/main/java/org/libreplan/business/scenarios/entities/Scenario.java b/libreplan-business/src/main/java/org/libreplan/business/scenarios/entities/Scenario.java index 33feb6f69..179d3d7b5 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/scenarios/entities/Scenario.java +++ b/libreplan-business/src/main/java/org/libreplan/business/scenarios/entities/Scenario.java @@ -46,6 +46,7 @@ import org.libreplan.business.scenarios.daos.IScenarioDAO; /** * Represents a scenario in the application. + * Scenario is like a context for each user that holds all his projects. * * @author Manuel Rego Casasnovas */ diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/dashboard/DashboardModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/dashboard/DashboardModel.java index c995c61bf..a146b7d0e 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/dashboard/DashboardModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/dashboard/DashboardModel.java @@ -217,8 +217,10 @@ public class DashboardModel implements IDashboardModel { BigDecimal outcome = new BigDecimal(deadlineOffset.getDays(), MathContext.DECIMAL32); - this.marginWithDeadLine = - outcome.divide(new BigDecimal(orderDuration.getDays()), 8, BigDecimal.ROUND_HALF_EVEN); + this.marginWithDeadLine = orderDuration.getDays()!= 0 + ? outcome.divide(new BigDecimal(orderDuration.getDays()), 8, BigDecimal.ROUND_HALF_EVEN) + : new BigDecimal( + Days.daysBetween(rootTask.getStartAsLocalDate(), deadLineAsLocalDate.plusDays(1)).getDays()); } @Override diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/planner/taskedition/EditTaskController.java b/libreplan-webapp/src/main/java/org/libreplan/web/planner/taskedition/EditTaskController.java index 848e488ce..13a7f6b4e 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/planner/taskedition/EditTaskController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/planner/taskedition/EditTaskController.java @@ -50,7 +50,7 @@ import org.zkoss.zul.Tabpanel; import org.zkoss.zul.Window; /** - * Controller for edit a {@link Task}. + * Controller for editing a {@link Task} on a project scheduling view. * * @author Manuel Rego Casasnovas */