From 1d0c686d7894463770b2412d37dec11568e35e5a Mon Sep 17 00:00:00 2001
From: wzy <wzy19931122ai@163.com>
Date: Sat, 20 Nov 2021 21:18:48 +0800
Subject: [PATCH] fix
---
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java | 79 ++++++++++++---------------------------
1 files changed, 25 insertions(+), 54 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java
index ab83b88..aed6be7 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java
@@ -1,8 +1,6 @@
package com.matrix.system.shopXcx.api.service;
-import com.matrix.biz.bean.BizUser;
-import com.matrix.component.redis.RedisUserLoginUtils;
-import com.matrix.core.exception.GlobleException;
+import com.matrix.system.common.init.UserCacheManager;
import com.matrix.core.tools.LogUtil;
import com.matrix.system.common.dao.BusParameterSettingsDao;
import com.matrix.system.shopXcx.api.vo.ShopCartBillVo;
@@ -23,7 +21,7 @@
@Autowired
private ShopShoppingCartDao shoppingCartDao;
@Autowired
- private RedisUserLoginUtils redisUserLoginUtils;
+ private UserCacheManager userCacheManager;
@Autowired
WxShopCouponService shopCouponService;
@@ -33,7 +31,7 @@
@Autowired
BusParameterSettingsDao busParameterSettingsDao;
-
+ //计算购车选中项总价以及优惠金额
public ShopCartBillVo buildShopCartBillVo(List<ShopCartVo> cartList) {
ShopCartBillVo shopCartBillVo = new ShopCartBillVo();
@@ -65,23 +63,10 @@
}
shopCartBillVo.setCartCount(cartCount);
shopCartBillVo.setSelectCount(selectCount);
-
return shopCartBillVo;
}
- /**
- * 计算用户的购物车产品优惠分组
- *
- * @return
- * @param shopId
- */
- public List<ShopCartVo> findUserCartList(Long shopId,Integer cartType) {
- BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- String userId = loginUser.getOpenId();
- List<ShopShoppingCart> list = shoppingCartDao.selectByCartUserId(shopId,userId,cartType);
- List<ShopCartVo> cartList = buildShopCart(list);
- return cartList;
- }
+
/**
@@ -91,7 +76,7 @@
* @return
*/
@SuppressWarnings("unchecked")
- private List<ShopCartVo> buildShopCart(List<ShopShoppingCart> list) {
+ public List<ShopCartVo> buildShopCart(List<ShopShoppingCart> list) {
//定义购物车优惠分组
@@ -112,23 +97,19 @@
//查询购物车中的产品匹配上的所有优惠活动
for (ShopShoppingCart shoppingCart : list) {
- if(shoppingCart.getCartType()==ShopShoppingCart.CAR_TYPE_SCORE){
- // 积分兑换产品不参加优惠
- def.getCartList().add(shoppingCart);
- }else{
- List<ShopCoupon> shopCoupons = shopCouponService.getHdListByProductId(shoppingCart.getCartProductId());
- if (CollectionUtils.isNotEmpty(shopCoupons)) {
- // 把所有的优惠券和购物车条目先关联一下,后续可以计算优惠升级的情况
- shoppingCart.setShopCoupons(shopCoupons);
- for (ShopCoupon shopCoupon : shopCoupons) {
- shopCouponMap.put(shopCoupon.getId(), shopCoupon);
- }
- } else {
- // 该产品没有参加优惠券
- def.getCartList().add(shoppingCart);
- }
- }
+ List<ShopCoupon> shopCoupons = shopCouponService.getHdListByProductId(shoppingCart.getCartProductId());
+ if (CollectionUtils.isNotEmpty(shopCoupons)) {
+ // 把所有的优惠券和购物车条目先关联一下,后续可以计算优惠升级的情况
+ shoppingCart.setShopCoupons(shopCoupons);
+ for (ShopCoupon shopCoupon : shopCoupons) {
+ shopCouponMap.put(shopCoupon.getId(), shopCoupon);
+ }
+ } else {
+ // 该产品没有参加优惠券
+ def.getCartList().add(shoppingCart);
+
+ }
}
//计算没有优惠组的价格
@@ -270,28 +251,19 @@
List<ShopShoppingCart> cartList = shopCartVo.getCartList();
// 计算总价
BigDecimal sum = BigDecimal.ZERO;
- //抵扣总积分
- BigDecimal scoreSum = BigDecimal.ZERO;
// 选中项总价
BigDecimal selectSum = BigDecimal.ZERO;
for (ShopShoppingCart shopShoppingCart : cartList) {
- if(ShopShoppingCart.CAR_TYPE_MICRO==shopShoppingCart.getCartType()){
- //直接购买
- sum = sum.add(shopShoppingCart.getPrice().multiply(BigDecimal.valueOf(shopShoppingCart.getCartNumber())));
- if (shopShoppingCart.getIsSelected() == 1) {
+ sum = sum.add(shopShoppingCart.getPrice().multiply(BigDecimal.valueOf(shopShoppingCart.getCartNumber())));
+ if (shopShoppingCart.getIsSelected() == 1) {
+ if(shopShoppingCart.getCartType()==ShopShoppingCart.CAR_TYPE_MICRO){
selectSum = selectSum
.add(shopShoppingCart.getPrice().multiply(BigDecimal.valueOf(shopShoppingCart.getCartNumber())));
- }
- }else if(ShopShoppingCart.CAR_TYPE_SCORE==shopShoppingCart.getCartType()){
- //积分兑换
- sum = sum.add(shopShoppingCart.getScorePrice().multiply(BigDecimal.valueOf(shopShoppingCart.getCartNumber())));
- if (shopShoppingCart.getIsSelected() == 1) {
+ }else {
selectSum = selectSum
.add(shopShoppingCart.getScorePrice().multiply(BigDecimal.valueOf(shopShoppingCart.getCartNumber())));
- scoreSum = scoreSum.add(new BigDecimal(shopShoppingCart.getScoreCount() * shopShoppingCart.getCartNumber()));
}
- }else{
- throw new GlobleException("参数错误");
+
}
}
@@ -322,10 +294,9 @@
}
}
} else {
- shopCartVo.setSubtotal(selectSum);
- shopCartVo.setSrcPrice(selectSum);
- shopCartVo.setSatisfactionCoupon(true);
+ shopCartVo.setSubtotal(selectSum);
+ shopCartVo.setSrcPrice(selectSum);
+ shopCartVo.setSatisfactionCoupon(true);
}
- shopCartVo.setScorePay(scoreSum);
}
}
--
Gitblit v1.9.1