From 98b1a0affd69bbe63223c21fdd2c404e8bedfccb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 20 五月 2020 17:25:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into 2.1.2

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/lable/TaoKeGoodsServiceImpl.java |   86 ++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 80 insertions(+), 6 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/TaoKeGoodsServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/TaoKeGoodsServiceImpl.java
index 13e3adf..4e2b0d0 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/TaoKeGoodsServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/lable/TaoKeGoodsServiceImpl.java
@@ -16,6 +16,7 @@
 
 import com.google.gson.Gson;
 import com.google.gson.GsonBuilder;
+import com.yeshi.fanli.dto.ConfigParamsDTO;
 import com.yeshi.fanli.entity.bus.lable.QualityFactory;
 import com.yeshi.fanli.entity.taobao.SearchFilter;
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
@@ -23,13 +24,16 @@
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchNav;
 import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
 import com.yeshi.fanli.entity.taobao.TaoBaoShopInfo;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
 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.util.StringUtil;
+import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory;
 import com.yeshi.fanli.util.taobao.TaoBaoUtil;
 import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
+import com.yeshi.fanli.vo.goods.GoodsDetailVO;
 
 import net.sf.json.JSONArray;
 import net.sf.json.JSONObject;
@@ -38,7 +42,10 @@
 public class TaoKeGoodsServiceImpl implements TaoKeGoodsService {
 
 	@Resource
-	private HongBaoManageService manageService;
+	private HongBaoManageService hongBaoManageService;
+	
+	@Resource
+	private OrderHongBaoMoneyComputeService orderHongBaoMoneyComputeService;
 
 	@Resource
 	private TaoBaoShopService taoBaoShopService;
@@ -78,7 +85,7 @@
 		Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
 				.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
 
-		BigDecimal proportion = manageService.getFanLiRate();
+		BigDecimal proportion = hongBaoManageService.getFanLiRate();
 
 		listGoods.parallelStream().forEach(taoBaoGoodsBrief -> {
 
@@ -205,7 +212,7 @@
 		int fh = sf.getHongbao();
 		boolean ft = sf.isTmall();
 
-		BigDecimal proportion = manageService.getFanLiRate();
+		BigDecimal proportion = hongBaoManageService.getFanLiRate();
 
 		if (fq == 0 && fh == 0 && !ft) {
 			if (result != null && result.getTaoBaoGoodsBriefs() != null)
@@ -258,6 +265,73 @@
 								proportion.toString(), "");
 						re.add(taoBaoGoodsBriefExtra);
 					}
+				}
+		}
+
+		Gson gson2 = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
+				.excludeFieldsWithoutExposeAnnotation().create();
+
+		data.put("result", gson2.toJson(re));
+		data.put("count", result.getTaoBaoHead().getDocsfound());
+
+		return data;
+	}
+	
+	
+	@Override
+	@Cacheable(value = "searchWuLiaoCache", key = "'searchWuLiaoV2-'+#sf+'-'+#platform+'-'+#version")
+	public JSONObject searchWuLiaoV2(SearchFilter sf,String platform,String version) {
+
+		// 娣樺疂鐗╂枡鎺ュ彛鏌ヨ
+		TaoBaoSearchResult result = TaoKeApiUtil.searchWuLiao(sf);
+
+		List<TaoBaoSearchNav> navList = TaoBaoUtil.getBaseNav();
+		if (result.getNavList() != null)
+			navList.addAll(result.getNavList());
+
+		Gson gson = new GsonBuilder().create();
+		JSONObject data = new JSONObject();
+		data.put("nav", gson.toJson(navList));
+
+		List<GoodsDetailVO> re = new ArrayList<GoodsDetailVO>();
+		List<TaoBaoGoodsBrief> taoBaoGoodsBriefs = result.getTaoBaoGoodsBriefs();
+
+		int fq = sf.getQuan();
+		int fh = sf.getHongbao();
+		boolean ft = sf.isTmall();
+
+	    ConfigParamsDTO paramsDTO = orderHongBaoMoneyComputeService.getShowComputeRate(platform, version);
+
+		if (fq == 0 && fh == 0 && !ft) {
+			if (result != null && result.getTaoBaoGoodsBriefs() != null)
+				for (TaoBaoGoodsBrief bf : result.getTaoBaoGoodsBriefs()) {
+					int count = bf.getBiz30day();
+
+					String startBiz30day = sf.getStartBiz30day();
+					if (!StringUtil.isNullOrEmpty(startBiz30day)) {
+						int biz30day = Integer.parseInt(startBiz30day);
+						if (count < biz30day) {
+							continue;
+						}
+					}
+
+					GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertTaoBao(bf, paramsDTO);
+					re.add(goodsDetailVO);
+				}
+		} else {
+			if (taoBaoGoodsBriefs != null)
+				for (TaoBaoGoodsBrief taoBaoGoodsBrief : taoBaoGoodsBriefs) {
+
+					int count = taoBaoGoodsBrief.getBiz30day();
+					String startBiz30day = sf.getStartBiz30day();
+					if (!StringUtil.isNullOrEmpty(startBiz30day)) {
+						int biz30day = Integer.parseInt(startBiz30day);
+						if (count < biz30day) {
+							break;
+						}
+					}
+					GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertTaoBao(taoBaoGoodsBrief, paramsDTO);
+					re.add(goodsDetailVO);
 				}
 		}
 
@@ -414,7 +488,7 @@
 		int fh = sf.getHongbao();
 		boolean ft = sf.isTmall();
 
-		BigDecimal proportion = manageService.getFanLiRate();
+		BigDecimal proportion = hongBaoManageService.getFanLiRate();
 
 		if (fq == 0 && fh == 0 && !ft) {
 			if (result != null && result.getTaoBaoGoodsBriefs() != null)
@@ -568,7 +642,7 @@
 		Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
 				.excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
 
-		BigDecimal proportion = manageService.getFanLiRate();
+		BigDecimal proportion = hongBaoManageService.getFanLiRate();
 
 		/* 閬嶅巻鍒楄〃鏁版嵁 */
 		for (QualityFactory selectionGoods : listQuality) {

--
Gitblit v1.8.0