From 0ffd316f9fb2c967f9d643c6a45a965511566aea Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期二, 26 十一月 2019 15:46:18 +0800 Subject: [PATCH] Merge branch 'div' of ssh://193.112.35.168:29418/fanli-server into div --- fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 56 insertions(+), 0 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java b/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java index bab826d..753bd0f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java @@ -5,7 +5,9 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Date; +import java.util.HashSet; import java.util.List; +import java.util.Set; import org.yeshi.utils.taobao.TbImgUtil; @@ -25,6 +27,7 @@ import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.MoneyBigDecimalUtil; import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.TimeUtil; import com.yeshi.fanli.util.jd.JDUtil; import com.yeshi.fanli.util.pinduoduo.PinDuoDuoUtil; import com.yeshi.fanli.util.taobao.TaoBaoCouponUtil; @@ -470,6 +473,51 @@ return goodsInfo; } + private static CouponInfoVO convertJDCouponInfo(JDCouponInfo couponInfo) { + CouponInfoVO coupon = new CouponInfoVO(); + coupon.setAmount(couponInfo.getDiscount()); + coupon.setLink(couponInfo.getLink()); + coupon.setStartFee(couponInfo.getQuota()); + + if (couponInfo.getGetStartTime() != null) { + coupon.setStartTime(TimeUtil.getGernalTime(couponInfo.getGetStartTime(), "yyyy.MM.dd")); + } + + if (couponInfo.getGetEndTime() != null) { + coupon.setEndTime(TimeUtil.getGernalTime(couponInfo.getGetEndTime(), "yyyy.MM.dd")); + } + + return coupon; + } + + private static List<CouponInfoVO> filterCouponInfo(List<CouponInfoVO> couponList) { + if (couponList == null) + return null; + long currentTime = System.currentTimeMillis(); + Set<String> sets = new HashSet<>(); + // 杩囨护鎺夎繃鏈熷埜 + for (int i = 0; i < couponList.size(); i++) { + if (couponList.get(i).getStartTime() != null && couponList.get(i).getEndTime() != null) { + long startTime = TimeUtil.convertToTimeTemp(couponList.get(i).getStartTime(), "yyyy.MM.dd"); + long endTime = TimeUtil.convertToTimeTemp(couponList.get(i).getEndTime(), "yyyy.MM.dd") + + 1000 * 60 * 60 * 24L; + if (currentTime < startTime || currentTime >= endTime) { + couponList.remove(i--); + continue; + } + } + // 杩囨护鎺夐潰鍊肩浉鍚屼笌璧峰閲戦鐩稿悓鐨� + String key = couponList.get(i).getStartFee() + "-" + couponList.get(i).getAmount(); + if (!sets.contains(key)) + sets.add(key); + else { + couponList.remove(i--); + continue; + } + } + return couponList; + } + /** * 娣樺疂鍟嗗搧缁勭粐 * @@ -534,6 +582,14 @@ goodsInfo.setCouponInfo(coupon); } + if (goods.getCouponInfoList() != null && goods.getCouponInfoList().size() > 0) { + List<CouponInfoVO> couponList = new ArrayList<>(); + for (JDCouponInfo jdCoupon : goods.getCouponInfoList()) { + couponList.add(convertJDCouponInfo(jdCoupon)); + } + goodsInfo.setCouponInfoList(filterCouponInfo(couponList)); + } + List<ClientTextStyleVO> labels = goodsInfo.getLabels(); // 浜笢鑷惀鏍囩 String owner = goods.getOwner(); -- Gitblit v1.8.0