From dd6a31aae79b35ccf0e006704a4d9e1d950c57d6 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期六, 23 五月 2020 09:55:58 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java | 99 +++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 95 insertions(+), 4 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java index 1bc82f3..8762181 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java @@ -24,6 +24,9 @@ import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; import com.yeshi.fanli.dto.pdd.PDDGoodsResult; import com.yeshi.fanli.dto.pdd.PDDSearchFilter; +import com.yeshi.fanli.dto.vip.VIPSearchFilter; +import com.yeshi.fanli.dto.vip.VIPSearchResult; +import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo; import com.yeshi.fanli.entity.accept.AcceptData; import com.yeshi.fanli.entity.goods.CommonGoods; import com.yeshi.fanli.entity.jd.JDGoods; @@ -69,6 +72,7 @@ import com.yeshi.fanli.util.taobao.SearchFilterUtil; import com.yeshi.fanli.util.taobao.TaoBaoUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; +import com.yeshi.fanli.util.vipshop.VipShopApiUtil; import com.yeshi.fanli.vo.brand.BrandInfoVO; import com.yeshi.fanli.vo.brand.TaoBaoShopVO; import com.yeshi.fanli.vo.common.JumpDetailContentVO; @@ -139,7 +143,7 @@ @Resource private JumpDetailV2Service jumpDetailV2Service; - + @Resource private OrderHongBaoMoneyComputeService orderHongBaoMoneyComputeService; @@ -192,15 +196,13 @@ Gson gson = JsonUtil.getApiCommonGson(); data.put("title", "鏅鸿兘鎼滅储"); - - int state = 0; if (result.getFirstGoods() != null && result.getFirstGoods().getGoodsId() != null) { state = 2; data.put("stateDesc", "閫夋嫨鎼滃埜鎴栬浆閾�"); JSONObject params = new JSONObject(); - params.put("id", result.getFirstGoods().getGoodsId()+""); + params.put("id", result.getFirstGoods().getGoodsId() + ""); params.put("from", "杞摼"); if (result.getFirstGoods().getGoodsType() == Constant.SOURCE_TYPE_TAOBAO) { view = new JumpDetailContentVO(); @@ -499,8 +501,15 @@ return; } + /*-------- 鍞搧浼氬晢鍝� ------*/ + if (goodsType.intValue() == Constant.SOURCE_TYPE_VIP) { + searchVIPGoods(acceptData, searchkey, page, filter, order, out); + return; + } + /*-------- 娣樺疂鍟嗗搧 -------*/ searchTaoBaoGoods(acceptData, searchkey, page, filter, order, out); + } /** @@ -900,4 +909,86 @@ data.put("count", count); out.print(JsonUtil.loadTrueResult(data)); } + + /** + * 鎼滅储鍞搧浼氬晢鍝� + * @Title: searchVIPGoods + * @Description: + * @param acceptData + * @param key + * @param page + * @param filter + * @param order + * @param out + * void 杩斿洖绫诲瀷 + * @throws + */ + private void searchVIPGoods(AcceptData acceptData, String key, Integer page, String filter, Integer order, + PrintWriter out) { + VIPSearchFilter searchFilter = new VIPSearchFilter(); + searchFilter.setKeyword(key); + searchFilter.setPage(page); + searchFilter.setPageSize(Constant.PAGE_SIZE); + + if (order != null) { + int sort = order.intValue(); + switch (sort) { + case 2: // 浠锋牸鈥攄esc + searchFilter.setFieldName("price"); + searchFilter.setOrder(1); + break; + case 3: // 浠锋牸鈥攁sc + searchFilter.setFieldName("price"); + searchFilter.setOrder(0); + break; + case 4: // 鎶樻墸鈥攄esc + searchFilter.setFieldName("discount"); + searchFilter.setOrder(1); + break; + case 5: // 鎶樻墸鈥攁ec + searchFilter.setFieldName("discount"); + searchFilter.setOrder(0); + break; + default: // 缁煎悎鎺掑簭 + break; + } + } + + if (!StringUtil.isNullOrEmpty(filter)) { + JSONObject jsonfilter = JSONObject.fromObject(filter); + String minPrice = jsonfilter.optString("minPrice"); + if (!StringUtil.isNullOrEmpty(minPrice)) { + searchFilter.setPriceStart(minPrice); + } + + String maxPrice = jsonfilter.optString("maxPrice"); + if (!StringUtil.isNullOrEmpty(maxPrice)) { + searchFilter.setPriceEnd(maxPrice); + } + } + + int count = 0; + JSONObject data = new JSONObject(); + JSONArray array = new JSONArray(); + + VIPSearchResult result = VipShopApiUtil.search(searchFilter); + if (result != null) { + count = result.getTotal(); + Gson gson = JsonUtil.getApiCommonGson(); + List<VIPGoodsInfo> goodsList = result.getGoodsList(); + if (goodsList != null && goodsList.size() > 0) { + ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(), + acceptData.getVersion()); + + for (VIPGoodsInfo goods : goodsList) { + GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertVIPGoods(goods, paramsDTO); + array.add(gson.toJson(goodsDetailVO)); + } + } + } + + data.put("result", array); + data.put("count", count); + out.print(JsonUtil.loadTrueResult(data)); + } } -- Gitblit v1.8.0