public function editForm($idTicket) { $response = Item::with(['asignado', 'tipoItem', 'transiciones' => function ($query) { $query->orderBy('TransicionItem.fechahora', 'Desc'); }, 'transiciones.usuario', 'comentarios' => function ($query) { $query->orderBy('Comentario.fechahora', 'Desc'); }, 'comentarios.usuario'])->find($idTicket); if (true === is_null($response)) { $response = new Response(); return $response->withRedirect($this->container->path('my_tickets', true)); } $Item = new Item(); $estadoActual = $Item->estadoActual($idTicket)->get(); $workflow = $Item->workFlow($idTicket)->get(); $states = []; $states['workflow'] = []; $idEstado = 0; foreach ($estadoActual as $key => $estado) { $states['workflow'][] = ['id' => $estado->idEstado, 'nombre' => $estado->nombreEstado, 'tipo' => $estado->tipoEstado]; $idEstado = $estado->idEstado; } foreach ($workflow as $key => $estado) { $states['workflow'][] = ['id' => $estado->idEstado, 'nombre' => $estado->nombreEstado]; } $tipoItems = TipoItem::tipoItemsProyecto($response->proyecto->idProyecto)->get(); $usuarios_atencion = $this->usersByState($idEstado); $data_relations = []; $data_relations['tipo_items'] = []; foreach ($tipoItems as $tipoitem) { $data = []; $data['id'] = $tipoitem->idTipoItem; $data['descripcion'] = $tipoitem->descripcion; $data['estados'] = []; foreach ($tipoitem->estados()->get() as $key => $estado) { $data['estados'][$key] = ['id' => $estado->idEstado, 'nombre' => $estado->nombreEstado]; } array_push($data_relations['tipo_items'], $data); } return $this->render('tickets/editar.html.twig', ['ticket' => $response, 'relaciones' => '', 'workflow' => $states['workflow'], 'equipo' => $usuarios_atencion]); }