Beispiel #1
0
 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('/');
 }
Beispiel #2
0
 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);
     }
 }