diff --git a/navalplanner-business/src/main/java/org/navalplanner/business/workreports/daos/WorkReportLineDAO.java b/navalplanner-business/src/main/java/org/navalplanner/business/workreports/daos/WorkReportLineDAO.java index 7e0a2e454..da5f41405 100644 --- a/navalplanner-business/src/main/java/org/navalplanner/business/workreports/daos/WorkReportLineDAO.java +++ b/navalplanner-business/src/main/java/org/navalplanner/business/workreports/daos/WorkReportLineDAO.java @@ -68,7 +68,7 @@ public class WorkReportLineDAO extends IntegrationEntityDAO + "LEFT OUTER JOIN wrl.orderElement orderElement " + "WHERE orderElement = :orderElement " + "GROUP BY wrl.resource, wrl.typeOfWorkHours, wrl.date " - + "ORDER BY to_char(wrl.date, 'yyyy-mm-dd') , wrl.resource, wrl.typeOfWorkHours"; + + "ORDER BY wrl.resource, wrl.typeOfWorkHours, wrl.date"; // Set parameters Query query = getSession().createQuery(strQuery); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/AssignedHoursToOrderElementModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/AssignedHoursToOrderElementModel.java index f284437ae..6258cb7b3 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/AssignedHoursToOrderElementModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/orders/AssignedHoursToOrderElementModel.java @@ -23,6 +23,8 @@ package org.navalplanner.web.orders; import java.math.BigDecimal; import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; import java.util.Iterator; import java.util.List; @@ -86,6 +88,21 @@ public class AssignedHoursToOrderElementModel implements this.assignedDirectHours = this.assignedDirectHours + w.getSumHours(); } + return sortByDate(listWRL); + } + + private List sortByDate(List listWRL) { + Collections.sort(listWRL, new Comparator() { + public int compare(WorkReportLineDTO arg0, WorkReportLineDTO arg1) { + if (arg0.getDate() == null) { + return -1; + } + if (arg1.getDate() == null) { + return 1; + } + return arg0.getDate().compareTo(arg1.getDate()); + } + }); return listWRL; }