コード例 #1
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(Request $request)
 {
     $this->validate($request, ['title' => 'required|max:255', 'note' => 'string', 'month' => 'required|integer|min:1|max:12', 'day' => 'required|integer|min:1|max:31', 'cost' => 'required|regex:/([0-9],)+[0-9]{2,}/|min:0', 'currency' => 'required|in:hrk,usd,eur', 'exchange_rate' => 'required|numeric|min:0', 'active' => 'boolean', 'client_id' => 'required|exists:clients,id', 'category_id' => 'required|exists:categories,id']);
     $client = Client::find($request->get('client_id'));
     $category = Category::find($request->get('category_id'));
     $service = new Service();
     $service->title = $request->get('title');
     $service->note = $request->get('note');
     $service->month = $request->get('month');
     $service->day = $request->get('day');
     $service->cost = convert_integer($request->get('cost'));
     $service->currency = $request->get('currency');
     $service->exchange_rate = $request->get('exchange_rate');
     $service->active = $request->get('active', false);
     $service->client()->associate($client);
     $service->category()->associate($category);
     $service->save();
     event(new ServiceWasCreated($service));
     flash()->success('Service created!');
     return redirect()->route('services.index');
 }