/**
  * Store a newly created report in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(CreateReportRequest $request)
 {
     $input = $request->all();
     $attendence['user_id'] = $input['user_id'] = Auth::user()->id;
     $work_type = $input['work_type_id'];
     unset($input['work_type_id']);
     $report_id = Report::create($input);
     if ($report_id) {
         $attendence['report_id'] = $report_id->id;
         $attendence['work_type_id'] = $work_type;
         Attendence::create($attendence);
         //            echo $report_id->id; exit;
     }
     \Session::flash('message', 'Your Report has been submitted successfully.!');
     \Session::flash('message-type', 'success');
     return redirect('/reports/create');
 }
Exemplo n.º 2
0
 public function store(CreateReportRequest $request)
 {
     if (Gate::denies('managerOnly')) {
         abort(403);
     }
     $input = $request->all();
     $result = DB::transaction(function ($input) use($input) {
         $report = new Report();
         $report->name = $input['name'];
         $report->start_date = $input['start_date'];
         $report->end_date = $input['end_date'];
         $report->owner()->associate(Auth::user());
         $report->save();
         foreach ($input['users'] as $user) {
             $report->users()->attach($user['id'], ['view_self' => $user['pivot']['view_self'], 'view_all' => $user['pivot']['view_all']]);
         }
         foreach ($input['indicators'] as $indicator) {
             $report->indicators()->attach($indicator['id'], ['show_value' => $indicator['pivot']['show_value'], 'show_points' => $indicator['pivot']['show_points']]);
         }
         return $report;
     });
     return $result;
 }