From e1a62ec62e7331d97af9302e90e1ce44af8235eb Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 27 一月 2021 15:26:55 +0800
Subject: [PATCH] 拼多多授权绑定

---
 fanli/src/main/java/com/yeshi/fanli/util/suning/SuningUtil.java |   30 ++++++++++++++++++++----------
 1 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/suning/SuningUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/suning/SuningUtil.java
index a193353..99327b3 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/suning/SuningUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/suning/SuningUtil.java
@@ -6,7 +6,7 @@
 import org.yeshi.utils.NumberUtil;
 
 import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
-import com.yeshi.fanli.util.MoneyBigDecimalUtil;
+import org.yeshi.utils.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.StringUtil;
 
 public class SuningUtil {
@@ -15,17 +15,27 @@
 		BigDecimal hundred = new BigDecimal(100);
 		rate = MoneyBigDecimalUtil.div(rate, hundred);
 
-		BigDecimal afterUseCouponPrice = new BigDecimal(goods.getCommodityInfo().getCommodityPrice());
-		if (goods.getCouponInfo() != null && !StringUtil.isNullOrEmpty(goods.getCouponInfo().getCouponUrl())) {
-			// 鏈夊埜
-			BigDecimal startPrice = new BigDecimal(goods.getCouponInfo().getBounsLimit());
-			if (afterUseCouponPrice.compareTo(startPrice) >= 0) {
-				afterUseCouponPrice = afterUseCouponPrice.subtract(startPrice);
-			}
+		String commodityPrice = goods.getCommodityInfo().getCommodityPrice();
+		if (StringUtil.isNullOrEmpty(commodityPrice)) {
+			commodityPrice = goods.getCommodityInfo().getSnPrice();
 		}
 
-		BigDecimal money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.div(
-				afterUseCouponPrice.multiply(new BigDecimal(goods.getCommodityInfo().getRate())), new BigDecimal(100)),
+		BigDecimal afterUseCouponPrice = new BigDecimal(commodityPrice);
+		if (goods.getCouponInfo() != null && !StringUtil.isNullOrEmpty(goods.getCouponInfo().getCouponUrl())) {
+			// 鏈夊埜
+			BigDecimal startPrice = null;
+			if (StringUtil.isNullOrEmpty(goods.getCouponInfo().getBounsLimit())) {
+				startPrice = new BigDecimal(goods.getCouponInfo().getCouponValue());
+			} else
+				startPrice = new BigDecimal(goods.getCouponInfo().getBounsLimit());
+			if (afterUseCouponPrice.compareTo(startPrice) >= 0) {
+				afterUseCouponPrice = afterUseCouponPrice.subtract(new BigDecimal(goods.getCouponInfo().getCouponValue()));
+			}
+		}
+		
+		BigDecimal commission=MoneyBigDecimalUtil.mul(afterUseCouponPrice,MoneyBigDecimalUtil.div(new BigDecimal(goods.getCommodityInfo().getRate()), new BigDecimal(100),5));
+
+		BigDecimal money = MoneyBigDecimalUtil.mul(commission,
 				rate);
 		return BigDecimalUtil.getWithNoZera(money).setScale(2);
 	}

--
Gitblit v1.8.0