From d423be0136f514954914529298e7001ad963b00c Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期三, 26 四月 2023 18:37:51 +0800
Subject: [PATCH] modify

---
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/order/ShoppingCartServiceImpl.java |   76 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 76 insertions(+), 0 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/order/ShoppingCartServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/order/ShoppingCartServiceImpl.java
index 97b4cde..82040bc 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/order/ShoppingCartServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/order/ShoppingCartServiceImpl.java
@@ -1,10 +1,23 @@
 package com.ruoyi.system.service.impl.order;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.system.constant.AppErrorConstant;
+import com.ruoyi.system.domain.dto.AppBaseBathDto;
+import com.ruoyi.system.domain.dto.AppShoppingCartAddDto;
+import com.ruoyi.system.domain.dto.AppShoppingCartChangeDto;
+import com.ruoyi.system.domain.pojo.activity.ActivityGoods;
+import com.ruoyi.system.domain.pojo.goods.Goods;
 import com.ruoyi.system.domain.pojo.order.ShoppingCart;
 import com.ruoyi.system.mapper.order.ShoppingCartMapper;
+import com.ruoyi.system.service.goods.GoodsService;
 import com.ruoyi.system.service.order.ShoppingCartService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import java.util.Date;
 
 /**
  * <p>
@@ -17,4 +30,67 @@
 @Service
 public class ShoppingCartServiceImpl extends ServiceImpl<ShoppingCartMapper, ShoppingCart> implements ShoppingCartService {
 
+    @Resource
+    private GoodsService goodsService;
+
+    @Resource
+    private ShoppingCartMapper shoppingCartMapper;
+
+    /**
+     * 添加购物车
+     * @param appShoppingCartAddDto
+     */
+    @Override
+    public void addShoppingCart(AppShoppingCartAddDto appShoppingCartAddDto){
+        Long goodsId = appShoppingCartAddDto.getGoodsId();
+        Goods goods = goodsService.getById(goodsId);
+        if(goods.getGoodsStatus()!=1){
+            throw new ServiceException(AppErrorConstant.GOODS_DOWN);
+        }
+        LambdaQueryWrapper<ShoppingCart> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(ShoppingCart::getDelFlag, 0).eq(ShoppingCart::getGoodsId, goodsId);
+        ShoppingCart shoppingCart = this.getOne(queryWrapper);
+        if(shoppingCart==null){
+            shoppingCart = new ShoppingCart();
+            shoppingCart.setUserId(appShoppingCartAddDto.getUserId());
+            shoppingCart.setShopId(appShoppingCartAddDto.getShopId());
+            shoppingCart.setBuyNum(appShoppingCartAddDto.getBuyNum());
+            shoppingCart.setDelFlag(0);
+            shoppingCart.setCreateTime(new Date());
+            this.save(shoppingCart);
+        }else{
+            shoppingCart.setBuyNum(shoppingCart.getBuyNum()+appShoppingCartAddDto.getBuyNum());
+            shoppingCart.setUpdateTime(new Date());
+            this.saveOrUpdate(shoppingCart);
+        }
+    }
+
+    /**
+     * 修改购物车数量
+     * @param appShoppingCartChangeDto
+     */
+    @Override
+    public void changeShoppingCart(AppShoppingCartChangeDto appShoppingCartChangeDto){
+        Long goodsId = appShoppingCartChangeDto.getGoodsId();
+        Goods goods = goodsService.getById(goodsId);
+        if(goods.getGoodsStatus()!=1){
+            throw new ServiceException(AppErrorConstant.GOODS_DOWN);
+        }
+        LambdaQueryWrapper<ShoppingCart> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.eq(ShoppingCart::getDelFlag, 0).eq(ShoppingCart::getGoodsId, goodsId);
+        ShoppingCart shoppingCart = this.getOne(queryWrapper);
+        shoppingCart.setBuyNum(appShoppingCartChangeDto.getBuyNum());
+        shoppingCart.setUpdateTime(new Date());
+        this.saveOrUpdate(shoppingCart);
+    }
+
+    /**
+     * 删除购物车
+     * @param appBaseBathDto
+     */
+    @Override
+    public void deleteShoppingCart(AppBaseBathDto appBaseBathDto){
+        String ids = appBaseBathDto.getIds();
+        shoppingCartMapper.deleteShoppingCartByIds(ids);
+    }
 }

--
Gitblit v1.7.1