调整购物车接口,支持 add 商品时,适配前端可能要删除的情况

This commit is contained in:
YunaiV 2023-05-03 00:30:02 +08:00
parent f7fe9ad7b0
commit 9980b12551
2 changed files with 7 additions and 3 deletions

View File

@ -3,7 +3,6 @@ package cn.iocoder.yudao.module.trade.controller.app.cart.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
@Schema(description = "用户 App - 购物车添加购物项 Request VO")
@ -16,7 +15,6 @@ public class AppTradeCartAddReqVO {
@Schema(description = "新增商品数量", required = true, example = "1")
@NotNull(message = "数量不能为空")
@Min(message = "数量必须大于 0", value = 1L)
private Integer count;
@Schema(description = "是否添加到购物车", required = true, example = "true")

View File

@ -58,9 +58,15 @@ public class TradeCartServiceImpl implements TradeCartService {
cart.getCount() + addReqVO.getCount() : addReqVO.getCount();
ProductSkuRespDTO sku = checkProductSku(addReqVO.getSkuId(), count);
// 情况零特殊count 小于等于 0说明前端项目删除
// 情况一存在则进行数量更新
if (cart != null) {
cartMapper.updateById(new TradeCartDO().setId(cart.getId()).setCount(count));
// 特殊情况如果 count 小于等于 0说明前端想要删除
if (count <= 0) {
cartMapper.deleteById(cart.getId());
} else {
cartMapper.updateById(new TradeCartDO().setId(cart.getId()).setCount(count));
}
return cart.getId();
// 情况二不存在则进行插入
} else {