public function addToCart(Request $req) { $user = $req->user; $cart = Cart::firstOrCreate(['user_id' => $user, 'status' => "pending"]); $addProduct = new CartOrder(); $addProduct->cart_id = $cart->id; $addProduct->pro_id = $req->product; $addProduct->quanlity = $req->qty; $addProduct->save(); return redirect('/'); }
public function addCart(Request $request) { $keys = 'psid,count,quickly'; $data = $this->tipsValidate($request, 'order.cart', $keys); $psid = $data['psid']; DB::beginTransaction(); $ps = ProductSize::where('id', $psid)->lockForUpdate()->first(); //库存不足 if ($ps->count < $data['count']) { DB::rollback(); return $this->failure('order.failure_cart_stock_less'); } //快速购买模式 if ($data['quickly']) { DB::rollback(); return $this->success('order.success_quickly', url('m/to/order') . '?cart[]=' . $psid . '&buy_cnt[' . $psid . ']=' . $data['count']); } else { //加入购物车 Cart::firstOrCreate(['psid' => $psid, 'uid' => $this->user->getKey()])->increment('count', $data['count']); DB::commit(); return $this->success('order.success_cart', FALSE); } }