shopizer-developers

Fixed search :-)

12/15/2016 4:05:32 PM

Details

diff --git a/shopizer-canadapost/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-canadapost-module/pom.properties b/shopizer-canadapost/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-canadapost-module/pom.properties
index e4b301b..14909bf 100644
--- a/shopizer-canadapost/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-canadapost-module/pom.properties
+++ b/shopizer-canadapost/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-canadapost-module/pom.properties
@@ -1,5 +1,5 @@
 #Generated by Maven Integration for Eclipse
-#Tue Dec 13 12:59:24 EST 2016
+#Thu Dec 15 12:41:36 EST 2016
 version=2.5.0-SNAPSHOT
 groupId=com.shopizer
 m2e.projectName=shopizer-canadapost
diff --git a/shopizer-shipping-distance-module/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-distance-processor/pom.properties b/shopizer-shipping-distance-module/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-distance-processor/pom.properties
index 3fc7c35..3929968 100644
--- a/shopizer-shipping-distance-module/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-distance-processor/pom.properties
+++ b/shopizer-shipping-distance-module/target/classes/META-INF/maven/com.shopizer/shopizer-shipping-distance-processor/pom.properties
@@ -1,5 +1,5 @@
 #Generated by Maven Integration for Eclipse
-#Tue Dec 13 12:23:26 EST 2016
+#Thu Dec 15 12:41:36 EST 2016
 version=2.5.0-SNAPSHOT
 groupId=com.shopizer
 m2e.projectName=shopizer-shipping-distance-processor
diff --git a/sm-search/target/classes/META-INF/maven/com.shopizer/sm-search/pom.properties b/sm-search/target/classes/META-INF/maven/com.shopizer/sm-search/pom.properties
index 5fe0c2b..bed57b3 100644
--- a/sm-search/target/classes/META-INF/maven/com.shopizer/sm-search/pom.properties
+++ b/sm-search/target/classes/META-INF/maven/com.shopizer/sm-search/pom.properties
@@ -1,5 +1,5 @@
 #Generated by Maven Integration for Eclipse
-#Wed Dec 14 12:06:42 EST 2016
+#Thu Dec 15 12:41:37 EST 2016
 version=2.5.0-SNAPSHOT
 groupId=com.shopizer
 m2e.projectName=sm-search
diff --git a/sm-shop/SALESMANAGER.h2.db b/sm-shop/SALESMANAGER.h2.db
index fef2b9c..308a6ee 100644
Binary files a/sm-shop/SALESMANAGER.h2.db and b/sm-shop/SALESMANAGER.h2.db differ
diff --git a/sm-shop/SALESMANAGER.lock.db b/sm-shop/SALESMANAGER.lock.db
index d7f832a..cdd9062 100644
--- a/sm-shop/SALESMANAGER.lock.db
+++ b/sm-shop/SALESMANAGER.lock.db
@@ -1,4 +1,4 @@
 #FileLock
-#Wed Dec 14 12:45:30 EST 2016
-id=158fe70653288f6998dd9dac22124d12030c61fff69
+#Thu Dec 15 13:01:22 EST 2016
+id=15903a5481dcdaa08772265a91993de19b3c3f01c99
 method=file
diff --git a/sm-shop/src/main/java/com/salesmanager/shop/store/controller/search/SearchController.java b/sm-shop/src/main/java/com/salesmanager/shop/store/controller/search/SearchController.java
index 37a50d9..6ba70b8 100644
--- a/sm-shop/src/main/java/com/salesmanager/shop/store/controller/search/SearchController.java
+++ b/sm-shop/src/main/java/com/salesmanager/shop/store/controller/search/SearchController.java
@@ -23,6 +23,7 @@ import com.salesmanager.shop.store.controller.ControllerConstants;
 import com.salesmanager.shop.store.model.search.AutoCompleteRequest;
 import com.salesmanager.shop.utils.ImageFilePath;
 import org.apache.commons.collections4.CollectionUtils;
+import org.apache.commons.io.IOUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Qualifier;
@@ -37,6 +38,8 @@ import org.springframework.web.bind.annotation.*;
 import javax.inject.Inject;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+
+import java.io.StringWriter;
 import java.util.*;
 
 @Controller
@@ -136,15 +139,21 @@ public class SearchController {
 	 * @return
 	 * @throws Exception
 	 */
-	@RequestMapping(value="/services/public/search/{store}/{language}/{start}/{max}/term.html", method=RequestMethod.POST)
+	@RequestMapping(value="/services/public/search/{store}/{language}/{start}/{max}/search.json", method=RequestMethod.POST)
 	@ResponseBody
-	public SearchProductList search(@RequestBody String json, @PathVariable String store, @PathVariable final String language, @PathVariable int start, @PathVariable int max, Model model, HttpServletRequest request, HttpServletResponse response) {
-	
+	//public SearchProductList search(@RequestBody String json, @PathVariable String store, @PathVariable final String language, @PathVariable int start, @PathVariable int max, Model model, HttpServletRequest request, HttpServletResponse response) {
+	public SearchProductList search(@PathVariable String store, @PathVariable final String language, @PathVariable int start, @PathVariable int max, Model model, HttpServletRequest request, HttpServletResponse response) {
 		SearchProductList returnList = new SearchProductList();
 		MerchantStore merchantStore = (MerchantStore)request.getAttribute(Constants.MERCHANT_STORE);
 		
+		String json = null;
+		
 		try {
 			
+			StringWriter writer = new StringWriter();
+			IOUtils.copy(request.getInputStream(), writer, "UTF-8");
+			json = writer.toString();
+			
 			Map<String,Language> langs = languageService.getLanguagesMap();
 			
 			if(merchantStore!=null) {
diff --git a/sm-shop/src/main/webapp/pages/shop/templates/bootstrap/pages/search.jsp b/sm-shop/src/main/webapp/pages/shop/templates/bootstrap/pages/search.jsp
index be590ad..b1b3476 100644
--- a/sm-shop/src/main/webapp/pages/shop/templates/bootstrap/pages/search.jsp
+++ b/sm-shop/src/main/webapp/pages/shop/templates/bootstrap/pages/search.jsp
@@ -34,7 +34,7 @@ response.setDateHeader ("Expires", -1);
  
  	function search() {
  		$('#productsContainer').showLoading();
- 		var url = '<%=request.getContextPath()%>/services/public/search/<c:out value="${requestScope.MERCHANT_STORE.code}"/>/<c:out value="${requestScope.LANGUAGE.code}"/>/' + START_COUNT_PRODUCTS + '/' + MAX_PRODUCTS + '/term.html';
+ 		var url = '<%=request.getContextPath()%>/services/public/search/<c:out value="${requestScope.MERCHANT_STORE.code}"/>/<c:out value="${requestScope.LANGUAGE.code}"/>/' + START_COUNT_PRODUCTS + '/' + MAX_PRODUCTS + '/search.json';
 	 	searchProducts(url,'#productsContainer','<c:out value="${q}"/>',null);
  	}
  
diff --git a/sm-shop/src/main/webapp/pages/shop/templates/bootstrap3/pages/search.jsp b/sm-shop/src/main/webapp/pages/shop/templates/bootstrap3/pages/search.jsp
index 932f136..d936b14 100644
--- a/sm-shop/src/main/webapp/pages/shop/templates/bootstrap3/pages/search.jsp
+++ b/sm-shop/src/main/webapp/pages/shop/templates/bootstrap3/pages/search.jsp
@@ -34,7 +34,7 @@ response.setDateHeader ("Expires", -1);
  
  	function search() {
  		$('#productsContainer').showLoading();
- 		var url = '<%=request.getContextPath()%>/services/public/search/<c:out value="${requestScope.MERCHANT_STORE.code}"/>/<c:out value="${requestScope.LANGUAGE.code}"/>/' + START_COUNT_PRODUCTS + '/' + MAX_PRODUCTS + '/term.html';
+ 		var url = '<%=request.getContextPath()%>/services/public/search/<c:out value="${requestScope.MERCHANT_STORE.code}"/>/<c:out value="${requestScope.LANGUAGE.code}"/>/' + START_COUNT_PRODUCTS + '/' + MAX_PRODUCTS + '/search.json';
 	 	searchProducts(url,'#productsContainer','<c:out value="${q}"/>',null);
  	}
  
diff --git a/sm-shop/src/main/webapp/pages/shop/templates/exoticamobilia/pages/search.jsp b/sm-shop/src/main/webapp/pages/shop/templates/exoticamobilia/pages/search.jsp
index 2286eef..d6f75fe 100644
--- a/sm-shop/src/main/webapp/pages/shop/templates/exoticamobilia/pages/search.jsp
+++ b/sm-shop/src/main/webapp/pages/shop/templates/exoticamobilia/pages/search.jsp
@@ -80,7 +80,7 @@ response.setDateHeader ("Expires", -1);
  	function search() {
  		//Invoke search service
  		$('#productsContainer').showLoading();
- 		var url = '<%=request.getContextPath()%>/services/public/search/<c:out value="${requestScope.MERCHANT_STORE.code}"/>/<c:out value="${requestScope.LANGUAGE.code}"/>/' + START_COUNT_PRODUCTS + '/' + MAX_PRODUCTS + '/term.html';
+ 		var url = '<%=request.getContextPath()%>/services/public/search/<c:out value="${requestScope.MERCHANT_STORE.code}"/>/<c:out value="${requestScope.LANGUAGE.code}"/>/' + START_COUNT_PRODUCTS + '/' + MAX_PRODUCTS + '/search.json';
 	 	searchProducts(url,'#productsContainer','<c:out value="${q}"/>',null);
  	}
  	
diff --git a/sm-shop/src/main/webapp/resources/js/shop-functions.js b/sm-shop/src/main/webapp/resources/js/shop-functions.js
index 21415a3..8daf74f 100644
--- a/sm-shop/src/main/webapp/resources/js/shop-functions.js
+++ b/sm-shop/src/main/webapp/resources/js/shop-functions.js
@@ -48,43 +48,39 @@ function loadProducts(url,divProductsContainer) {
 
 function searchProducts(url,divProductsContainer,q,filter) {
 	
-	log(q);
-	
-	
-	
+	//log(q);
+
 	if(q==null || q=='') {
 		return;
 	}
 
-    //category facets
-	var facets = '\"facets\" : { \"categories\" : { \"terms\" : {\"field\" : \"categories\"}}}';
+    //category aggregations
+	var aggregations = '\"aggregations\" : { \"categories\" : { \"terms\" : {\"field\" : \"categories\"}}}';
     var highlights = null;
 	var queryStart = '{';
 
-	//curl -XGET 'http://localhost:9200/product_en_default/_search' -d '{"query":{"multi_match":{"query": "buddha","fields": [ "name^3", "description", "tags" ]}},"facets" : { "categories" : { "terms" : {"field" : "categories"}}}}'
-	
-	//var query = '\"query\":{\"query_string\" : {\"fields\" : [\"name^3\", \"description\", \"tags\"], \"query\" : \"*' + q + '*", \"use_dis_max\" : true }}';
-	var query = '\"query\":{\"multi_match\" : {\"fields\" : [\"name^3\", \"description\", \"tags\"], \"query\" : \"*' + q + '*"}}';
+	var query = '\"query\":{\"query_string\" : {\"fields\" : [\"name^3\", \"description\", \"tags\"], \"query\" : \"' + q + '", \"use_dis_max\" : true }}';
 	if(filter!=null && filter!='') {
-		//query = '\"query\":{\"filtered\":{\"query\":{\"text\":{\"_all\":\"' + q + '\"}},' + filter + '}}';
 		query = query + ',' + filter + '}}';
 	}
 
-	if(facets!=null && facets!='') {
-		query = query + ',' + facets;
+	if(aggregations!=null && aggregations!='') {
+		query = query + ',' + aggregations;
 	}
 
 	var queryEnd = '}';
 	
 	query = queryStart + query + queryEnd;
+	
+	log(query);
 
 	$.ajax({
-  			cache: false,
+			cache: false,
   			type:"POST",
-  			//dataType:"json",
+  			dataType:"json",
   			url:url,
   			data:query,
-  			//contentType:"application/json;charset=UTF-8",
+  			contentType:"application/json;charset=UTF-8",
 			success: function(productList) {
 				callBackSearchProducts(productList);
 			},
diff --git a/sm-shop/target/m2e-wtp/web-resources/META-INF/maven/com.shopizer/sm-shop/pom.properties b/sm-shop/target/m2e-wtp/web-resources/META-INF/maven/com.shopizer/sm-shop/pom.properties
index b4d79ca..a57c13b 100644
--- a/sm-shop/target/m2e-wtp/web-resources/META-INF/maven/com.shopizer/sm-shop/pom.properties
+++ b/sm-shop/target/m2e-wtp/web-resources/META-INF/maven/com.shopizer/sm-shop/pom.properties
@@ -1,5 +1,5 @@
 #Generated by Maven Integration for Eclipse
-#Wed Dec 14 12:06:44 EST 2016
+#Thu Dec 15 13:00:52 EST 2016
 version=2.5.0-SNAPSHOT
 groupId=com.shopizer
 m2e.projectName=sm-shop