diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/CompanyPlanningModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/CompanyPlanningModel.java index daf952f8c..93f03db7b 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/CompanyPlanningModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/CompanyPlanningModel.java @@ -285,7 +285,7 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { if (loadChartFiller.zoomByDay()) { return map; } else { - return groupByWeek(map); + return loadChartFiller.groupByWeek(map); } } @@ -314,31 +314,10 @@ public abstract class CompanyPlanningModel implements ICompanyPlanningModel { if (loadChartFiller.zoomByDay()) { return map; } else { - return groupByWeek(map); + return loadChartFiller.groupByWeek(map); } } - private SortedMap groupByWeek( - SortedMap map) { - SortedMap result = new TreeMap(); - - for (LocalDate day : map.keySet()) { - LocalDate key = loadChartFiller.getThursdayOfThisWeek(day); - - if (result.get(key) == null) { - result.put(key, map.get(day)); - } else { - result.put(key, result.get(key) + map.get(day)); - } - } - - for (LocalDate day : result.keySet()) { - result.put(day, result.get(day) / 7); - } - - return result; - } - private org.zkoss.zk.ui.Component getChartLegend() { Div div = new Div(); diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/ILoadChartFiller.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/ILoadChartFiller.java index 865de2a0b..e50fb4158 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/ILoadChartFiller.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/ILoadChartFiller.java @@ -48,6 +48,6 @@ public interface ILoadChartFiller { boolean zoomByDay(); - LocalDate getThursdayOfThisWeek(LocalDate date); + SortedMap groupByWeek(SortedMap map); } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/LoadChartFiller.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/LoadChartFiller.java index 9782d7253..673b0a7ca 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/LoadChartFiller.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/LoadChartFiller.java @@ -25,6 +25,7 @@ import java.io.PrintWriter; import java.util.Collections; import java.util.Date; import java.util.SortedMap; +import java.util.TreeMap; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -122,8 +123,7 @@ public abstract class LoadChartFiller implements ILoadChartFiller { } } - @Override - public LocalDate getThursdayOfThisWeek(LocalDate date) { + private LocalDate getThursdayOfThisWeek(LocalDate date) { return date.dayOfWeek().withMinimumValue().plusDays(DAYS_TO_THURSDAY); } @@ -185,4 +185,26 @@ public abstract class LoadChartFiller implements ILoadChartFiller { return maximunValueForChart; } + @Override + public SortedMap groupByWeek( + SortedMap map) { + SortedMap result = new TreeMap(); + + for (LocalDate day : map.keySet()) { + LocalDate key = getThursdayOfThisWeek(day); + + if (result.get(key) == null) { + result.put(key, map.get(day)); + } else { + result.put(key, result.get(key) + map.get(day)); + } + } + + for (LocalDate day : result.keySet()) { + result.put(day, result.get(day) / 7); + } + + return result; + } + } diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/OrderPlanningModel.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/OrderPlanningModel.java index 3b910f7fd..442fd69ce 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/OrderPlanningModel.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/planner/OrderPlanningModel.java @@ -420,31 +420,10 @@ public abstract class OrderPlanningModel implements IOrderPlanningModel { if (loadChartFiller.zoomByDay()) { return map; } else { - return groupByWeek(map); + return loadChartFiller.groupByWeek(map); } } - private SortedMap groupByWeek( - SortedMap map) { - SortedMap result = new TreeMap(); - - for (LocalDate day : map.keySet()) { - LocalDate key = loadChartFiller.getThursdayOfThisWeek(day); - - if (result.get(key) == null) { - result.put(key, map.get(day)); - } else { - result.put(key, result.get(key) + map.get(day)); - } - } - - for (LocalDate day : result.keySet()) { - result.put(day, result.get(day) / 7); - } - - return result; - } - private org.zkoss.zk.ui.Component getChartLegend() { Div div = new Div();