From e75b0d79535a6bcd147cca4a54632b70b42afdb9 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期六, 29 五月 2021 18:10:18 +0800 Subject: [PATCH] 特价完善 --- fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java | 189 +++++++++++++++++++++++----------------------- 1 files changed, 95 insertions(+), 94 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java index c45e71f..dda451e 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java @@ -1,94 +1,95 @@ -package com.yeshi.fanli.util; - -import java.math.BigDecimal; -import java.util.List; - -import org.springframework.stereotype.Component; -import org.yeshi.utils.BigDecimalUtil; - -import com.yeshi.fanli.entity.goods.CommonGoods; -import com.yeshi.fanli.util.taobao.TaoBaoCouponUtil; - -@Component -public class CommonGoodsUtil { - - /** - * 鍟嗗搧浣i噾鍖呭惈楼绗﹀彿 - * - * @param goods - * @param rate - * @return - */ - public static String getCommissionInfo(CommonGoods goods, BigDecimal rate) { - return "楼" + getCommission(goods, rate).toString(); - } - - /** - * 鍟嗗搧浣i噾 - * - * @param goods - * @param rate - * @return - */ - public static BigDecimal getCommission(CommonGoods goods, BigDecimal rate) { - BigDecimal money = null; - - if (StringUtil.isNullOrEmpty(goods.getCouponInfo()) || goods.getCouponInfo().trim().equalsIgnoreCase("鏃�")) { - BigDecimal price = goods.getPrice(); - money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil - .mul(MoneyBigDecimalUtil.mul(price, goods.getRate()), new BigDecimal("0.01")), - MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); - - } else// 鏈夊埜 - { - List<BigDecimal> list = TaoBaoCouponUtil.getCouponInfo(goods.getCouponInfo()); - BigDecimal startFee = list.get(0); - BigDecimal couponAccount = list.get(1); - if (startFee.compareTo(goods.getPrice()) <= 0 && goods.getPrice().compareTo(couponAccount) > 0) { - BigDecimal finalPrice = goods.getPrice().subtract(couponAccount); - money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil - .mul(MoneyBigDecimalUtil.mul(finalPrice, goods.getRate()), new BigDecimal("0.01")), - MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); - - } else {// 涓嶈兘鐢ㄥ埜 - money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil - .mul(MoneyBigDecimalUtil.mul(goods.getPrice(), goods.getRate()), new BigDecimal("0.01")), - MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); - } - } - - if (goods.getGoodsType() == Constant.SOURCE_TYPE_VIP) { - money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil - .mul(MoneyBigDecimalUtil.mul(goods.getCouponStartPrice(), goods.getRate()), new BigDecimal("0.01")), - MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); - } - - // 浜笢鍟嗗搧鐗规畩澶勭悊 - if (goods.getGoodsType() == Constant.SOURCE_TYPE_JD) - return BigDecimalUtil.getWithNoZera(MoneyBigDecimalUtil.mul(money, new BigDecimal("0.9"))); - else - return BigDecimalUtil.getWithNoZera(money); - } - - /** - * 璁$畻鍟嗗搧鍒稿悗浠凤紝娌℃湁鍒稿垯杩斿洖鍘熶环 - * - * @param goodsBrief - * @return - */ - public static BigDecimal getAfterUseCouplePrice(CommonGoods goods) { - if (StringUtil.isNullOrEmpty(goods.getCouponInfo()) || "鏃�".equals(goods.getCouponInfo())) { - return goods.getPrice(); - } else { - List<BigDecimal> list = TaoBaoCouponUtil.getCouponInfo(goods.getCouponInfo()); - BigDecimal startFee = list.get(0); - BigDecimal couponAccount = list.get(1); - if (startFee.compareTo(goods.getPrice()) <= 0 && goods.getPrice().compareTo(couponAccount) > 0) { - BigDecimal finalPrice = goods.getPrice().subtract(couponAccount); - return finalPrice; - } else {// 涓嶈兘鐢ㄥ埜 - return goods.getPrice(); - } - } - } -} +package com.yeshi.fanli.util; + +import java.math.BigDecimal; +import java.util.List; + +import org.springframework.stereotype.Component; +import org.yeshi.utils.BigDecimalUtil; + +import com.yeshi.fanli.entity.goods.CommonGoods; +import com.yeshi.fanli.util.taobao.TaoBaoCouponUtil; +import org.yeshi.utils.MoneyBigDecimalUtil; + +@Component +public class CommonGoodsUtil { + + /** + * 鍟嗗搧浣i噾鍖呭惈楼绗﹀彿 + * + * @param goods + * @param rate + * @return + */ + public static String getCommissionInfo(CommonGoods goods, BigDecimal rate) { + return "楼" + getCommission(goods, rate).toString(); + } + + /** + * 鍟嗗搧浣i噾 + * + * @param goods + * @param rate + * @return + */ + public static BigDecimal getCommission(CommonGoods goods, BigDecimal rate) { + BigDecimal money = null; + + if (StringUtil.isNullOrEmpty(goods.getCouponInfo()) || goods.getCouponInfo().trim().equalsIgnoreCase("鏃�")) { + BigDecimal price = goods.getPrice(); + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil + .mul(MoneyBigDecimalUtil.mul(price, goods.getRate()), new BigDecimal("0.01")), + MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); + + } else// 鏈夊埜 + { + List<BigDecimal> list = TaoBaoCouponUtil.getCouponInfo(goods.getCouponInfo()); + BigDecimal startFee = list.get(0); + BigDecimal couponAccount = list.get(1); + if (startFee.compareTo(goods.getPrice()) <= 0 && goods.getPrice().compareTo(couponAccount) > 0) { + BigDecimal finalPrice = goods.getPrice().subtract(couponAccount); + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil + .mul(MoneyBigDecimalUtil.mul(finalPrice, goods.getRate()), new BigDecimal("0.01")), + MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); + + } else {// 涓嶈兘鐢ㄥ埜 + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil + .mul(MoneyBigDecimalUtil.mul(goods.getPrice(), goods.getRate()), new BigDecimal("0.01")), + MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); + } + } + + if (goods.getGoodsType() == Constant.SOURCE_TYPE_VIP) { + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil + .mul(MoneyBigDecimalUtil.mul(goods.getCouponStartPrice(), goods.getRate()), new BigDecimal("0.01")), + MoneyBigDecimalUtil.div(rate, new BigDecimal(100))); + } + + // 浜笢鍟嗗搧鐗规畩澶勭悊 + if (goods.getGoodsType() == Constant.SOURCE_TYPE_JD) + return BigDecimalUtil.getWithNoZera(MoneyBigDecimalUtil.mul(money, new BigDecimal("0.9"))); + else + return BigDecimalUtil.getWithNoZera(money); + } + + /** + * 璁$畻鍟嗗搧鍒稿悗浠凤紝娌℃湁鍒稿垯杩斿洖鍘熶环 + * + * @param goodsBrief + * @return + */ + public static BigDecimal getAfterUseCouplePrice(CommonGoods goods) { + if (StringUtil.isNullOrEmpty(goods.getCouponInfo()) || "鏃�".equals(goods.getCouponInfo())) { + return goods.getPrice(); + } else { + List<BigDecimal> list = TaoBaoCouponUtil.getCouponInfo(goods.getCouponInfo()); + BigDecimal startFee = list.get(0); + BigDecimal couponAccount = list.get(1); + if (startFee.compareTo(goods.getPrice()) <= 0 && goods.getPrice().compareTo(couponAccount) > 0) { + BigDecimal finalPrice = goods.getPrice().subtract(couponAccount); + return finalPrice; + } else {// 涓嶈兘鐢ㄥ埜 + return goods.getPrice(); + } + } + } +} -- Gitblit v1.8.0