查看购物车
controller:
@GetMapping("/list")
public Result select(){
List<ShoppingCart>shoppingCarts= shopCartService.select();
return Result.success(shoppingCarts);
}
service:
public List<ShoppingCart> select() {
ShoppingCart shoppingCart = new ShoppingCart();
shoppingCart.setUserId(BaseContext.getCurrentId());
List<ShoppingCart> list = shopCartMapper.list(shoppingCart);
return list;
}
mapper:
<select id="list" resultType="com.sky.entity.ShoppingCart">
select * from sky_take_out.shopping_cart
<where>
<if test="dishId!=null">
dish_id=#{dishId}
</if>
<if test="setmealId!=null">
setmeal_id=#{setmealId}
</if>
<if test="dishFlavor!=null">
and dish_flavor=#{dishFlavor}
</if>
and user_id=#{userId}
</where>
</select>
清空购物车
controller:
@DeleteMapping("/clean")
public Result clean(){
shopCartService.clean();
return Result.success();
}
service:
@Override
public void clean() {
shopCartMapper.clean(BaseContext.getCurrentId());
}
mapper:
@Delete("delete from sky_take_out.shopping_cart where user_id=#{currentId}")
void clean(Long currentId);
删除一个商品:
当商品的数量为时就删除这个商品
controller
@PostMapping ("/sub")
public Result deleteOne(@RequestBody ShoppingCartDTO shoppingCartDTO){
shopCartService.updateOne(shoppingCartDTO);
return Result.success();
}
service
@Override
public void updateOne(ShoppingCartDTO shoppingCartDTO) {
ShoppingCart shoppingCart = new ShoppingCart();
BeanUtils.copyProperties(shoppingCartDTO,shoppingCart);
shoppingCart.setUserId(BaseContext.getCurrentId());
shopCartMapper.updateOne(shoppingCart);
List<ShoppingCart> list = shopCartMapper.list(shoppingCart);
ShoppingCart shoppingCart1 = list.get(0);
if (shoppingCart1.getNumber()==0){
shopCartMapper.deleteById(shoppingCart1.getId());
}
}
mapper:
更改数量
<update id="updateOne">
update sky_take_out.shopping_cart
set number=number - 1
<where>
<if test="dishId!=null">
dish_id=#{dishId}
</if>
<if test="setmealId!=null">
setmeal_id=#{setmealId}
</if>
<if test="dishFlavor!=null">
and dish_flavor=#{dishFlavor}
</if>
and user_id=#{userId}
</where>
</update>
删除数量为的商品:
@Delete("delete from sky_take_out.shopping_cart where id=#{id}")
void deleteById(Long id);