From 7e307d7a107047f51803163e246260a30f1b50a0 Mon Sep 17 00:00:00 2001
From: admin <2780501319@qq.com>
Date: 星期一, 31 五月 2021 00:01:06 +0800
Subject: [PATCH] 消息完善
---
fanli/src/main/java/com/yeshi/fanli/util/cache/TaoBaoGoodsCacheUtil.java | 365 ++++++++++++++++++++++++++++-----------------------
1 files changed, 199 insertions(+), 166 deletions(-)
diff --git a/fanli/src/main/java/com/yeshi/fanli/util/cache/TaoBaoGoodsCacheUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/cache/TaoBaoGoodsCacheUtil.java
index 9e8d91a..9259202 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/cache/TaoBaoGoodsCacheUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/cache/TaoBaoGoodsCacheUtil.java
@@ -1,166 +1,199 @@
-package com.yeshi.fanli.util.cache;
-
-import java.util.Calendar;
-
-import javax.annotation.Resource;
-
-import org.springframework.stereotype.Component;
-
-import com.google.gson.Gson;
-import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
-import com.yeshi.fanli.util.RedisKeyEnum;
-import com.yeshi.fanli.util.RedisManager;
-import com.yeshi.fanli.util.StringUtil;
-import org.yeshi.utils.TimeUtil;
-
-@Component
-public class TaoBaoGoodsCacheUtil {
- @Resource
- private RedisManager redisManager;
-
- /**
- * 淇濆瓨甯歌鐨勬窐瀹濆晢鍝佽鎯咃紙鎼滅储锛岃鎯咃級
- *
- * @param goods
- */
- public void saveCommonTaoBaoGoodsInfo(TaoBaoGoodsBrief goods) {
- if (goods == null || goods.getAuctionId() == null)
- return;
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoGoodsCommon, goods.getAuctionId() + "");
- // 淇濆瓨20鍒嗛挓
- redisManager.cacheCommonString(key, new Gson().toJson(goods), 60 * 20);
- }
-
- /**
- * 鑾峰彇缂撳瓨
- *
- * @param auctionId
- * @return
- */
- public TaoBaoGoodsBrief getCommonTaoBaoGoodsInfo(long auctionId) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoGoodsCommon, auctionId + "");
- String value = redisManager.getCommonString(key);
- if (!StringUtil.isNullOrEmpty(value)) {
- return new Gson().fromJson(value, TaoBaoGoodsBrief.class);
- } else
- return null;
- }
-
- /**
- * 鏄惁鍙互娣诲姞鍒版洿鏂伴槦鍒椾腑
- *
- * @param auctionId
- * @return
- */
- public boolean canAddToUpdateQueue(Long auctionId) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoQueue, auctionId + "");
- String value = redisManager.getCommonString(key);
- if (StringUtil.isNullOrEmpty(value))
- return true;
- else
- return false;
- }
-
- /**
- * 澧炲姞娣诲姞鍒伴槦鍒椾腑鐨勮褰�
- *
- * @param auctionId
- */
- public void addAddToQueueHistory(Long auctionId) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoQueue, auctionId + "");
- redisManager.cacheCommonString(key, "1", 60 * 60 * 2);// 鏈夋晥鏈�2涓皬鏃�
- }
-
- /**
- * 鏌ヨ鍟嗗搧鏄惁闇�瑕佹洿鏂�
- *
- * @param actionId
- * @return
- */
- public boolean needUpdate(Long actionId) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoUpdate, actionId + "");
- String value = redisManager.getCommonString(key);
- if (StringUtil.isNullOrEmpty(value))
- return true;
- else
- return false;
- }
-
- /**
- * 娣诲姞鏇存柊璁板綍鏁版嵁
- *
- * @param actionId
- * @return
- */
- public void addUpdateHistory(Long actionId) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoUpdate, actionId + "");
- redisManager.cacheCommonString(key, "1", 60 * 60 * 1);// 鏈夋晥鏈�1涓皬鏃�
- }
-
- /**
- * 鍒犻櫎鏇存柊璁板綍
- */
- public void removeUpdateHistory() {
- // TODO 鍑屾櫒鍒犻櫎缂撳瓨璁板綍
- }
-
- /**
- * 淇濆瓨鍙d护瀵瑰簲鐨勫晢鍝両D
- *
- * @param token
- * @param auctionId
- */
- public void saveTokenGoodsIdMap(String token, Long auctionId) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoTokenGoodsMap, StringUtil.Md5(token));
- redisManager.cacheCommonString(key, auctionId + "", 60 * 30);// 鏈夋晥鏈�30鍒嗛挓
- }
-
- /**
- * 閫氳繃鍙d护鑾峰彇鍟嗗搧ID
- *
- * @param token
- * @return
- */
- public Long getGoodsIdByToken(String token) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoTokenGoodsMap, StringUtil.Md5(token));
- String goodsId = redisManager.getCommonString(key);
- if (StringUtil.isNullOrEmpty(goodsId))
- return null;
- return Long.parseLong(goodsId);
- }
-
- /**
- * 缂撳瓨杞摼缁撴灉
- * @Title: cacheBaseConvertLink
- * @Description:
- * @param auctionId
- * @param pid
- * @param link
- * void 杩斿洖绫诲瀷
- * @throws
- */
- public void cacheBaseConvertLink(Long auctionId, String pid, String link) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoBaseLink, StringUtil.Md5(auctionId + "#" + pid));
- //
- Calendar calendar = Calendar.getInstance();
- long now = calendar.getTimeInMillis();
- calendar.add(Calendar.HOUR, 1);
-
- Long time = TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(calendar.getTimeInMillis(), "yyyy-MM-dd HH"),
- "yyyy-MM-dd HH");
-
- int second = (int) ((time - now) / 1000);
- if (second <= 0)
- second = 1;
-
- redisManager.cacheCommonString(key, link, second);// 鏈夋晥鏈�30鍒嗛挓
- }
-
- public String getBaseConvertLink(Long auctionId, String pid) {
- String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoBaseLink, StringUtil.Md5(auctionId + "#" + pid));
- String url = redisManager.getCommonString(key);
-
- return StringUtil.isNullOrEmpty(url) ? null : url;
- }
-
-}
+package com.yeshi.fanli.util.cache;
+
+import java.util.Calendar;
+
+import javax.annotation.Resource;
+
+import com.yeshi.fanli.entity.taobao.SearchFilter;
+import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult;
+import org.springframework.stereotype.Component;
+
+import com.google.gson.Gson;
+import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief;
+import com.yeshi.fanli.util.RedisKeyEnum;
+import com.yeshi.fanli.util.RedisManager;
+import com.yeshi.fanli.util.StringUtil;
+import org.yeshi.utils.TimeUtil;
+
+@Component
+public class TaoBaoGoodsCacheUtil {
+ @Resource
+ private RedisManager redisManager;
+
+ /**
+ * 淇濆瓨甯歌鐨勬窐瀹濆晢鍝佽鎯咃紙鎼滅储锛岃鎯咃級
+ *
+ * @param goods
+ */
+ public void saveCommonTaoBaoGoodsInfo(TaoBaoGoodsBrief goods) {
+ if (goods == null || goods.getAuctionId() == null)
+ return;
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoGoodsCommon, goods.getAuctionId() + "");
+ // 淇濆瓨20鍒嗛挓
+ redisManager.cacheCommonString(key, new Gson().toJson(goods), 60 * 20);
+ }
+
+ /**
+ * 鑾峰彇缂撳瓨
+ *
+ * @param auctionId
+ * @return
+ */
+ public TaoBaoGoodsBrief getCommonTaoBaoGoodsInfo(long auctionId) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoGoodsCommon, auctionId + "");
+ String value = redisManager.getCommonString(key);
+ if (!StringUtil.isNullOrEmpty(value)) {
+ return new Gson().fromJson(value, TaoBaoGoodsBrief.class);
+ } else
+ return null;
+ }
+
+ /**
+ * 鏄惁鍙互娣诲姞鍒版洿鏂伴槦鍒椾腑
+ *
+ * @param auctionId
+ * @return
+ */
+ public boolean canAddToUpdateQueue(Long auctionId) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoQueue, auctionId + "");
+ String value = redisManager.getCommonString(key);
+ if (StringUtil.isNullOrEmpty(value))
+ return true;
+ else
+ return false;
+ }
+
+ /**
+ * 澧炲姞娣诲姞鍒伴槦鍒椾腑鐨勮褰�
+ *
+ * @param auctionId
+ */
+ public void addAddToQueueHistory(Long auctionId) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoQueue, auctionId + "");
+ redisManager.cacheCommonString(key, "1", 60 * 60 * 2);// 鏈夋晥鏈�2涓皬鏃�
+ }
+
+ /**
+ * 鏌ヨ鍟嗗搧鏄惁闇�瑕佹洿鏂�
+ *
+ * @param actionId
+ * @return
+ */
+ public boolean needUpdate(Long actionId) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoUpdate, actionId + "");
+ String value = redisManager.getCommonString(key);
+ if (StringUtil.isNullOrEmpty(value))
+ return true;
+ else
+ return false;
+ }
+
+ /**
+ * 娣诲姞鏇存柊璁板綍鏁版嵁
+ *
+ * @param actionId
+ * @return
+ */
+ public void addUpdateHistory(Long actionId) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoUpdate, actionId + "");
+ redisManager.cacheCommonString(key, "1", 60 * 60 * 1);// 鏈夋晥鏈�1涓皬鏃�
+ }
+
+ /**
+ * 鍒犻櫎鏇存柊璁板綍
+ */
+ public void removeUpdateHistory() {
+ // TODO 鍑屾櫒鍒犻櫎缂撳瓨璁板綍
+ }
+
+ /**
+ * 淇濆瓨鍙d护瀵瑰簲鐨勫晢鍝両D
+ *
+ * @param token
+ * @param auctionId
+ */
+ public void saveTokenGoodsIdMap(String token, Long auctionId) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoTokenGoodsMap, StringUtil.Md5(token));
+ redisManager.cacheCommonString(key, auctionId + "", 60 * 30);// 鏈夋晥鏈�30鍒嗛挓
+ }
+
+ /**
+ * 閫氳繃鍙d护鑾峰彇鍟嗗搧ID
+ *
+ * @param token
+ * @return
+ */
+ public Long getGoodsIdByToken(String token) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoTokenGoodsMap, StringUtil.Md5(token));
+ String goodsId = redisManager.getCommonString(key);
+ if (StringUtil.isNullOrEmpty(goodsId))
+ return null;
+ return Long.parseLong(goodsId);
+ }
+
+ /**
+ * 缂撳瓨杞摼缁撴灉
+ *
+ * @param auctionId
+ * @param pid
+ * @param link void 杩斿洖绫诲瀷
+ * @throws
+ * @Title: cacheBaseConvertLink
+ * @Description:
+ */
+ public void cacheBaseConvertLink(Long auctionId, String pid, String link) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoBaseLink, StringUtil.Md5(auctionId + "#" + pid));
+ //
+ Calendar calendar = Calendar.getInstance();
+ long now = calendar.getTimeInMillis();
+ calendar.add(Calendar.HOUR, 1);
+
+ Long time = TimeUtil.convertToTimeTemp(TimeUtil.getGernalTime(calendar.getTimeInMillis(), "yyyy-MM-dd HH"),
+ "yyyy-MM-dd HH");
+
+ int second = (int) ((time - now) / 1000);
+ if (second <= 0)
+ second = 1;
+
+ redisManager.cacheCommonString(key, link, second);// 鏈夋晥鏈�30鍒嗛挓
+ }
+
+ public String getBaseConvertLink(Long auctionId, String pid) {
+ String key = RedisKeyEnum.getRedisKey(RedisKeyEnum.taobaoBaseLink, StringUtil.Md5(auctionId + "#" + pid));
+ String url = redisManager.getCommonString(key);
+
+ return StringUtil.isNullOrEmpty(url) ? null : url;
+ }
+
+
+ /**
+ * 淇濆瓨鎼滅储鎺ュ彛
+ *
+ * @param sf
+ * @param result
+ */
+ public void saveSearchResult(SearchFilter sf, TaoBaoSearchResult result) {
+ if (result == null||result.getTaoBaoGoodsBriefs()==null)
+ return;
+ String key = RedisKeyEnum.taobaoSearchResult.getKey() + StringUtil.Md5(new Gson().toJson(sf));
+ //缂撳瓨20鍒嗛挓
+ redisManager.cacheCommonString(key, new Gson().toJson(result), 60 * 20);
+ }
+
+ /**
+ * 鑾峰彇鎼滅储缁撴灉
+ *
+ * @param sf
+ * @return
+ */
+ public TaoBaoSearchResult getSearchResult(SearchFilter sf) {
+ String key = RedisKeyEnum.taobaoSearchResult.getKey() + StringUtil.Md5(new Gson().toJson(sf));
+ String result = redisManager.getCommonString(key);
+
+ if (StringUtil.isNullOrEmpty(result))
+ return null;
+ else
+ return new Gson().fromJson(result, TaoBaoSearchResult.class);
+ }
+
+}
--
Gitblit v1.8.0