public function process($confirmation = false) { $user = $this->createUser(); $this->form->setData($user); if ('POST' === $this->request->getMethod()) { $this->form->bind($this->request); //var_dump($this->form->getErrorsAsString(10));die; if ($this->form->isValid()) { $tmp = $user->getId(); //Si es update if (empty($tmp)) { $user->setAuditUserIns($this->auditUser); $user->setAuditDateIns(new \DateTime()); $tmp = $this->entId; if (!empty($tmp)) { $entidadDao = new EntidadDao($this->container->get("doctrine")); $entidad = $entidadDao->getEntidad($this->entId); $user->setEntidad($entidad); } //Si es Insert } else { $userDao = new UserDao($this->container->get("doctrine")); //Se obtiene el registro de la BD $tmp = $userDao->getUserEspecifico($user->getId()); //Se le asigna al Formulario $this->form->setData($tmp); //Se realiza un merge con lo que se envio en el Request $this->form->bindRequest($this->request); $user = $tmp; $tmp->setAuditUserUpd($this->auditUser); $tmp->setAuditDateUpd(new \DateTime()); } $rolDao = new RolDao($this->container->get("doctrine")); //Se asignan roles dependiendo del usuario interno if ($this->userInterno == 'false') { $user->setRols($rolDao->getRolesEspecificos($user->getEntidad()->getEntImportador(), $user->getEntidad()->getEntProductor(), $user->getEntidad()->getEntComprador(), $user->getEntidad()->getEntCompVend(), $user->getUserTipo(), $user->getUserInterno(), $user->getUserInternoTipo())); } else { $user->setRols($rolDao->getRolesEspecificos(false, false, false, false, $user->getUserTipo(), $user->getUserInterno(), $user->getUserInternoTipo())); } //Hacer busqueda de los roles segun los campos de tipos y obtener el listado de objetos. $this->onSuccess($user, $confirmation); // do your custom logic here return true; } } return false; }
public function mantCargarEntidadAction($entId) { $opciones = $this->getRequest()->getSession()->get('opciones'); $entidadDao = new EntidadDao($this->getDoctrine()); $listadoDNMDao = new ListadoDNMDao($this->getDoctrine()); $entidad = $entidadDao->getEntidad($entId); $autorizadoDNM = null; $autorizadoDNMText = null; $autorizadoGuardar = false; $user = $this->get('security.context')->getToken()->getUser(); if ($user->getUserInternoTipo() == User::$MINSAL || $user->getUserTipo() == null) { $autorizadoGuardar = true; } if (!$entidad) { $entidad = new Entidad(); } else { $year = new \DateTime(); $autorizadoDNM = $listadoDNMDao->estaAutorizado($year->format('Y') + 0, $entidad->getEntNrc(), $entidad->getEntNit()); if (!$autorizadoDNM) { $autorizadoDNMText = ListadoDNMDao::$MSG_ERROR_DNM_NOAUTH; } } $form = $this->createForm(new EntidadType(), $entidad); return $this->render('MinSalSCAAdminBundle:Entidad:showEntidad.html.twig', array('form' => $form->createView(), 'opciones' => $opciones, 'entId' => $entId, 'entHabilitado' => $entidad->getEntHabilitado(), 'autorizadoDNM' => $autorizadoDNM, 'autorizadoDNMText' => $autorizadoDNMText, 'autorizadoGuardar' => $autorizadoGuardar)); }
public function mantCuotaEdicionAction($entId, $cuoTipo) { $request = $this->getRequest(); $cuota = new Cuota(); $operacion = $request->get('oper'); $user = $this->get('security.context')->getToken()->getUser(); $cuotaDao = new CuotaDao($this->getDoctrine()); $alcoholDao = new AlcoholDao($this->getDoctrine()); $entidadDao = new EntidadDao($this->getDoctrine()); //$entId = $request->get('entId'); $alcId = $request->get('alcId'); $cuoId = $request->get('id'); if ($operacion == 'edit' || $operacion == 'del') { $cuota = $cuotaDao->getCuota($cuoId); } else { $cuoId = null; } if ($operacion != 'del') { //$cuoTipo= $request->get('cuoTipo'); $cuoNombreEsp = trim($request->get('cuoNombreEsp')); $cuoGrado = $request->get('cuoGrado'); $cuoLitros = $request->get('cuoLitros'); $t = new \DateTime(); $cuoYear = $t->format('Y') + 0; $cuota->setCuoYear($cuoYear); $cuota->setCuoTipo($cuoTipo); $cuota->setCuoNombreEsp($cuoNombreEsp); $cuota->setCuoGrado($cuoGrado); $cuota->setCuoLitros($cuoLitros); //Asociamos el objeto seleccionado en el formulario //$cuota->setAlcohol($alcoholDao->getAlcohol($alcId)); //$alcohol = new Alcohol(); $alcohol = $alcoholDao->getAlcohol($alcId); $alcohol->getCuotas()->add($cuota); $entidad = $entidadDao->getEntidad($entId); $entidad->getCuotas()->add($cuota); $cuota->setEntidad($entidad); $cuota->setAlcohol($alcohol); /* $validator = $this->get('validator'); $errors = $validator->validate($cuota); if (count($errors) > 0) { $msg = ''; foreach($errors as $error){ //var_dump($error->message); $msg = $msg.$error->getMessage(); } return new Response("{sc:false,msg:'".$msg."' }"); //json_encode($errors) }/**/ $cantidad = $cuotaDao->existeCuota($cuoId, $entId, $alcId, $cuoYear, $cuoTipo, $cuoGrado, $cuoNombreEsp); if ($cantidad > 0) { $resp = new Response('{"status":false,"msg":"Registro duplicado, ya existe un registro con estos datos"}'); //$resp->setStatusCode(418, 'Errores duplicados');//json_encode($form->getErrors()) return $resp; } } if ($cuota->getEntidad() && $cuota->getAlcohol()) { if ($operacion == 'edit') { //#### Auditoría $cuota->setAuditUserUpd($user->getUsername()); $cuota->setAuditDateUpd(new \DateTime()); $cuotaDao->editCuota($cuota); } else { if ($operacion == 'del') { //#### Auditoría $cuota->setAuditUserUpd($user->getUsername()); $cuota->setAuditDateUpd(new \DateTime()); $cuota->setAuditDeleted(true); $cuotaDao->editCuota($cuota); } else { if ($operacion == 'add') { $cuota->setAuditUserIns($user->getUsername()); $cuota->setAuditDateIns(new \DateTime()); $cuotaDao->editCuota($cuota); } } } return new Response('{"status":true,"msg":""}'); } else { return new Response('{"status":false,"msg":"No se encuentra la Entidad o Nombre Alcohol"}'); } }
private function updateAction($request) { $opciones = $request->getSession()->get('opciones'); $userInterno = $request->get("userInterno"); $id = $request->get("fos_user_registration_form"); $auditUser = $this->container->get('security.context')->getToken()->getUser(); $confirmationEnabled = $this->container->getParameter('fos_user.registration.confirmation.enabled'); $entId = ''; $entNombre = ''; if ($userInterno == 'false') { $entId = $request->get("entId"); $entidadDao = new EntidadDao($this->container->get("doctrine")); //fos_user.user_manager $entNombre = $entidadDao->getEntidad($entId)->getEntNombre(); } $user = new User(); $userDao = new UserDao($this->container->get("doctrine")); $user = $userDao->getUserEspecifico($id['id']); $form = $this->container->get('fos_user.registration.form'); //$form = $this->createForm(new RegistrationFormType(), $usuario); $form->setData($user); $form->bindRequest($request); if ($form->isValid()) { $rolDao = new RolDao($this->container->get("doctrine")); //Se asignan roles dependiendo del usuario interno if ($userInterno == 'false') { $user->setRols($rolDao->getRolesEspecificos($user->getEntidad()->getEntImportador(), $user->getEntidad()->getEntProductor(), $user->getEntidad()->getEntComprador(), $user->getEntidad()->getEntCompVend(), $user->getUserTipo(), $user->getUserInterno(), $user->getUserInternoTipo())); } else { $user->setRols($rolDao->getRolesEspecificos(false, false, false, false, $user->getUserTipo(), $user->getUserInterno(), $user->getUserInternoTipo())); } $this->onSuccess($user, $confirmationEnabled); $user = $userDao->updateUsuario($user, $auditUser->getUsername()); $this->container->get('session')->setFlash('notice', '#### El usuario "' . $user->getUsername() . '" ha actualizado ####'); $route = 'MinSalSCAUsersBundle_mantMostrarUsuarios'; $url = $this->container->get('router')->generate($route, array('userInterno' => $userInterno, 'entId' => $entId, 'entNombre' => $entNombre, 'opciones' => $opciones)); return new RedirectResponse($url); } //FOSUserBundle:Registration:register.html return $this->container->get('templating')->renderResponse('MinSalSCAUsersBundle:Registration:register.html.' . $this->getEngine(), array('form' => $form->createView(), 'userInterno' => $userInterno, 'entId' => $entId, 'entNombre' => $entNombre, 'opciones' => $opciones)); }
public function mantSolLocalEdicionAction(Request $request) { $solLocalDetTmp = new SolLocalDet(); $solLocalDet = new SolLocalDet(); $user = $this->get('security.context')->getToken()->getUser(); $form = $this->createForm(new SolLocalDetType($this->getDoctrine()), $solLocalDetTmp); $form->bindRequest($request); $cuotaDao = new CuotaDao($this->getDoctrine()); $solLocalDetTmp->setCuota($cuotaDao->getCuota($request->get('cuota'))); $solLocalDao = new SolLocalDao($this->getDoctrine()); $solLocalDetDao = new SolLocalDetDao($this->getDoctrine()); $transicionDao = new TransicionDao($this->getDoctrine()); $inventarioDao = new InventarioDao($this->getDoctrine()); $entidadDao = new EntidadDao($this->getDoctrine()); $transicion = null; $productor = $request->get('productor'); $productor = $productor === 'true' || $productor === true; $invId = $request->get('invId'); $errores = $solLocalDetTmp->isValid($this->getDoctrine(), $user->getEntidad(), $invId, $productor); //Validacion DNM y Habilitado de Empresa que ingresa solicitud $entidad = $user->getEntidad(); $year = new \DateTime(); $listadoDNMDao = new ListadoDNMDao($this->getDoctrine()); $autorizadoDNM = $listadoDNMDao->estaAutorizado($year->format('Y') + 0, $entidad->getEntNrc(), $entidad->getEntNit()); //###### Validacion de empresa seleccionada como proveedor if ($productor) { $provEntidad = $entidadDao->getEntidad($request->get('prodEntId')); } else { $provEntidad = $inventarioDao->getInventario($invId)->getEntidad(); } $autorizadoDNMProv = true; $autorizadoDNMProvText = ''; if ($provEntidad == null) { $provEntidad = true; } else { $autorizadoDNMProv = $listadoDNMDao->estaAutorizado($year->format('Y') + 0, $provEntidad->getEntNrc(), $provEntidad->getEntNit()); } if ($form->isValid() && count($errores) == 0 && $autorizadoDNM == true && $entidad->getEntHabilitado() == true && $autorizadoDNMProv == true && $provEntidad->getEntHabilitado() == true) { if ($solLocalDetTmp->getLocalDetId()) { $solLocalDet = $solLocalDao->getSolLocalDet($solLocalDetTmp->getLocalDetId()); } else { //#### Encabezado de Solicitud $transicion = $transicionDao->getTransicionInicial(Flujo::$LOCAL); $solLocal = new SolLocal(); $solLocalDet->setSolLocal($solLocal); $solLocalDet->getSolLocal()->setEntidad($user->getEntidad()); $solLocalDet->getSolLocal()->setTransicion($transicion); $solLocalDet->getSolLocal()->setSolLocalFecha(new \DateTime()); $solLocalDet->getSolLocal()->setAuditUserIns($user->getUsername()); $solLocalDet->getSolLocal()->setAuditDateIns(new \DateTime()); //## Detalle de solicitud $solLocal->addSolLocalDet($solLocalDet); $solLocalDet->setCuota($cuotaDao->getCuota($request->get('cuota'))); if ($productor == 'true' || $productor == true) { $inventario = new Inventario(); $inventario->setAlcohol($solLocalDet->getCuota()->getAlcohol()); $inventario->setInvGrado($solLocalDet->getCuota()->getAlcohol()->getAlcGrado()); $inventario->setInvNombreEsp($solLocalDet->getCuota()->getCuoNombreEsp()); $invId = $this->crearInvIdProductor($inventario, $provEntidad); } $inventario = $this->agregarInventarioProveedor(new SolLocalDet(), $invId, $solLocalDetTmp->getLocalDetLitros(), $solLocalDetTmp->getCuota()->getCuoGrado(), true, false); $inventario->setSolLocalDet($solLocalDet); $solLocalDet->addInventarioDet($inventario); } //################################################################################################## $form = $this->createForm(new SolLocalDetType($this->getDoctrine()), $solLocalDet); $form->bindRequest($request); $solLocalDetDao->addSolLocalDet($solLocalDet); $this->generarEmailEtapaNotificacion($solLocalDet, $transicion, $inventario->getInventario()->getEntidad()->getEntId()); $this->get('session')->setFlash('notice', 'Los datos se han guardado con éxito!!!'); return $this->redirect($this->generateUrl('MinSalSCAProcesosBundle_mantSolLocalIngreso')); } else { 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; } } $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()); } else { $listaErrores = ''; foreach ($errores as $error) { $listaErrores = $listaErrores . $error; } if ($listaErrores != '') { $this->get('session')->setFlash('notice', $listaErrores); } else { $this->get('session')->setFlash('notice', '**** ERROR **** Existen errores con el formulario, por favor revise los valores ingresados'); } } $opciones = $this->getRequest()->getSession()->get('opciones'); return $this->render('MinSalSCAProcesosBundle:SolLocalDet:ingresarSolLocalDet.html.twig', array('opciones' => $opciones, 'form' => $form->createView(), 'entNombComercial' => $user->getEntidad()->getEntNombComercial(), 'comentario' => null, 'transiciones' => null, 'invId' => $invId, 'autorizadoDNM' => $autorizadoDNM, 'autorizadoDNMText' => $autorizadoDNMText, 'entHabilitado' => $entidad->getEntHabilitado(), 'autorizadoDNMProv' => $autorizadoDNMProv, 'autorizadoDNMProvText' => $autorizadoDNMProvText)); } }