middleware('auth'); View::share('nav', 2); } public function index() { $orders = Order::where('user_id', Auth::id()) ->Gift() ->where('state', '<>', Order::ORDER_CLOSED) ->orderBy('id', 'desc') ->get(); return view('gifts.index', compact('orders')); } //活动和优惠券 未支付 public function unpay() { $orders = Order::UnAddress() ->Gift() ->where('user_id', Auth::id()) ->orderBy('id', 'desc') ->get(); return view('gifts.index', compact('orders')); } //已支付报名课程和活动 public function paid() { $orders = Order::UnDeliver() ->Gift() ->where('user_id', Auth::id()) ->orderBy('id', 'desc') ->get(); return view('gifts.index', compact('orders')); } public function delivered() { $orders = Order::Delivered() ->Gift() ->where('user_id', Auth::id()) ->orderBy('id', 'desc') ->get(); return view('gifts.index', compact('orders')); } public function signed() { $orders = Order::Delivered() ->Gift() ->where('user_id', Auth::id()) ->orderBy('id', 'desc') ->get(); return view('gifts.index', compact('orders')); } public function show($orderid) { $order = Order::where('orderid', $orderid)->firstOrFail(); return view('orders.show', compact('order')); } public function sign($orderid) { $order = Order::where('orderid', $orderid)->firstOrFail(); try { $order->signin(); return $this->success('签收成功', route('gifts.signed')); } catch (\Exception $e) { return $this->error('签收失败' . $e->getmessage()); } } //设置收货地址 public function address(Request $request, Order $order) { $callback = $request->callback; if ($request->isMethod('post')) { if ($request->address_id) { $address = \Address::get($request->address_id); } else { $address = \Address::store( [ 'user_id' => Auth::id(), 'name' => $request->name, 'mobile' => $request->mobile, 'province_sn' => $request->province_sn, 'city_sn' => $request->city_sn, 'area_sn' => $request->area_sn, 'address' => $request->address, ] ); } $express = new OrderExpress(['instance' => $address]); $order->express()->save($express); $order->state = Order::ORDER_PAID; $order->save(); return $this->success('设置地址成功', $callback); } else { $provinces = \Area::index(0); $address_list = \Address::lists(Auth::id()); return view('gifts.address', compact('provinces', 'order', 'address_list', 'callback')); } } }