From 91ddd96c12ec25aaf6d0cb38d54288d863ab2b58 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期六, 10 七月 2021 18:10:38 +0800
Subject: [PATCH] 礼金红包兼容

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

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java
index 6c0bb36..bab03ec 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/taobao/TaoBaoGoodsUpdateServiceImpl.java
@@ -408,6 +408,66 @@
     }
 
     @Override
+    public List<CommonGoods> filterImportantTaoBaoGoodsWithCommonGoods(List<CommonGoods> goodsList) {
+
+        // 鍟嗗搧杩囨护涓嶅厑璁稿嚭閿�
+        try {
+            Map<Long, CommonGoods> finalMap = new HashMap<>();
+            // 鍘熷鏁版嵁鍏ㄨ鐩�
+            List<CommonGoods> tempGoodsList = new ArrayList<>();
+            for (CommonGoods goods : goodsList) {
+                if (goods.getGoodsType() == CommonGoods.SHOP_TYPE_TB) {
+                    finalMap.put(goods.getGoodsId(), goods);
+                    tempGoodsList.add(goods);
+                }
+            }
+
+            // 鍏堜粠redis閲岄潰鍙栬鐩�
+            for (int i = 0; i < tempGoodsList.size(); i++) {
+                TaoBaoGoodsBrief goods = taoBaoGoodsCacheUtil
+                        .getCommonTaoBaoGoodsInfo(tempGoodsList.get(i).getGoodsId());
+                if (goods != null) {
+                    finalMap.put(goods.getAuctionId(), CommonGoodsFactory.create(goods));
+                    tempGoodsList.remove(i--);
+                }
+            }
+
+            // 鍐嶄粠mongodb涓彇瑕嗙洊
+            List<Long> auctionIds = new ArrayList<>();
+            for (CommonGoods goods : tempGoodsList) {
+                auctionIds.add(goods.getGoodsId());
+            }
+            List<TaoBaoGoodsBrief> mList = taoBaoGoodsUpdateDao.listByAuctionIds(auctionIds);
+            if (mList != null)
+                for (TaoBaoGoodsBrief goods : mList) {
+                    if (goods.getUpdatetime().getTime() > System.currentTimeMillis() - 1000 * 60 * 60 * 24L)// 鍦�1澶╁唴鏇存柊鐨勬暟鎹墠鍙備笌杩囨护
+                        finalMap.put(goods.getAuctionId(), CommonGoodsFactory.create(goods));
+                }
+
+            List<CommonGoods> finalList = new ArrayList<>();
+            for (CommonGoods goods : goodsList) {
+                if (goods.getGoodsType() == CommonGoods.GOODS_TYPE_TB) {
+                    CommonGoods newGoods = finalMap.get(goods.getGoodsId());
+                    // 杩囨护浠锋牸锛岃繑鍒╂瘮渚嬶紝鍒镐俊鎭�
+                    goods.setPrice(newGoods.getPrice());
+                    goods.setRate(newGoods.getRate());
+                    goods.setCouponAmount(newGoods.getCouponAmount());
+                    goods.setCouponInfo(newGoods.getCouponInfo());
+                    goods.setCouponLeftCount(newGoods.getCouponLeftCount());
+                    goods.setCouponStartPrice(newGoods.getCouponStartPrice());
+                    goods.setCouponTotalCount(newGoods.getCouponTotalCount());
+                }
+
+                finalList.add(goods);
+            }
+            return finalList;
+        } catch (Exception e) {
+            LogHelper.errorDetailInfo(e);
+        }
+        return goodsList;
+    }
+
+    @Override
     public int listAndRemoveByMaxUpdateTime(Date maxTime, int page, int pageSize) {
         return taoBaoGoodsUpdateDao.listAndRemoveByMaxUpdateTime(maxTime, (page - 1) * pageSize, pageSize);
     }

--
Gitblit v1.8.0