From c5410b7f48a774e4ecd50019b46bc9173f2483ae Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 08 五月 2019 11:33:37 +0800 Subject: [PATCH] 转大淘客为普通商品详情 --- fanli/src/main/java/com/yeshi/fanli/util/RedisManager.java | 86 +++++++++++++++++++++++++++++++++++++++++- 1 files changed, 83 insertions(+), 3 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/RedisManager.java b/fanli/src/main/java/com/yeshi/fanli/util/RedisManager.java index 50f7b75..02e0788 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/RedisManager.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/RedisManager.java @@ -5,7 +5,9 @@ import javax.annotation.Resource; +import org.apache.poi.ss.formula.functions.T; import org.springframework.stereotype.Component; +import org.yeshi.utils.JsonUtil; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; @@ -22,7 +24,6 @@ import com.yeshi.fanli.util.taobao.TaoBaoCouponUtil; import com.yeshi.fanli.util.taobao.TaoBaoUtil; import com.yeshi.fanli.util.taobao.TaoKeApiUtil; -import org.yeshi.utils.JsonUtil; import net.sf.json.JSONArray; import redis.clients.jedis.Jedis; @@ -97,6 +98,24 @@ Jedis jedis = jedisPool.getResource(); try { return jedis.get(key); + } finally { + jedisPool.returnResource(jedis); + } + } + + public void increase(String key) { + Jedis jedis = jedisPool.getResource(); + try { + jedis.incr(key); + } finally { + jedisPool.returnResource(jedis); + } + } + + public void expire(String key, int seconds) { + Jedis jedis = jedisPool.getResource(); + try { + jedis.expire(key, seconds); } finally { jedisPool.returnResource(jedis); } @@ -235,7 +254,7 @@ long count = jedis.incr(key); if (count == 1) jedis.expire(key, 5); - if (count >= 100) + if (count >= 10) return true; else return false; @@ -284,19 +303,38 @@ String value = ""; if (Constant.IS_OUTNET) value = getCommonString(key); + if (StringUtil.isNullOrEmpty(value)) { TaoBaoGoodsBrief goods = new TaoBaoGoodsBrief(); goods.setShopTitle(shopTitle); goods.setSellerId(sellerId); goods.setAuctionId(auctionId); TaoBaoShopInfo info = taoBaoShopService.getTaoBaoShopInfo(goods); + + if (info != null) { + String shopUrl = info.getShopUrl(); + if (shopUrl != null && shopUrl.contains("tmall://page.tm/shop")) { + shopUrl = "http://store.taobao.com/shop/view_shop.htm?user_number_id=" + sellerId; + info.setShopUrl(shopUrl); + } + } + if (Constant.IS_OUTNET && info != null) { value = new Gson().toJson(info); cacheCommonString(key, value, 60 * 60 * 2); } + return info; } else { - return new Gson().fromJson(value, TaoBaoShopInfo.class); + TaoBaoShopInfo info = new Gson().fromJson(value, TaoBaoShopInfo.class); + + String shopUrl = info.getShopUrl(); + if (shopUrl != null && shopUrl.contains("tmall://page.tm/shop")) { + shopUrl = "http://store.taobao.com/shop/view_shop.htm?user_number_id=" + sellerId; + info.setShopUrl(shopUrl); + } + + return info; } } @@ -472,4 +510,46 @@ return null; } + /** + * 淇濆瓨瀵硅薄 + * + * @param T + * @param key + * @param seconds + */ + public void save(Class<?> clazz, String key, Integer seconds) { + if (clazz == null) + return; + String value = new Gson().toJson(clazz); + if (seconds != null) + cacheCommonString(key, value, seconds); + else + cacheCommonString(key, value); + } + + public void saveList(List<Class<?>> clazzList, String key, Integer seconds) { + if (clazzList == null) + return; + String value = new Gson().toJson(clazzList); + if (seconds != null) + cacheCommonString(key, value, seconds); + else + cacheCommonString(key, value); + } + + public Class<?> getObj(Class<?> clazz, String key) { + String value = getCommonString(key); + return new Gson().fromJson(value, clazz); + } + + public List<T> getObjList(Class<T> clazz, String key) { + List<T> list = new ArrayList<>(); + String value = getCommonString(key); + JSONArray array = JSONArray.fromObject(value); + for (int i = 0; i < array.size(); i++) { + list.add(new Gson().fromJson(array.optJSONObject(i).toString(), clazz)); + } + return list; + } + } -- Gitblit v1.8.0