购物车功能开发-删除和修改购物项接口

DBC 1.6K 0
其操作和清空购物车是不一样的
    /**
     * 删除购物项
     * @param productId
     */
    @Override
    public void deleteItem(long productId) {

        BoundHashOperations<String,Object,Object> mycart =  getMyCartOps();

        mycart.delete(productId);

    }
温馨提示

清空购物车是直接将最前面的key给删掉了,而这个删除是进入到了我们的购物车里面,删掉的是productId

方便你看,避免你翻来翻去
    /**
     * 清空购物车
     */
    @Override
    public void clear() {

        String cartKey = getCartKey();
        redisTemplate.delete(cartKey);

    }
修改商品数量
    @Override
    public void changeItemNum(CartItemRequest cartItemRequest) {
        BoundHashOperations<String,Object,Object> mycart =  getMyCartOps();

        Object cacheObj = mycart.get(cartItemRequest.getProductId());

        if(cacheObj==null){throw new BizException(BizCodeEnum.CART_FAIL);}

        String obj = (String)cacheObj;

        // TODO 这个位置可以对传进来的商品数量进行判断  这里可以推荐使用 hibernate validator
        //可以自己去看一下,可能未来博主有文章 直接复制搜索就好了
        CartItemVO cartItemVO =  JSON.parseObject(obj,CartItemVO.class);
        cartItemVO.setBuyNum(cartItemRequest.getBuyNum());
        mycart.put(cartItemRequest.getProductId(),JSON.toJSONString(cartItemVO));
    }

发表评论 取消回复
表情 图片 链接 代码

分享