コード例 #1
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request, Order $order)
 {
     // @todo: request validation
     // create a new share with contact information
     $share = new Share($request->only('email', 'phone', 'comments'));
     $share->order_id = $order->id;
     $share->save();
     // attach the share items
     $shareItems = $order->getShareItems($request->input('products'));
     $share->items()->saveMany($shareItems);
     return redirect()->action('ShareController@show', [$order->id, $share->id]);
 }
コード例 #2
0
 private function generateOrderSharesFor($group)
 {
     $users = User::all();
     foreach ($group->orders as $order) {
         foreach ($users->random(6)->values()->all() as $user) {
             $share = new Share(['email' => $user->email, 'order_id' => $order->id]);
             $share->save();
             $items = [];
             $order->products->random(5)->each(function ($item) {
                 $items[$item->id] = rand(1, 7) * $item->pivot->step_amount;
             }, array());
             $items = $order->getShareItems($items);
             $share->items()->saveMany($items);
         }
     }
 }