From 856d99bb5adf7f8670206b01750bc0260b8666d2 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期三, 01 二月 2023 15:36:55 +0800
Subject: [PATCH] 修复客户端特价首页商品列表无数据的问题
---
fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java | 164 ++++++++++++++++++++++++++++++++++--------------------
1 files changed, 103 insertions(+), 61 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 37f7522..a119ab0 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/CommonGoodsUtil.java
@@ -1,61 +1,103 @@
-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("鏃�")) {
- money = MoneyBigDecimalUtil.mul(
- MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(goods.getPrice(), 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)));
- }
- }
- return BigDecimalUtil.getWithNoZera(money);
- }
-}
+package com.yeshi.fanli.util;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+import com.yeshi.fanli.util.taobao.TaoBaoUtil;
+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();
+ }
+ }
+ }
+
+ public static String getGoodsId(String goodsId, int goodsType) {
+ if (goodsType == Constant.SOURCE_TYPE_TAOBAO) {
+ return TaoBaoUtil.getAuctionId(goodsId);
+ }
+ return goodsId;
+ }
+}
--
Gitblit v1.8.0