Esempio n. 1
0
 /**
  * Store a newly created resource in storage.
  *
  * @param  \Illuminate\Http\Request  $request
  * @return \Illuminate\Http\Response
  */
 public function store(CreateMovementRequest $request)
 {
     //        dd($request->all());
     $i = 1;
     $arrMov = array();
     $conErrores = '';
     if (Auth::user()->securityLevel >= 20) {
         $status_id = 1;
         // Aprobado
     } else {
         $status_id = 2;
         // Por Aprobar
     }
     for ($i = 1; $i <= $request['numArticles']; $i++) {
         if ($request['article_id' . $i] != '') {
             if ($request['serialList' . $i] != '') {
                 $serial = $request['serialList' . $i];
             } else {
                 $serial = $request['serial' . $i];
             }
             //        Crea un objeto Movement pero no lo guarda en la base de datos
             $mov = new Movement(['remito' => $request['remito'], 'article_id' => $request['article_id' . $i], 'quantity' => $request['quantity' . $i], 'note' => $request['note' . $i], 'origin_id' => $request['origin_id'], 'destination_id' => $request['destination_id'], 'ticket' => $request['ticket'], 'serial' => $serial, 'status_id' => $status_id, 'user_id' => Auth::user()->id]);
             $valid = $this->validateMov($mov);
             if ($valid == '') {
                 //            Guarda el objeto en la base de datos
                 Movement::create($mov->toArray());
             } elseif (!strstr($conErrores, $valid)) {
                 $conErrores .= $valid;
                 //                    $conErrores .= '<li>'.$mov->article->name.'</li>';
             }
         }
     }
     if ($conErrores == '') {
         session()->flash('flash_message', 'Todos los movimientos se registraron correctamente.');
         return Redirect::to('movimientos');
     } else {
         $conErrores = '<ul>' . $conErrores . '</ul>';
         session()->flash('flash_message_danger', 'Algunos movimientos no han sido registrados.' . $conErrores);
         //        Si flash_message_important esta presente, el mensaje no desaparece hasta que el usuario lo cierre
         session()->flash('flash_message_important', true);
         return Redirect::to('movimientos/create')->withInput();
     }
 }