修改商品数量

修改商品数量

页面发起请求

后台实现

Controller

@PutMapping
public ResponseEntity<Void> updateNum(@RequestBody Cart cart){
    this.cartService.updateCarts(cart);
    return ResponseEntity.noContent().build();
}

Service

public void updateCarts(Cart cart) {
    // 获取登陆信息
    UserInfo userInfo = LoginInterceptor.getUserInfo();
    String key = LEARN_CART_KEY + userInfo.getId();
    // 获取hash操作对象
    BoundHashOperations<String, Object, Object> hashOperations = 
this.redisTemplate.boundHashOps(key);
    // 获取购物车信息
    String cartJson = hashOperations.get(cart.getSkuId().toString()).toString();
    Cart cart1 = JsonUtils.parse(cartJson, Cart.class);
    // 更新数量
    cart1.setNum(cart.getNum());
    // 写入购物车
    hashOperations.put(cart.getSkuId().toString(), JsonUtils.serialize(cart1));
}

删除购物车商品

页面发起请求

注意:后台成功响应后,要把页面的购物车中数据也删除

后台实现

Controller

@DeleteMapping("{skuId}")
public ResponseEntity<Void> deleteCart(@PathVariable("skuId") String skuId) {
    this.cartService.deleteCart(skuId);
    return ResponseEntity.ok().build();
}

Service

public void deleteCart(String skuId) {
    // 获取登录用户
    UserInfo user = LoginInterceptor.getLoginUser();
    String key = KEY_PREFIX + user.getId();
    BoundHashOperations<String, Object, Object> hashOps = 
this.redisTemplate.boundHashOps(key);
    hashOps.delete(skuId);
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值