其操作和清空购物车是不一样的
/** * 删除购物项 * @param productId */ @Override public void deleteItem(long productId) { BoundHashOperations<String,Object,Object> mycart = getMyCartOps(); mycart.delete(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)); }
本文作者为DBC,转载请注明。