Hi,大家好,我是Steafan。在上篇博文中我们完成了购物车核心功能的开发,在本篇博文中,我们将完成购物车中最后的两个功能,它们并不是很难,一起来看看吧。
无论是全选还是全返选,单选还是单反选,都会调用selectOrUnSelect方法,其核心都是数据库中商品选择状态发生改变,所以只需要修改商品的选择状态即可。
public ServerResponse<CartVo> selectOrUnSelect (Integer userId,Integer productId,Integer checked){
cartMapper.checkedOrUncheckedProduct(userId,productId,checked);
return this.list(userId);
}
传入当前登录用户的userId,通过checkedOrUncheckedProduct方法进行查询,该方法会根据当登录用户传入的productId更新数据中商品的checked状态。这里需要注意,如果用户登录了,但是没有选择任何商品即productId为空时不能响应其操作,会出现数据异常,此时需要用到MyBatis中封装好的校验字段是否为空的方法
<if