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