заказа в корзине: python def decrease_order_quantity(cart, product_id, amount): """ Уменьшает количество заказа для указанного продукта в корзине. :param cart: Словарь, представляющий корзину покупок. :param product_id: Уникальный идентификатор продукта. :param amount: Количество, на которое нужно уменьшить заказ. """ if product_id in cart: cart[product_id] -= amount if cart[product_id] < 0: cart[product_id] = 0
请根据以上模板提供具体的代码或文本内容,以便我能够完成翻译。
@PostMapping("/sub")
public R sub(@RequestBody ShoppingCart shoppingCart) {
Long dishId = shoppingCart.getDishId();
LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(ShoppingCart::getUserId, BaseContext.getCurrentID());
if (dishId != null) {
lambdaQueryWrapper.eq(ShoppingCart::getDishId, dishId);
} else {
lambdaQueryWrapper.eq(ShoppingCart::getSetmealId, shoppingCart.getSetmealId());
}
ShoppingCart shoppingCartOne = shoppingCartService.getOne(lambdaQueryWrapper);
Integer number = shoppingCartOne.getNumber();
if (number > 1) {
shoppingCartOne.setNumber(number - 1);
shoppingCartService.updateById(shoppingCartOne);
} else {
shoppingCartService.removeById(shoppingCartOne);
}
ShoppingCart res = shoppingCartService.getOne(lambdaQueryWrapper);
if (res != null) {
return R.success(res);
} else {
return R.success(new ShoppingCart());
}
}