如果购物车中存在该商品则直接叠加商品数量,这块不考虑库存的问题吗?
// 从数据库中查询该商品是否已经在购物车中
if ($cart = $user->cartItems()->where('product_sku_id', $skuId)->first()) {
// 如果存在则直接叠加商品数量
$cart->update([
'amount' => $cart->amount + $amount,
]);
} else {
...
已知的是在request中判断了本次加入购物车商品数量与库存的判断。
请教,那么
//如果商品存在则直接叠加商品数量
之前,不需要再判断一下库存吗?
有可能 叠加后的数量会超过实际库存
关于 LearnKu
你说的有道理。
但是加入购物车这个操作只是初步的校验,在购物车页面用户还是可以手动去修改下单数量,而在之后下单时还会有一步的库存校验,那里才是保证用户不会下超过库存数量的订单。
而这里如果要计算叠加后是否超过库存会让代码逻辑变得复杂,而带来的收益却不是很明显,所以可以选择不去做那么严格的校验。