其操作和清空购物车是不一样的
/**
* 删除购物项
* @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,转载请注明。