From 6a6110ab7abc96affa6a94ea4390fd655331226e Mon Sep 17 00:00:00 2001 From: miciele Ghiorghis Date: Thu, 25 Apr 2013 13:05:13 +0200 Subject: [PATCH] filter-on-projectname: acceptFilerName method added to accept filter on part of projectname --- .../libreplan/web/orders/OrderPredicate.java | 21 +++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/orders/OrderPredicate.java b/libreplan-webapp/src/main/java/org/libreplan/web/orders/OrderPredicate.java index 47451d5d5..9f056fa46 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/orders/OrderPredicate.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/orders/OrderPredicate.java @@ -24,6 +24,7 @@ package org.libreplan.web.orders; import java.util.Date; import java.util.List; +import org.apache.commons.lang.StringUtils; import org.libreplan.business.externalcompanies.entities.ExternalCompany; import org.libreplan.business.labels.entities.Label; import org.libreplan.business.orders.entities.Order; @@ -51,13 +52,16 @@ public class OrderPredicate implements IPredicate { private Date finishDate; + private String name; + private Boolean includeOrderElements; public OrderPredicate(List filters, Date startDate, - Date finishDate, Boolean includeOrderElements) { + Date finishDate, Boolean includeOrderElements, String name) { this.filters = filters; this.startDate = startDate; this.finishDate = finishDate; + this.name = name; this.includeOrderElements = includeOrderElements; } @@ -71,7 +75,8 @@ public class OrderPredicate implements IPredicate { if (order == null) { return false; } - if (acceptFilters(order) && acceptFiltersDates(order)) { + if (acceptFilters(order) && acceptFiltersDates(order) + && acceptFilterName(order)) { return true; } return false; @@ -233,4 +238,16 @@ public class OrderPredicate implements IPredicate { } return false; } + + private boolean acceptFilterName(Order order) { + if (name == null) { + return true; + } + if ((order.getName() != null) + && (StringUtils.containsIgnoreCase(order.getName(), name))) { + return true; + } + return false; + } + }