public function mantCargarSolLocalAction($localDetId)
 {
     $opciones = $this->getRequest()->getSession()->get('opciones');
     $user = $this->get('security.context')->getToken()->getUser();
     $result = array();
     $tmpIndex = array();
     $solLocalDao = new SolLocalDao($this->getDoctrine());
     $solLocalDet = $solLocalDao->getSolLocalDet($localDetId);
     $entNombComercial = $solLocalDet->getSolLocal()->getEntidad()->getEntNombComercial();
     if (!$solLocalDet) {
         $solLocalDet = new SolLocalDet();
     } else {
         $transicionDao = new TransicionDao($this->getDoctrine());
         $nextTransiciones = $transicionDao->getTransicionesSiguientes($solLocalDet->getSolLocal()->getTransicion()->getTraId());
         $roles = $user->getRols();
         $inventarioProv = null;
         $invsDetTemp = $solLocalDet->getInventariosDet();
         foreach ($invsDetTemp as $tmp) {
             if ($solLocalDet->getSolLocal()->getEntidad()->getEntId() != $tmp->getInventario()->getEntidad()->getEntId()) {
                 $inventarioProv = $tmp->getInventario();
             }
         }
         /*var_dump('Comprador EntId= '.$solLocalDet->getSolLocal()->getEntidad()->getEntId());
           var_dump('User EntId= '.$user->getEntidad()->getEntId());
           
           var_dump('Proveedor EntId= '.$solLocalDet->getCuota()->getEntidad()->getEntId());
           */
         //Validacion para asegurarse que el usuario que esta visualizando la solicitud tiene autorizacion para evaluarla y pasarla a la siguiente etapa
         foreach ($roles as $rol) {
             $transicionesRol = $rol->getTransiciones();
             foreach ($transicionesRol as $transicionRol) {
                 foreach ($nextTransiciones as $reg) {
                     if ($transicionRol->getTraId() == $reg->getTraId()) {
                         if ($reg->getFlujo()->getFluId() == Flujo::$LOCAL && !array_key_exists($reg->getTraId(), $tmpIndex)) {
                             if ($solLocalDet->getSolLocal()->getEntidad()->getEntId() == $user->getEntidad()->getEntId() && $rol->getRolTipo() == User::$COMPRADOR || $inventarioProv->getEntidad()->getEntId() == $user->getEntidad()->getEntId() && $rol->getRolTipo() == User::$VENDEDOR) {
                                 $arrayTrans = array();
                                 $arrayTrans['id'] = $reg->getTraId();
                                 $arrayTrans['nombre'] = $reg->getEstado()->getEstNombreBoton();
                                 $arrayTrans['comentario'] = $reg->getTraComentario() ? "true" : "false";
                                 $arrayTrans['litrosLibera'] = $reg->getTraLitrosLibera() ? "true" : "false";
                                 $tmpIndex[$reg->getTraId()] = true;
                                 $result[] = $arrayTrans;
                             }
                         }
                     }
                 }
             }
         }
     }
     $form = $this->createForm(new SolLocalDetType($this->getDoctrine()), $solLocalDet);
     $comentario = $solLocalDet->getSolLocal()->getSolLocalComentario();
     $etapa = $solLocalDet->getSolLocal()->getTransicion()->getEtpFin()->getEtpNombre();
     $estado = $solLocalDet->getSolLocal()->getTransicion()->getEstado()->getEstNombre();
     $inventarioDetTmp = $solLocalDet->getInventariosDet();
     $inventarioDetTmp = $inventarioDetTmp[0];
     $provEntidad = $inventarioDetTmp->getInventario()->getEntidad();
     //Validacion de la empresa que ingresa la solicitud
     $entidad = $solLocalDet->getSolLocal()->getEntidad();
     $year = new \DateTime();
     $listadoDNMDao = new ListadoDNMDao($this->getDoctrine());
     $autorizadoDNM = $listadoDNMDao->estaAutorizado($year->format('Y') + 0, $entidad->getEntNrc(), $entidad->getEntNit());
     $autorizadoDNMText = null;
     if (!$autorizadoDNM) {
         $autorizadoDNMText = ListadoDNMDao::$MSG_ERROR_DNM_NOAUTH;
     }
     if (!$entidad->getEntHabilitado()) {
         $this->get('session')->setFlash('notice', EntidadDao::$NO_HABILITADA . ' debido a: ' . $entidad->getEntComentario());
     }
     //###### Validacion de empresa seleccionada como proveedor
     $autorizadoDNMProv = true;
     $autorizadoDNMProvText = '';
     if ($provEntidad == null) {
         $provEntidad = true;
     } else {
         $autorizadoDNMProv = $listadoDNMDao->estaAutorizado($year->format('Y') + 0, $provEntidad->getEntNrc(), $provEntidad->getEntNit());
     }
     if (!$autorizadoDNMProv || !$provEntidad->getEntHabilitado()) {
         $autorizadoDNMProvText = 'Problema con el Proveedor ->';
         if (!$autorizadoDNMProv) {
             $autorizadoDNMProvText = $autorizadoDNMProvText . ListadoDNMDao::$MSG_ERROR_DNM_NOAUTH . '. ';
         }
         if (!$provEntidad->getEntHabilitado()) {
             $autorizadoDNMProvText = $autorizadoDNMProvText . EntidadDao::$NO_HABILITADA;
             $autorizadoDNMProv = false;
         }
     }
     return $this->render('MinSalSCAProcesosBundle:SolLocalDet:ingresarSolLocalDet.html.twig', array('form' => $form->createView(), 'opciones' => $opciones, 'localDetId' => $localDetId, 'entNombComercial' => $entNombComercial, 'transiciones' => $result, 'comentario' => $comentario, 'etapa' => $etapa, 'estado' => $estado, 'invId' => $inventarioDetTmp->getInventario()->getInvId(), 'autorizadoDNM' => $autorizadoDNM, 'autorizadoDNMText' => $autorizadoDNMText, 'entHabilitado' => $entidad->getEntHabilitado(), 'autorizadoDNMProv' => $autorizadoDNMProv, 'autorizadoDNMProvText' => $autorizadoDNMProvText));
 }