/** * Show the form for creating a new resource. * * @return \Illuminate\Http\Response */ public function create($ticket_id) { $ticket = Ticket::findOrFail($ticket_id); if ($ticket == null) { Session::flash('message', 'Este ticket no existe'); Session::flash('alert-class', 'alert-danger'); return redirect('salesman/devolutions'); } if ($ticket->cancelled) { Session::flash('message', 'El ticket fue cancelado'); Session::flash('alert-class', 'alert-danger'); return redirect('salesman/devolutions'); } $presentation = $ticket->presentation()->first(); if (!$presentation->cancelled) { Session::flash('message', 'La presentación no fue cancelado'); Session::flash('alert-class', 'alert-danger'); return redirect('salesman/devolutions'); } $cancelPresentation = CancelPresentation::where("presentation_id", $ticket->presentation_id)->first(); if (!$cancelPresentation->authorized) { Session::flash('message', 'El ticket no esta autorizado para ser devuelto'); Session::flash('alert-class', 'alert-danger'); return redirect('salesman/devolutions'); } $today = strtotime(date("Y-m-d")); $date_refund = strtotime($cancelPresentation->date_refund); $date_refund_last = $date_refund + $cancelPresentation->duration * 86400; if ($today < $date_refund) { Session::flash('message', 'El ticket aun no se puede devolver. Autorizado para devolución a partir de ' . $cancelPresentation->date_refund); Session::flash('alert-class', 'alert-danger'); return redirect('salesman/devolutions'); } if ($today > $date_refund_last) { Session::flash('message', 'El ticket no puede ser devuelto, tiempo de devolución agotado'); Session::flash('alert-class', 'alert-danger'); return redirect('salesman/devolutions'); } $modulesAuth = $cancelPresentation->modules; $userId = Auth::user()->id; $moduleUser = ModuleAssigment::where(["salesman_id" => $userId, "status" => 1])->first(); if (!is_object($moduleUser)) { Session::flash('message', 'Usted no tiene modulo asignado, por lo tanto no puede devolver'); Session::flash('alert-class', 'alert-danger'); return redirect('salesman/devolutions'); } $isAuthorized = 0; foreach ($modulesAuth as $obj) { if ($obj->id == $moduleUser->module_id) { $isAuthorized = 1; break; } } return view('internal.salesman.devolution.new', ["ticket" => $ticket, "authorizedModule" => $modulesAuth, "isAuthorized" => $isAuthorized]); }
public function modules($presentationId) { $cancelled = CancelPresentation::findOrFail($presentationId); $modules = Module::all(); $authorized = ModulePresentationAuthorized::where("cancelled_presentation_id", $presentationId)->get(); return view('internal.promoter.presentation.authorized', ['cancelled' => $cancelled, "modules" => $modules, "authorized" => $authorized]); }