From 21c1c197ec0dba6da332bf4119c262267dcfb191 Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期二, 26 五月 2020 10:29:03 +0800
Subject: [PATCH] 粉丝信息同步调整

---
 fanli/src/main/java/com/yeshi/fanli/controller/client/v2/SearchControllerV2.java |  122 ++++++++++++++++++++++++++++++++++------
 1 files changed, 103 insertions(+), 19 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 bc578ee..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
@@ -5,9 +5,6 @@
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
-import java.util.Map;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpSession;
@@ -16,21 +13,20 @@
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
-import org.yeshi.utils.HttpUtil;
 import org.yeshi.utils.JsonUtil;
-import org.yeshi.utils.NumberUtil;
-import org.yeshi.utils.taobao.TbImgUtil;
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
 import com.yeshi.fanli.dto.ConfigParamsDTO;
-import com.yeshi.fanli.dto.douyin.DouYinGoods;
 import com.yeshi.fanli.dto.jd.JDFilter;
 import com.yeshi.fanli.dto.jd.JDSearchFilter;
 import com.yeshi.fanli.dto.jd.JDSearchResult;
 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;
@@ -39,10 +35,8 @@
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
 import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetailV2;
-import com.yeshi.fanli.exception.taobao.TaoBaoTokenParseException;
 import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
 import com.yeshi.fanli.exception.user.TokenRecordException;
-import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.brand.BrandInfoService;
 import com.yeshi.fanli.service.inter.common.JumpDetailV2Service;
 import com.yeshi.fanli.service.inter.config.BusinessSystemService;
@@ -50,6 +44,7 @@
 import com.yeshi.fanli.service.inter.config.SuperHotSearchService;
 import com.yeshi.fanli.service.inter.lable.QualityGoodsService;
 import com.yeshi.fanli.service.inter.lable.TaoKeGoodsService;
+import com.yeshi.fanli.service.inter.order.OrderHongBaoMoneyComputeService;
 import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoShopService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
@@ -62,10 +57,8 @@
 import com.yeshi.fanli.service.manger.goods.jd.JDGoodsLinkParseManager;
 import com.yeshi.fanli.tag.PageEntity;
 import com.yeshi.fanli.util.Constant;
-import com.yeshi.fanli.util.DouYinUtil;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.ThreadUtil;
-import com.yeshi.fanli.util.Utils;
 import com.yeshi.fanli.util.VersionUtil;
 import com.yeshi.fanli.util.annotation.RequestSerializableByKey;
 import com.yeshi.fanli.util.cache.IntegralGetCacheManager;
@@ -79,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;
@@ -150,6 +144,9 @@
 	@Resource
 	private JumpDetailV2Service jumpDetailV2Service;
 
+	@Resource
+	private OrderHongBaoMoneyComputeService orderHongBaoMoneyComputeService;
+
 	/**
 	 * 绮樿创鏉夸俊鎭帹鑽�
 	 * 
@@ -199,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();
@@ -285,7 +280,7 @@
 										data.put("goods",
 												gson.toJson(
 														GoodsDetailVOFactory.convertCommonGoods(goods,
-																hongBaoManageService.getShowComputeRate(
+																orderHongBaoMoneyComputeService.getShowComputeRate(
 																		acceptData.getPlatform(),
 																		acceptData.getVersion()))));
 										out.print(JsonUtil.loadTrueResult(data));
@@ -299,7 +294,7 @@
 									data.put("goods",
 											gson.toJson(
 													GoodsDetailVOFactory.convertCommonGoods(goods,
-															hongBaoManageService.getShowComputeRate(
+															orderHongBaoMoneyComputeService.getShowComputeRate(
 																	acceptData.getPlatform(),
 																	acceptData.getVersion()))));
 									out.print(JsonUtil.loadTrueResult(data));
@@ -506,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);
+
 	}
 
 	/**
@@ -603,7 +605,7 @@
 		}
 
 		List<GoodsDetailVO> list = new ArrayList<GoodsDetailVO>();
-		ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate(acceptData.getPlatform(),
+		ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
 				acceptData.getVersion());
 
 		for (TaoBaoGoodsBrief goods : taoBaoGoodsBriefs) {
@@ -811,7 +813,7 @@
 			if (goodsList != null && goodsList.size() > 0) {
 				Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
 						.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
-				ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate(acceptData.getPlatform(),
+				ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
 						acceptData.getVersion());
 				for (JDGoods goods : goodsList) {
 					GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, paramsDTO);
@@ -893,7 +895,7 @@
 			Gson gson = JsonUtil.getApiCommonGson();
 			List<PDDGoodsDetail> goodsList = result.getGoodsList();
 			if (goodsList != null && goodsList.size() > 0) {
-				ConfigParamsDTO paramsDTO = hongBaoManageService.getShowComputeRate(acceptData.getPlatform(),
+				ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(acceptData.getPlatform(),
 						acceptData.getVersion());
 
 				for (PDDGoodsDetail goods : goodsList) {
@@ -907,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