diff --git a/app/Resources/views/solicitudes/pida.html.twig b/app/Resources/views/solicitudes/pida.html.twig index 114a915..5045c28 100644 --- a/app/Resources/views/solicitudes/pida.html.twig +++ b/app/Resources/views/solicitudes/pida.html.twig @@ -26,17 +26,20 @@ {% block body %}
-

- Estimado (a) Docente - {{app.user.idRolInstitucion.idRol.idPersona.primerNombre}} - {{app.user.idRolInstitucion.idRol.idPersona.primerApellido}}, - Mientras se verifican sus datos de adscripción, lo invitamos a registrar el PIDA rellenando - los datos que solicitamos a continuación - -

+ {% for message in app.session.flashBag.get('danger') %} +
{{ message }}
+ {%endfor %} + + {% for message in app.session.flashBag.get('success') %} +
{{ message }}
+ {%endfor %} + + {% for message in app.session.flashBag.get('warning') %} +
{{ message }}
+ {%endfor %}
- {% if not servicio or servicio.idEstatus.id == 2 %} + {% if not servicio or servicio.idEstatus.id == 2 or servicio.idEstatus.id == 5 %}
@@ -87,7 +90,7 @@
{{ form_end(caducidadForm) }} {% else %} - PIDA válido desde: {{ caduca.fechaInicio | date('d-m-Y')}} hasta: {{ caduca.fechaFinal | date('m-d-Y') }}. vigencia de ( {% if caducaAnos > 0 %} {{ caducaAnos }} años {% endif %}{{ caducaMeses }} meses con {{ caducaDias }} días ) + PIDA válido desde: {{ caduca.fechaInicio | date('d-m-Y')}} hasta: {{ caduca.fechaFinal | date('m-d-Y') }}. duración total PIDA: ( {% if caducaAnos > 0 %} {{ caducaAnos }} años {% endif %}{{ caducaMeses }} meses con {{ caducaDias }} días ) {% endif %} @@ -117,7 +120,7 @@ diff --git a/src/AppBundle/Controller/AdscripcionController.php b/src/AppBundle/Controller/AdscripcionController.php index 4537085..536b9f8 100644 --- a/src/AppBundle/Controller/AdscripcionController.php +++ b/src/AppBundle/Controller/AdscripcionController.php @@ -453,19 +453,27 @@ class AdscripcionController extends Controller if(!$adscripcion) return $this->redirect($this->generateUrl('solicitud_adscripcion')); //si ya se tiene PIDA - $pid = $this->getDoctrine()->getRepository('AppBundle:AdscripcionPida')->findByIdRolInstitucion(array( - 'idRolInstitucion' => $this->getUser()->getIdRolInstitucion()->getId() - )); - - $serv = false; - - if($pid){ - $serv = $this->getDoctrine()->getRepository('AppBundle:DocenteServicio')-> - findOneBy(array( - 'idRolInstitucion' => $this->getUser()->getIdRolInstitucion()->getId(), - 'idServicioCe' => 4 - )); - } + + $serv = $this->getDoctrine()->getRepository('AppBundle:DocenteServicio')-> + findOneBy(array( + 'idRolInstitucion' => $this->getUser()->getIdRolInstitucion()->getId(), + 'idServicioCe' => 4), + array('id' => 'DESC') + ); + if($serv) { + //si el servicio está cadudado, debe solicitar uno nuevo + if ($serv->getIdEstatus()->getId() == 5) { + $this->addFlash('warning', 'Su PIDA ha caducado, por ese motivo, se le solicita que cree uno Nuevo'); + $serv = false; + $pid = false; + }else{ + $pid = $this->getDoctrine()->getRepository("AppBundle:AdscripcionPida")->findBy(array( + 'idDocenteServicio' => $serv + )); + } + } + + $pida = new AdscripcionPida(); $tarea = new PidaTareaEspecifico(); diff --git a/src/AppBundle/Controller/AppController.php b/src/AppBundle/Controller/AppController.php index e99bbd9..cb09d43 100644 --- a/src/AppBundle/Controller/AppController.php +++ b/src/AppBundle/Controller/AppController.php @@ -64,16 +64,20 @@ class AppController extends Controller { ); $em = $this->getDoctrine()->getManager(); if(!$pida){ + $this->addFlash('danger', 'Estimado Docente Mientras se verifica su adscripción, le solicitamos que por favor cree su PIDA.'); return $this->redirect($this->generateUrl('solicitud_pida')); }else{ $caducidad = $this->getDoctrine()->getRepository("AppBundle:PidaCaducidad")->findOneByIdDocenteServicio($pida); if($caducidad){ //saber si el pida actual caducó $hoy = new \DateTime("now"); + $tiempo = ($hoy->diff($caducidad->getFechaFinal())); + $vigente = $tiempo->invert ? false : true; if($tiempo->format('%a%') <= 60 && $tiempo->format('%a%') >= 30){ - $this->addFlash('warning', 'Estimado docente su PIDA estará vigente sólo por ' . $tiempo->format('%a%') . ' días más' ); - }else if($tiempo->format('%a%') <= 29){ + $suffix = ( $tiempo->invert ? ' venció hace' : 'estará viegene por' ); + $this->addFlash('warning', 'Estimado docente su PIDA ' . $suffix . $tiempo->format('%a%') . ' días más' ); + }else if($tiempo->format('%a%') <= 29 && $vigente){ $this->addFlash('danger', 'Estimado docente dentro de ' . $tiempo->format('%a%') . ' días su PIDA caducará y deberá crear uno nuevo'); } //var_dump($tiempo); die; diff --git a/src/AppBundle/Entity/AdscripcionPida.php b/src/AppBundle/Entity/AdscripcionPida.php index 21db6c7..94897b4 100644 --- a/src/AppBundle/Entity/AdscripcionPida.php +++ b/src/AppBundle/Entity/AdscripcionPida.php @@ -10,7 +10,7 @@ use Doctrine\ORM\Mapping as ORM; /** * AdscripcionPida * - * @ORM\Table(name="solicitud_pida", uniqueConstraints={@ORM\UniqueConstraint(name="pida_id_rol_institucion_key", columns={"id_rol_institucion", "id_plan_historico_nacional_estrategico", "id_actividad_docente"})}) + * @ORM\Table(name="solicitud_pida", uniqueConstraints={@ORM\UniqueConstraint(name="pida_id_rol_institucion_key", columns={"id_rol_institucion", "id_plan_historico_nacional_estrategico", "id_actividad_docente", "id_docente_servicio"})}) * @ORM\Entity * @ORM\HasLifecycleCallbacks() */
{{ tarea.idPidaPlazo }} {{ tarea.idPidaEstatus }} - . + {% if servicio.idEstatus.id != 5 %}.{% endif %}