From 554de444b87aab5f93cb1593a8095612cf9479a7 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期二, 09 六月 2020 17:34:30 +0800
Subject: [PATCH] 订单

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java |  121 ++++++++++++++++++++++++++++++++++++++-
 1 files changed, 116 insertions(+), 5 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 8762181..c8fde66 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.suning.SuningCommodityInfo;
+import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
+import com.yeshi.fanli.dto.suning.SuningQueryModel;
 import com.yeshi.fanli.dto.vip.VIPSearchFilter;
 import com.yeshi.fanli.dto.vip.VIPSearchResult;
 import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
@@ -69,6 +72,7 @@
 import com.yeshi.fanli.util.jd.JDUtil;
 import com.yeshi.fanli.util.pinduoduo.PinDuoDuoApiUtil;
 import com.yeshi.fanli.util.pinduoduo.PinDuoDuoUtil;
+import com.yeshi.fanli.util.suning.SuningApiUtil;
 import com.yeshi.fanli.util.taobao.SearchFilterUtil;
 import com.yeshi.fanli.util.taobao.TaoBaoUtil;
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
@@ -431,7 +435,7 @@
 	public void searchGoods(AcceptData acceptData, Integer goodsType, String key, Integer page, String filter,
 			Integer order, Long uid, HttpSession session, PrintWriter out) {
 
-		if (goodsType == null || goodsType < 1 || goodsType > 3) {
+		if (goodsType == null || goodsType < 1 || goodsType > 5) {
 			out.print(JsonUtil.loadFalseResult(1, "璇蜂紶閫掓纭钩鍙板弬鏁�"));
 			return;
 		}
@@ -504,6 +508,12 @@
 		/*-------- 鍞搧浼氬晢鍝� ------*/
 		if (goodsType.intValue() == Constant.SOURCE_TYPE_VIP) {
 			searchVIPGoods(acceptData, searchkey, page, filter, order, out);
+			return;
+		}
+
+		/*-------- 鑻忓畞鍟嗗搧 ------*/
+		if (goodsType.intValue() == Constant.SOURCE_TYPE_SUNING) {
+			searchSuningGoods(acceptData, searchkey, page, filter, order, out);
 			return;
 		}
 
@@ -941,10 +951,6 @@
 				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);
@@ -991,4 +997,109 @@
 		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 searchSuningGoods(AcceptData acceptData, String key, Integer page, String filter, Integer order,
+			PrintWriter out) {
+		SuningQueryModel searchFilter = new SuningQueryModel();
+		searchFilter.setKeyword(key);
+		searchFilter.setPageIndex(page);
+		searchFilter.setSize(10);
+
+		if (order != null) {
+			if (order == 1) { // 閿�閲忛珮鍒颁綆
+				searchFilter.setSortType(2);
+			} else if (order == 2) { // 浠锋牸楂樺埌浣�
+				searchFilter.setSortType(3);
+			} else if (order == 3) { // 浠锋牸浣庡埌楂�
+				searchFilter.setSortType(4);
+			} else if (order == 4) { // 杩斿埄姣旈珮鍒颁綆
+				searchFilter.setSortType(5);
+			}
+		}
+
+		if (!StringUtil.isNullOrEmpty(filter)) {
+			JSONObject jsonfilter = JSONObject.fromObject(filter);
+			Boolean coupon = jsonfilter.optBoolean("coupon");
+			if (coupon != null && coupon) {
+				searchFilter.setCoupon(1); // 鏈夊埜
+			}
+
+			Boolean snfwservice = jsonfilter.optBoolean("snfwservice");// 鑻忓畞鏈嶅姟
+			if (snfwservice != null && snfwservice) {
+				searchFilter.setSnfwservice(1);
+			}
+
+			Boolean snhwg = jsonfilter.optBoolean("snhwg");// 鑻忓畞鍥介檯
+			if (snhwg != null && snhwg) {
+				searchFilter.setSnhwg(1);
+			}
+
+			Boolean suningService = jsonfilter.optBoolean("suningService");// 鑻忓畞鑷惀
+			if (suningService != null && suningService) {
+				searchFilter.setSuningService(1);
+			}
+
+			Boolean pgSearch = jsonfilter.optBoolean("pgSearch");// 鎷艰喘
+			if (pgSearch != null && pgSearch) {
+				searchFilter.setPgSearch(1);
+			}
+
+			String minPrice = jsonfilter.optString("minPrice");
+			if (!StringUtil.isNullOrEmpty(minPrice)) {
+				searchFilter.setStartPrice(minPrice);
+			}
+
+			String maxPrice = jsonfilter.optString("maxPrice");
+			if (!StringUtil.isNullOrEmpty(maxPrice)) {
+				searchFilter.setEndPrice(maxPrice);
+			}
+		}
+
+		JSONObject data = new JSONObject();
+		JSONArray array = new JSONArray();
+
+		List<SuningGoodsInfo> resultList = null;
+		List<SuningGoodsInfo> list = SuningApiUtil.searchGoodsOld(searchFilter);
+		if (list != null && list.size() > 0) {
+			List<String> listId = new ArrayList<>();
+			for (SuningGoodsInfo goodsInfo:  list) {
+				 SuningCommodityInfo info = goodsInfo.getCommodityInfo();
+				 if (info != null) {
+					 listId.add(info.getCommodityCode() + "-" + info.getSupplierCode());
+				 }
+			}
+			resultList = SuningApiUtil.getGoodsDetailList(listId);
+		}
+		
+		if (resultList != null) {
+			Gson gson = JsonUtil.getApiCommonGson();
+			if (resultList != null && resultList.size() > 0) {
+				ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
+						acceptData.getVersion());
+
+				for (SuningGoodsInfo goods : resultList) {
+					GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertSuningGoods(goods, paramsDTO);
+					array.add(gson.toJson(goodsDetailVO));
+				}
+			}
+		}
+
+		data.put("result", array);
+		data.put("count", 1000);
+		out.print(JsonUtil.loadTrueResult(data));
+	}
+
 }

--
Gitblit v1.8.0