diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/orders/daos/OrderElementDAO.java b/navalplanner-business/src/main/java/org/navalplanner/business/orders/daos/OrderElementDAO.java index e8670a2b6..db8f5b731 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/orders/daos/OrderElementDAO.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/orders/daos/OrderElementDAO.java @@ -151,9 +151,12 @@ public class OrderElementDAO extends IntegrationEntityDAO @Override @Transactional(readOnly = true) public BigDecimal getHoursAdvancePercentage(OrderElement orderElement) { - final int totalChargedHours = orderElement.getSumChargedEffort() != null ? orderElement - .getSumChargedEffort().getTotalChargedHours() : 0; - BigDecimal assignedHours = new BigDecimal(totalChargedHours).setScale(2); + final EffortDuration totalChargedEffort = orderElement + .getSumChargedEffort() != null ? orderElement + .getSumChargedEffort().getTotalChargedEffort() : EffortDuration + .zero(); + BigDecimal assignedHours = totalChargedEffort + .toHoursAsDecimalWithScale(2); BigDecimal estimatedHours = new BigDecimal(orderElement.getWorkHours()) .setScale(2); diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/SumChargedEffort.java b/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/SumChargedEffort.java index 2ae70aff6..63c8b2ba3 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/SumChargedEffort.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/orders/entities/SumChargedEffort.java @@ -70,11 +70,4 @@ public class SumChargedEffort extends BaseEntity { return directChargedEffort.plus(indirectChargedEffort); } - /** - * @deprecated Use {@link SumChargedEffort#getTotalChargedEffort()} instead - */ - public Integer getTotalChargedHours() { - return getTotalChargedEffort().getHours(); - } - } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java index 80e3b5c22..058a56513 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/TaskElementAdapter.java @@ -474,15 +474,16 @@ public class TaskElementAdapter implements ITaskElementAdapter { public GanttDate getHoursAdvanceEndDate() { OrderElement orderElement = taskElement.getOrderElement(); - Integer assignedHours = 0; + EffortDuration assignedEffort = EffortDuration.zero(); if (orderElement.getSumChargedEffort() != null) { - assignedHours = orderElement.getSumChargedEffort() - .getTotalChargedHours(); + assignedEffort = orderElement.getSumChargedEffort() + .getTotalChargedEffort(); } GanttDate result = null; if(!(taskElement instanceof TaskGroup)) { - result = calculateLimitDate(assignedHours); + result = calculateLimitDate(assignedEffort + .toHoursAsDecimalWithScale(2)); } if (result == null) { Integer hours = taskElement.getSumOfHoursAllocated(); @@ -493,8 +494,9 @@ public class TaskElementAdapter implements ITaskElementAdapter { return getBeginDate(); } } - BigDecimal percentage = new BigDecimal(assignedHours) - .setScale(2).divide(new BigDecimal(hours), + BigDecimal percentage = assignedEffort + .toHoursAsDecimalWithScale(2).divide( + new BigDecimal(hours), RoundingMode.DOWN); result = calculateLimitDate(percentage); @@ -510,9 +512,12 @@ public class TaskElementAdapter implements ITaskElementAdapter { return BigDecimal.ZERO; } - int totalChargedHours = orderElement.getSumChargedEffort() != null ? orderElement - .getSumChargedEffort().getTotalChargedHours() : 0; - BigDecimal assignedHours = new BigDecimal(totalChargedHours).setScale(2); + EffortDuration totalChargedEffort = orderElement + .getSumChargedEffort() != null ? orderElement + .getSumChargedEffort().getTotalChargedEffort() + : EffortDuration.zero(); + BigDecimal assignedHours = totalChargedEffort + .toHoursAsDecimalWithScale(2); BigDecimal estimatedHours = new BigDecimal(taskElement.getSumOfHoursAllocated()) .setScale(2);