ItEr51S04ValidacionEProbasFuncionaisItEr50S04 : [Bug #394] Fixing Bug.
Makes the filter to lowercase and delete its white spaces for the searches.
This commit is contained in:
parent
f038f69819
commit
cacfec4bbc
5 changed files with 69 additions and 28 deletions
|
|
@ -33,12 +33,22 @@ public interface IMultipleFiltersFinder {
|
|||
|
||||
void init();
|
||||
|
||||
/**
|
||||
* Return the FilterPair list match with filter.
|
||||
* @param filter
|
||||
* @return List<FilterPair>
|
||||
*/
|
||||
List<FilterPair> getMatching(String filter);
|
||||
|
||||
List<FilterPair> getFirstTenFilters();
|
||||
|
||||
String objectToString(Object obj);
|
||||
|
||||
/**
|
||||
* Return the new filter that is lower case and without white spaces.
|
||||
* @param inputText
|
||||
* @return
|
||||
*/
|
||||
String getNewFilterText(String inputText);
|
||||
|
||||
boolean isValidNewFilter(Object obj);
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ import static org.navalplanner.web.I18nHelper._;
|
|||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.navalplanner.business.common.IAdHocTransactionService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.zkoss.zul.Listcell;
|
||||
|
|
@ -72,11 +73,8 @@ public abstract class MultipleFiltersFinder implements IMultipleFiltersFinder {
|
|||
}
|
||||
|
||||
public String getNewFilterText(String inputText) {
|
||||
String newFilterText = new String("");
|
||||
String[] filtersText = inputText.split(",");
|
||||
newFilterText = getLastText(filtersText);
|
||||
newFilterText = newFilterText.replace(" ", "");
|
||||
newFilterText = newFilterText.trim();
|
||||
String newFilterText = getLastText(filtersText);
|
||||
return newFilterText;
|
||||
}
|
||||
|
||||
|
|
@ -85,7 +83,7 @@ public abstract class MultipleFiltersFinder implements IMultipleFiltersFinder {
|
|||
if (texts.length > 0) {
|
||||
return texts[last];
|
||||
} else {
|
||||
return "";
|
||||
return new String("");
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -103,7 +101,7 @@ public abstract class MultipleFiltersFinder implements IMultipleFiltersFinder {
|
|||
}
|
||||
|
||||
filterValues = updateDeletedFilters(filterValues, value);
|
||||
value = value.replace(" ", "");
|
||||
value = StringUtils.deleteWhitespace(value);
|
||||
String[] values = value.split(",");
|
||||
if (values.length != filterValues.size()) {
|
||||
return false;
|
||||
|
|
@ -142,7 +140,7 @@ public abstract class MultipleFiltersFinder implements IMultipleFiltersFinder {
|
|||
private boolean isFilterAdded(String[] values, String filter) {
|
||||
for (int i = 0; i < values.length; i++) {
|
||||
String value = values[i].replace(" ", "");
|
||||
filter = filter.replace(" ", "");
|
||||
filter = StringUtils.deleteWhitespace(filter);
|
||||
|
||||
if (filter.equals(value)) {
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@ import java.util.Iterator;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.navalplanner.business.common.IOnTransaction;
|
||||
import org.navalplanner.business.labels.daos.ILabelDAO;
|
||||
import org.navalplanner.business.labels.daos.ILabelTypeDAO;
|
||||
|
|
@ -151,7 +152,7 @@ public class OrderElementsMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
public List<FilterPair> getMatching(String filter) {
|
||||
getListMatching().clear();
|
||||
if ((filter != null) && (!filter.isEmpty())) {
|
||||
filter = filter.toLowerCase();
|
||||
filter = StringUtils.deleteWhitespace(filter.toLowerCase());
|
||||
searchInCriterionTypes(filter);
|
||||
searchInLabelTypes(filter);
|
||||
}
|
||||
|
|
@ -163,7 +164,9 @@ public class OrderElementsMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
private void searchInCriterionTypes(String filter) {
|
||||
boolean limited = (filter.length() < 3);
|
||||
for (CriterionType type : mapCriterions.keySet()) {
|
||||
if (type.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(type.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
setFilterPairCriterionType(type, limited);
|
||||
} else {
|
||||
searchInCriterions(type, filter);
|
||||
|
|
@ -173,7 +176,9 @@ public class OrderElementsMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInCriterions(CriterionType type, String filter) {
|
||||
for (Criterion criterion : mapCriterions.get(type)) {
|
||||
if (criterion.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(criterion.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
addCriterion(type, criterion);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
@ -194,7 +199,9 @@ public class OrderElementsMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
private void searchInLabelTypes(String filter) {
|
||||
boolean limited = (filter.length() < 3);
|
||||
for (LabelType type : mapLabels.keySet()) {
|
||||
if (type.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(type.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
setFilterPairLabelType(type, limited);
|
||||
} else {
|
||||
searchInLabels(type, filter);
|
||||
|
|
@ -204,7 +211,9 @@ public class OrderElementsMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInLabels(LabelType type, String filter) {
|
||||
for (Label label : mapLabels.get(type)) {
|
||||
if (label.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(label.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
addLabel(type, label);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@ import java.util.Iterator;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.navalplanner.business.common.IOnTransaction;
|
||||
import org.navalplanner.business.externalcompanies.daos.IExternalCompanyDAO;
|
||||
import org.navalplanner.business.externalcompanies.entities.ExternalCompany;
|
||||
|
|
@ -235,7 +236,9 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
public List<FilterPair> getMatching(String filter) {
|
||||
getListMatching().clear();
|
||||
if ((filter != null) && (!filter.isEmpty())) {
|
||||
filter = filter.toLowerCase();
|
||||
|
||||
filter = StringUtils.deleteWhitespace(filter.toLowerCase());
|
||||
|
||||
if (filter.indexOf("rc:") == 0) {
|
||||
searchInCustomerReferences(filter);
|
||||
} else if (filter.indexOf("cod:") == 0) {
|
||||
|
|
@ -255,7 +258,9 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
private void searchInCriterionTypes(String filter) {
|
||||
boolean limited = (filter.length() < 3);
|
||||
for (CriterionType type : mapCriterions.keySet()) {
|
||||
if (type.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(type.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
setFilterPairCriterionType(type, limited);
|
||||
} else {
|
||||
searchInCriterions(type, filter);
|
||||
|
|
@ -265,7 +270,9 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInCriterions(CriterionType type, String filter) {
|
||||
for (Criterion criterion : mapCriterions.get(type)) {
|
||||
if (criterion.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(criterion.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
addCriterion(type, criterion);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
@ -286,7 +293,9 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
private void searchInLabelTypes(String filter) {
|
||||
boolean limited = (filter.length() < 3);
|
||||
for (LabelType type : mapLabels.keySet()) {
|
||||
if (type.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(type.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
setFilterPairLabelType(type, limited);
|
||||
} else {
|
||||
searchInLabels(type, filter);
|
||||
|
|
@ -296,7 +305,9 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInLabels(LabelType type, String filter) {
|
||||
for (Label label : mapLabels.get(type)) {
|
||||
if (label.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(label.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
addLabel(type, label);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
@ -316,8 +327,11 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInExternalCompanies(String filter){
|
||||
for(ExternalCompany externalCompany : externalCompanies){
|
||||
if ((externalCompany.getName().toLowerCase().contains(filter))
|
||||
|| (externalCompany.getNif().toLowerCase().contains(filter))) {
|
||||
String name = StringUtils.deleteWhitespace(externalCompany
|
||||
.getName().toLowerCase());
|
||||
String nif = StringUtils.deleteWhitespace(externalCompany.getNif()
|
||||
.toLowerCase());
|
||||
if ((name.contains(filter)) || (nif.contains(filter))) {
|
||||
addExternalCompany(externalCompany);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
@ -328,7 +342,9 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInOrderStatus(String filter) {
|
||||
for (OrderStatusEnum state : ordersStatusEnums) {
|
||||
if (state.name().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(state.name()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
addState(state);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
@ -340,9 +356,9 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
private void searchInOrderCodes(String filter) {
|
||||
if (filter.indexOf("cod:") == 0) {
|
||||
String codeFilter = filter.replaceFirst("cod:", "");
|
||||
codeFilter = codeFilter.replace(" ", "");
|
||||
for (String code : ordersCodes) {
|
||||
if (code.toLowerCase().equals(codeFilter)) {
|
||||
code = StringUtils.deleteWhitespace(code.toLowerCase());
|
||||
if (code.equals(codeFilter)) {
|
||||
addCode(code);
|
||||
return;
|
||||
}
|
||||
|
|
@ -353,9 +369,10 @@ public class OrdersMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
private void searchInCustomerReferences(String filter) {
|
||||
if (filter.indexOf("rc:") == 0) {
|
||||
String referenceFilter = filter.replaceFirst("rc:", "");
|
||||
referenceFilter = referenceFilter.replace(" ", "");
|
||||
for (String reference : customerReferences) {
|
||||
if (reference.toLowerCase().equals(referenceFilter)) {
|
||||
reference = StringUtils.deleteWhitespace(reference
|
||||
.toLowerCase());
|
||||
if (reference.equals(referenceFilter)) {
|
||||
addCustomerReference(reference);
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,6 +26,7 @@ import java.util.Iterator;
|
|||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.navalplanner.business.common.IOnTransaction;
|
||||
import org.navalplanner.business.costcategories.daos.ICostCategoryDAO;
|
||||
import org.navalplanner.business.costcategories.entities.CostCategory;
|
||||
|
|
@ -131,7 +132,7 @@ public class ResourcesMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
public List<FilterPair> getMatching(String filter) {
|
||||
getListMatching().clear();
|
||||
if ((filter != null) && (!filter.isEmpty())) {
|
||||
filter = filter.toLowerCase();
|
||||
filter = StringUtils.deleteWhitespace(filter.toLowerCase());
|
||||
searchInCriterionTypes(filter);
|
||||
searchInCostCategories(filter);
|
||||
}
|
||||
|
|
@ -142,7 +143,9 @@ public class ResourcesMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
private void searchInCriterionTypes(String filter) {
|
||||
boolean limited = (filter.length() < 3);
|
||||
for (CriterionType type : mapCriterions.keySet()) {
|
||||
if (type.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(type.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
setFilterPairCriterionType(type, limited);
|
||||
} else {
|
||||
searchInCriterions(type, filter);
|
||||
|
|
@ -152,7 +155,9 @@ public class ResourcesMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInCriterions(CriterionType type, String filter) {
|
||||
for (Criterion criterion : mapCriterions.get(type)) {
|
||||
if (criterion.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(criterion.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
addCriterion(type, criterion);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
@ -172,7 +177,9 @@ public class ResourcesMultipleFiltersFinder extends MultipleFiltersFinder {
|
|||
|
||||
private void searchInCostCategories(String filter) {
|
||||
for (CostCategory costCategory : costCategories) {
|
||||
if (costCategory.getName().toLowerCase().contains(filter)) {
|
||||
String name = StringUtils.deleteWhitespace(costCategory.getName()
|
||||
.toLowerCase());
|
||||
if (name.contains(filter)) {
|
||||
addCostCategory(costCategory);
|
||||
if ((filter.length() < 3) && (getListMatching().size() > 9)) {
|
||||
return;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue