From 61c21f17b1ad94e4b0018c7e385195bab21b0b5c Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期一, 09 九月 2019 19:00:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/dataoke/DaTaoKeGoodsServiceImpl.java |   41 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 41 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/dataoke/DaTaoKeGoodsServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/dataoke/DaTaoKeGoodsServiceImpl.java
index aa7ef9b..c5499f4 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/dataoke/DaTaoKeGoodsServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/dataoke/DaTaoKeGoodsServiceImpl.java
@@ -1,6 +1,8 @@
 package com.yeshi.fanli.service.impl.taobao.dataoke;
 
 import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.List;
@@ -11,11 +13,14 @@
 import org.springframework.stereotype.Service;
 
 import com.yeshi.fanli.dao.mybatis.taobao.dataoke.DaTaoKeDetailMapper;
+import com.yeshi.fanli.dto.dataoke.DaTaoKeGoodsResult;
 import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetail;
+import com.yeshi.fanli.entity.taobao.dataoke.DaTaoKeDetailV2;
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsDetailService;
 import com.yeshi.fanli.service.inter.taobao.dataoke.DaTaoKeGoodsService;
 import com.yeshi.fanli.util.RedisManager;
+import com.yeshi.fanli.util.dataoke.DaTaoKeApiUtil;
 import com.yeshi.fanli.util.taobao.DaTaoKeUtil;
 
 @Service
@@ -117,4 +122,40 @@
 		return daTaoKeDetailMapper.listBySellerId(start, count, sellerId);
 	}
 	
+	@Override
+	public List<DaTaoKeDetailV2> getSearchDiscoveryGoods(String keyWords){
+		String key = "dataoke-goods-searchdiscovery-"+ keyWords;
+		List<DaTaoKeDetailV2> list = redisManager.getObjList(DaTaoKeDetailV2.class, key);
+		if ( list == null || list.size() == 0) {
+			DaTaoKeGoodsResult search = DaTaoKeApiUtil.search(keyWords, null, null, null, 1, 10, 0);
+			if (search != null) {
+				list = search.getGoodsList();
+				if (list != null && list.size() > 0) {
+					Comparator<DaTaoKeDetailV2> cm = new Comparator<DaTaoKeDetailV2>() {
+						@Override
+						public int compare(DaTaoKeDetailV2 o1, DaTaoKeDetailV2 o2) {
+							int diff = o1.getHotPush() - o2.getHotPush();
+							if (diff > 0) {
+								return -1;
+							} else if (diff < 0) {
+								return 1;
+							}
+							return 0;
+						}
+					};
+					
+					Collections.sort(list, cm);
+					
+					if (list.size() > 3) 
+						list = list.subList(0, 3);
+					
+					// 缂撳瓨 20鍒嗛挓
+					redisManager.saveObjList(list, key, 1000 * 60 * 20);
+				}
+				return list;
+			}
+		} 
+		return list;
+	}
+	
 }

--
Gitblit v1.8.0