MIFOSX-2038

This commit is contained in:
keshav10
2015-08-27 14:42:33 +05:30
committed by pramod
parent 2d9fc6dca4
commit 80f122446a
3 changed files with 15 additions and 7 deletions
@@ -42,7 +42,7 @@ public class SearchConstants {
} }
public static enum SEARCH_SUPPORTED_PARAMETERS { public static enum SEARCH_SUPPORTED_PARAMETERS {
QUERY("query"), RESOURCE("resource"); QUERY("query"), RESOURCE("resource"),EXACTMATCH("exactMatch");
private final String value; private final String value;
@@ -72,9 +72,12 @@ public class SearchApiResource {
@Consumes({ MediaType.APPLICATION_JSON }) @Consumes({ MediaType.APPLICATION_JSON })
@Produces({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON })
public String searchData(@Context final UriInfo uriInfo, @QueryParam("query") final String query, public String searchData(@Context final UriInfo uriInfo, @QueryParam("query") final String query,
@QueryParam("resource") final String resource) { @QueryParam("resource") final String resource ,@QueryParam("exactMatch") Boolean exactMatch) {
final SearchConditions searchConditions = new SearchConditions(query, resource); if (exactMatch == null) {
exactMatch = false;
}
final SearchConditions searchConditions = new SearchConditions(query, resource,exactMatch);
final Collection<SearchData> searchResults = this.searchReadPlatformService.retriveMatchingData(searchConditions); final Collection<SearchData> searchResults = this.searchReadPlatformService.retriveMatchingData(searchConditions);
@@ -16,10 +16,12 @@ public class SearchConditions {
private final Boolean loanSeach; private final Boolean loanSeach;
private final Boolean savingSeach; private final Boolean savingSeach;
private final Boolean clientIdentifierSearch; private final Boolean clientIdentifierSearch;
private Boolean exactMatch;
public SearchConditions(final String searchQueryParam, final String searchResource) { public SearchConditions(final String searchQueryParam, final String searchResource, Boolean exactMatch) {
this.searchQuery = searchQueryParam; this.searchQuery = searchQueryParam;
this.searchResource = searchResource; this.searchResource = searchResource;
this.exactMatch=exactMatch;
this.clientSearch = (null == searchResource || searchResource.toLowerCase().contains( this.clientSearch = (null == searchResource || searchResource.toLowerCase().contains(
SEARCH_SUPPORTED_RESOURCES.CLIENTS.name().toLowerCase())) ? true : false; SEARCH_SUPPORTED_RESOURCES.CLIENTS.name().toLowerCase())) ? true : false;
this.groupSearch = (null == searchResource || searchResource.toLowerCase().contains( this.groupSearch = (null == searchResource || searchResource.toLowerCase().contains(
@@ -33,7 +35,7 @@ public class SearchConditions {
} }
public SearchConditions(final String searchQueryParam, final String searchResource, final Boolean clientSearch, public SearchConditions(final String searchQueryParam, final String searchResource, final Boolean clientSearch,
final Boolean groupSearch, final Boolean loanSeach, final Boolean savingSeach, final Boolean clientIdentifierSearch) { final Boolean groupSearch, final Boolean loanSeach, final Boolean savingSeach, final Boolean clientIdentifierSearch, Boolean exactMatch) {
this.searchQuery = searchQueryParam; this.searchQuery = searchQueryParam;
this.searchResource = searchResource; this.searchResource = searchResource;
this.clientSearch = clientSearch; this.clientSearch = clientSearch;
@@ -41,6 +43,7 @@ public class SearchConditions {
this.loanSeach = loanSeach; this.loanSeach = loanSeach;
this.savingSeach = savingSeach; this.savingSeach = savingSeach;
this.clientIdentifierSearch = clientIdentifierSearch; this.clientIdentifierSearch = clientIdentifierSearch;
this.exactMatch=exactMatch;
} }
public String getSearchQuery() { public String getSearchQuery() {
@@ -50,7 +53,9 @@ public class SearchConditions {
public String getSearchResource() { public String getSearchResource() {
return this.searchResource; return this.searchResource;
} }
public Boolean getExactMatch() {
return this.exactMatch;
}
public Boolean isClientSearch() { public Boolean isClientSearch() {
return this.clientSearch; return this.clientSearch;
} }