Просмотр исходного кода

调整根据型号关键字获取物料信息的问题。

yujia 7 лет назад
Родитель
Сommit
fbb04b2944

+ 1 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/constant/PublicProductUrl.java

@@ -7,5 +7,5 @@ package com.uas.platform.b2c.prod.commodity.constant;
  */
 public class PublicProductUrl {
 
-    public static final String PRODUCT_SEARCH_URL = "/product/get/searchProducts?page={page}&size={size}&keyword={keyword}&filters={filters}&keywordSearchColumns={keywordSearchColumns}";
+    public static final String PRODUCT_SEARCH_URL = "/product/get/searchProductIds?page={page}&size={size}&keyword={keyword}&filters={filters}&keywordSearchColumns={keywordSearchColumns}";
 }

+ 1 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/controller/ProductController.java

@@ -426,7 +426,7 @@ public class ProductController {
 	 * @param keyword
 	 * @return
 	 */
-	@RequestMapping(value = "/keyword", method = RequestMethod.GET)
+	@RequestMapping(value = "/code/keyword", method = RequestMethod.GET)
 	public List<Product> getProductsMatchCodeByKeyword(String keyword) {
 		return productService.getProductsMatchCodeByKeyword(keyword);
 	}

+ 9 - 9
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ProductServiceImpl.java

@@ -2510,23 +2510,23 @@ public class ProductServiceImpl implements ProductService {
         map.put("size", 10);
         map.put("keyword", keyword);
         Map<String, Object> filters = new HashedMap();
-            filters.put("pr_enuu", SystemSession.getUser().getEnterprise().getUu());
+        filters.put("pr_enuu", SystemSession.getUser().getEnterprise().getUu());
+        filters.put("pr_b2cenabled", 1);
         map.put("filters", FlexJsonUtils.toJson(filters));
         List<String> searchColumns = new ArrayList<>();
         searchColumns.add("pr_pcmpcode");
         map.put("keywordSearchColumns", FlexJsonUtils.toJson(searchColumns));
         String str = restTemplate.getForObject(sysConf.getProductServiceIp() + PublicProductUrl.PRODUCT_SEARCH_URL, String.class, map);
         if (org.apache.commons.lang.StringUtils.isNotEmpty(str)) {
-            SPage<Product> prodcuts =  (SPage)JSONObject.parseObject(str, new TypeReference<SPage<Product>>() {
+            SPage<Integer> page =  (SPage)JSONObject.parseObject(str, new TypeReference<SPage<Integer>>() {
             }, new Feature[0]);
-            JSONObject jsonObject = FlexJsonUtils.fromJson(str, JSONObject.class);
-            String content = jsonObject.getString("content");
-            if (org.apache.commons.lang.StringUtils.isNotEmpty(content)) {
-                String listTxt = JSONArray.toJSONString(content);
-                listTxt = listTxt.replaceAll(",", "");
-                List<Product> jsonArray = JSONArray.parseArray(listTxt, Product.class);
-                return jsonArray;
+            List<Integer> list = page.getContent();
+            List<Long> prids = new ArrayList<>();
+            for (Integer id : list) {
+                prids.add(Long.valueOf(id));
             }
+            List<Product> products = productDao.findProductInId(prids);
+            return products;
         }
         return new ArrayList<>();
     }