添加/查看/清空购物车 -----苍穹外卖day7

1.添加购物车

产品原型

接口设计

新增类使用post

需求分析

数据库查询过程中设计了冗余字段,意义在于提高查询速度,不用和菜品表中去连接查询,直接查询购物车表。但是冗余字段必须相对稳定不能经常变化

代码开发

在使用DTO与实体类交接的时候,我们在service层进行交接

@Service
@Slf4j
public class ShoppingCartServiceImpl implements ShoppingCartService {

    @Autowired
    ShoppingCartMapper shoppingCartMapper;

    @Override
    public void addShoppingCart(ShoppingCartDTO shoppingCartDTO) {
   //判断当前加入购物车的商品是否已经存在了,如果存在只需数量加一,如果不存在则插入一条数据
        //创建实体类用于查询mapper
        ShoppingCart shoppingCart = new ShoppingCart();
        /*拷贝DTO*/
        BeanUtils.copyProperties(shoppingCartDTO,shoppingCart);
        Long userId = BaseContext.getCurrentId();
        /*查询mapper*/
        List<ShoppingCart> list = shoppingCartMapper.list(shoppingCart);
        /*判断list*/
        if(list != null && list.size()>0){
             ShoppingCart cart = list.get(0);
            shoppingCart.setNumber(shoppingCart.getNumber() + 1);
            shoppingCartMapper.updateNumberById(cart);
        }
        shoppingCartMapper.insert(shoppingCart);
    }
}

2.查看购物车

产品原型

 

接口设计

代码开发

3.清空购物车

代码开发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值