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

增加手机端搜索物料的接口.

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

+ 5 - 0
src/main/java/com/uas/platform/b2c/common/search/constant/SearchUrl.java

@@ -17,6 +17,11 @@ public class SearchUrl {
      */
     public static final String PRODUCT_ID_URL = "/search/productIds?enUU={enUU}&keyword={keyword}&page={page}&size={size}&type={type}";
 
+    /**
+     * 获取企业物料
+     */
+    public static final String PRODUCT_ID_NENUU_URL = "/search/productIds?keyword={keyword}&page={page}&size={size}";
+
     /**
      * 标准型号联想(物料)
      */

+ 13 - 4
src/main/java/com/uas/platform/b2c/common/search/rpc/service/Impl/SearchServiceImpl.java

@@ -77,10 +77,19 @@ public class SearchServiceImpl implements SearchService{
     @Override
     public SPage<Long> getProducts(Long enUU, String keyword, Integer page, Integer size, String type) throws SearchException {
         Map<String, Object> map = initSearchMap(keyword, page, size);
-        map.put("enUU", enUU);
-        // standard 标准  nStandard 非标 其他为所有
-        map.put("type", type);
-        String str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.PRODUCT_ID_URL, String.class, map);
+        if (enUU != null) {
+            map.put("enUU", enUU);
+        }
+        if (!StringUtils.isEmpty(type)) {
+            // standard 标准  nStandard 非标 其他为所有
+            map.put("type", type);
+        }
+        String str = "";
+        if (enUU == null) {
+            str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.PRODUCT_ID_NENUU_URL, String.class, map);
+        } else {
+            str = restTemplate.getForObject(sysConf.getSearchUrl() + SearchUrl.PRODUCT_ID_URL, String.class, map);
+        }
         if(StringUtils.isEmpty(str)) {
             return null;
         } else {

+ 0 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/api/GoodsController.java

@@ -38,5 +38,4 @@ public class GoodsController {
     public Page<Goods> findProducts(PageParams pageParams, @RequestParam(value = "branduuid", required = true) String branduuid, @RequestParam(value = "kindid", required = false) String kindid, @RequestParam(value = "keyword", required = false) String keyword) {
         return goodsService.findGoods(pageParams, branduuid, kindid, keyword);
     }
-
 }

+ 38 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/api/ProductController.java

@@ -0,0 +1,38 @@
+package com.uas.platform.b2c.prod.commodity.api;
+
+import com.uas.platform.b2c.prod.commodity.model.V_ProductPrivate;
+import com.uas.platform.b2c.prod.commodity.service.ProductService;
+import com.uas.platform.core.model.PageParams;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * 通过搜索获取物料接口
+ *
+ * @author yuj 2018-07-25 16:52
+ */
+@RestController("APIProductController")
+@RequestMapping("/api/product/search")
+public class ProductController {
+
+    private final ProductService productService;
+
+    @Autowired
+    public ProductController(ProductService productService) {
+        this.productService = productService;
+    }
+
+    /**
+     * 分页获取器件信息
+     * @param params 分页信息
+     * @param keyword 搜索关键字
+     * @return
+     */
+    @RequestMapping(value = "/page", method = RequestMethod.GET)
+    public Page<V_ProductPrivate> getPageProducts(PageParams params, String keyword) {
+        return productService.getPageProducts(params, keyword);
+    }
+}

+ 9 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/service/ProductService.java

@@ -6,6 +6,7 @@ import com.uas.platform.b2c.prod.product.component.modal.Component;
 import com.uas.platform.b2c.trade.order.model.Purchase;
 import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.model.PageInfo;
+import com.uas.platform.core.model.PageParams;
 import org.springframework.data.domain.Page;
 
 import java.util.List;
@@ -306,4 +307,12 @@ public interface ProductService {
      * @return ResultMap
      */
     ResultMap updateProductByComponent(Component component);
+
+    /**
+     * 分页获取器件信息
+     * @param params 分页信息
+     * @param keyword 搜索关键字
+     * @return
+     */
+    Page<V_ProductPrivate> getPageProducts(PageParams params, String keyword);
 }

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

@@ -55,6 +55,7 @@ import com.uas.platform.b2c.trade.support.ResultMap;
 import com.uas.platform.core.exception.IllegalOperatorException;
 import com.uas.platform.core.model.Constant;
 import com.uas.platform.core.model.PageInfo;
+import com.uas.platform.core.model.PageParams;
 import com.uas.platform.core.model.Type;
 import com.uas.platform.core.persistence.criteria.LogicalExpression;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
@@ -2177,5 +2178,24 @@ public class ProductServiceImpl implements ProductService {
             }
         }
     }
+
+    /**
+     * 分页获取器件信息
+     *
+     * @param params  分页信息
+     * @param keyword 搜索关键字
+     * @return
+     */
+    @Override
+    public Page<V_ProductPrivate> getPageProducts(PageParams params, String keyword) {
+        SPage<Long> ids = searchService.getProducts(null, keyword, params.getPage(), params.getCount(), null);
+        PageInfo info = new PageInfo(params);
+        if (null == ids) {
+            return new PageImpl<V_ProductPrivate>(Collections.emptyList(), info, 0);
+        }
+        List<Long> idList = ids.getContent();
+        List<V_ProductPrivate> productList = v_productPrivateDao.findAll(idList);
+        return new PageImpl<V_ProductPrivate>(productList, info, ids.getTotalElement());
+    }
 }