From bbe0a2fd03063316e50cf141986bda984599bbda Mon Sep 17 00:00:00 2001 From: 935090232@qq.com <ak473600000> Date: Tue, 22 Feb 2022 23:41:42 +0800 Subject: [PATCH] Merge branch 'developer' --- 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