From 44c965a94d5860af792f091462e739325544fb95 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期一, 22 七月 2019 14:22:57 +0800 Subject: [PATCH] 搜索京东、拼多多优化 --- fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java | 53 +++++++++++++++++------------------------------------ 1 files changed, 17 insertions(+), 36 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java index 3d8d326..fc0d0cc 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java @@ -35,30 +35,25 @@ */ public static BigDecimal getGoodsFanLiMoney(PDDGoodsDetail goods, BigDecimal rate) { BigDecimal money = null; - BigDecimal price = new BigDecimal(goods.getMinNormalPrice()); - BigDecimal promotionRate = new BigDecimal(goods.getPromotionRate()); + BigDecimal hundred = new BigDecimal(100); + rate = MoneyBigDecimalUtil.div(rate, hundred); + BigDecimal price = MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinGroupPrice()), hundred).setScale(2); + BigDecimal promotionRate = MoneyBigDecimalUtil.div(new BigDecimal(goods.getPromotionRate()), new BigDecimal(1000)); Boolean hasCoupon = goods.getHasCoupon(); if (hasCoupon == null || !hasCoupon) { - money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul( - MoneyBigDecimalUtil.mul(price, promotionRate),new BigDecimal("0.001")), - MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(price, promotionRate), rate); } else { - BigDecimal amount = new BigDecimal(goods.getCouponDiscount()); - BigDecimal startFree = new BigDecimal(goods.getCouponMinOrderAmount()); + BigDecimal amount = MoneyBigDecimalUtil.div(new BigDecimal(goods.getCouponDiscount()), hundred); + BigDecimal startFree = MoneyBigDecimalUtil.div(new BigDecimal(goods.getCouponMinOrderAmount()), hundred); if (startFree.compareTo(price) <= 0 && price.compareTo(amount) > 0) { BigDecimal finalPrice = price.subtract(amount); - money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil - .mul(MoneyBigDecimalUtil.mul(finalPrice, promotionRate), new BigDecimal("0.001")), - MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); - + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(finalPrice, promotionRate),rate); } else {// 涓嶈兘鐢ㄥ埜 - money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul( - MoneyBigDecimalUtil.mul(price,promotionRate), new BigDecimal("0.001")), - MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(price,promotionRate), rate); } } - return BigDecimalUtil.getWithNoZera(money); + return BigDecimalUtil.getWithNoZera(money).setScale(2); } @@ -69,37 +64,23 @@ * @return */ public static BigDecimal getQuanPrice(PDDGoodsDetail goods) { - BigDecimal price = new BigDecimal(goods.getMinNormalPrice()); + BigDecimal hundred = new BigDecimal(100); + BigDecimal price = MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinGroupPrice()), hundred); Boolean hasCoupon = goods.getHasCoupon(); if (hasCoupon == null || !hasCoupon) { - return price; + return price.setScale(2); } - BigDecimal amount = new BigDecimal(goods.getCouponDiscount()); - BigDecimal startFree = new BigDecimal(goods.getCouponMinOrderAmount()); + BigDecimal amount = MoneyBigDecimalUtil.div(new BigDecimal(goods.getCouponDiscount()), hundred); + BigDecimal startFree = MoneyBigDecimalUtil.div(new BigDecimal(goods.getCouponMinOrderAmount()), hundred); if (startFree.compareTo(price) <= 0) { BigDecimal quanPrice = MoneyBigDecimalUtil.sub(price, amount); - return quanPrice; + return quanPrice.setScale(2); } else { - return price; + return price.setScale(2); } } - public static String getSaleCount(long count) { - String salesCountMidea = null; - if (count < 10000) { - salesCountMidea = count + ""; - } else { - double sales = count; - salesCountMidea = String.format("%.1f", sales / 10000); - salesCountMidea = salesCountMidea + "涓�"; - } - return salesCountMidea; - } - - - - public static List<String> getDetailImages(Long id) { List<String> imgList = new ArrayList<>(); -- Gitblit v1.8.0