From 529ad9dd8d1876b57e852bc45b602ba3ccc8df2a Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 10 Apr 2024 17:19:08 +0800 Subject: [PATCH] 公告-首页公告调整 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallShoppingCartServiceImpl.java | 20 +++++++++++++++++--- 1 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallShoppingCartServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallShoppingCartServiceImpl.java index f0b7090..ad51eb4 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallShoppingCartServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallShoppingCartServiceImpl.java @@ -13,6 +13,7 @@ import cc.mrbird.febs.mall.mapper.MallShoppingCartMapper; import cc.mrbird.febs.mall.service.IApiMallShoppingCartService; import cc.mrbird.febs.mall.vo.ShoppingCartGoodsVo; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -47,10 +48,17 @@ @Override @Transactional(rollbackFor = Exception.class) public void addGoodsToCart(List<AddCartDto> addCartDtoList) { + Long memberId = LoginUserUtil.getLoginUser().getId(); for (AddCartDto addCartDto : addCartDtoList) { Long goodsId = null; Long skuId = null; Long styleId = null; + MallShoppingCart cartGoods = null; + + if (addCartDto.getType() == null) { + addCartDto.setType(1); + } + if (addCartDto.getType() == 1) { MallGoodsSku sku = mallGoodsSkuMapper.selectById(addCartDto.getSkuId()); @@ -61,6 +69,8 @@ goodsId = sku.getGoodsId(); skuId = sku.getId(); styleId = sku.getStyleId(); + + cartGoods = this.baseMapper.selectCartGoodsBySkuId(addCartDto.getSkuId(), memberId); } else { MallGoods mallGoods = mallGoodsMapper.selectById(addCartDto.getSkuId()); if (mallGoods == null) { @@ -68,10 +78,14 @@ } goodsId = mallGoods.getId(); - } - Long memberId = LoginUserUtil.getLoginUser().getId(); - MallShoppingCart cartGoods = this.baseMapper.selectCartGoodsBySkuId(addCartDto.getSkuId(), memberId); + LambdaQueryWrapper<MallShoppingCart> cartQuery = new LambdaQueryWrapper<>(); + cartQuery.eq(MallShoppingCart::getGoodsId, goodsId) + .eq(MallShoppingCart::getMemberId, memberId) + .last("limit 1"); + cartGoods = this.baseMapper.selectOne(cartQuery); + } + if (cartGoods == null) { cartGoods = new MallShoppingCart(); cartGoods.setGoodsId(goodsId); -- Gitblit v1.9.1