Commit 834f3b6622a4f346315c8a076a4202c2770a4650
1 parent
405be36e1f
Exists in
master
registar el nuevo pida si ya estaba vencido el anterior
Showing
4 changed files
with
42 additions
and
27 deletions
Show diff stats
app/Resources/views/solicitudes/pida.html.twig
| @@ -26,17 +26,20 @@ | @@ -26,17 +26,20 @@ | ||
| 26 | 26 | ||
| 27 | {% block body %} | 27 | {% block body %} |
| 28 | <div class="container"> | 28 | <div class="container"> |
| 29 | - <h4 class="alert alert-info"><i class="fa fa-info-circle"></i> | ||
| 30 | - Estimado (a) Docente | ||
| 31 | - <strong>{{app.user.idRolInstitucion.idRol.idPersona.primerNombre}} | ||
| 32 | - {{app.user.idRolInstitucion.idRol.idPersona.primerApellido}}</strong>, | ||
| 33 | - Mientras se verifican sus datos de adscripción, lo invitamos a registrar el PIDA rellenando | ||
| 34 | - los datos que solicitamos a continuación | ||
| 35 | - | ||
| 36 | - </h4> | 29 | + {% for message in app.session.flashBag.get('danger') %} |
| 30 | + <div class="alert alert-danger">{{ message }}</div> | ||
| 31 | + {%endfor %} | ||
| 32 | + | ||
| 33 | + {% for message in app.session.flashBag.get('success') %} | ||
| 34 | + <div class="alert alert-success">{{ message }}</div> | ||
| 35 | + {%endfor %} | ||
| 36 | + | ||
| 37 | + {% for message in app.session.flashBag.get('warning') %} | ||
| 38 | + <div class="alert alert-warning">{{ message }}</div> | ||
| 39 | + {%endfor %} | ||
| 37 | </div> | 40 | </div> |
| 38 | <div class="row"> | 41 | <div class="row"> |
| 39 | - {% if not servicio or servicio.idEstatus.id == 2 %} | 42 | + {% if not servicio or servicio.idEstatus.id == 2 or servicio.idEstatus.id == 5 %} |
| 40 | <div class="col-md-4"> | 43 | <div class="col-md-4"> |
| 41 | 44 | ||
| 42 | 45 | ||
| @@ -87,7 +90,7 @@ | @@ -87,7 +90,7 @@ | ||
| 87 | </div> | 90 | </div> |
| 88 | {{ form_end(caducidadForm) }} | 91 | {{ form_end(caducidadForm) }} |
| 89 | {% else %} | 92 | {% else %} |
| 90 | - 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 ) | 93 | + 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 ) |
| 91 | 94 | ||
| 92 | {% endif %} | 95 | {% endif %} |
| 93 | <table class="table table-bordered"> | 96 | <table class="table table-bordered"> |
| @@ -117,7 +120,7 @@ | @@ -117,7 +120,7 @@ | ||
| 117 | <td>{{ tarea.idPidaPlazo }}</td> | 120 | <td>{{ tarea.idPidaPlazo }}</td> |
| 118 | <td> | 121 | <td> |
| 119 | {{ tarea.idPidaEstatus }} | 122 | {{ tarea.idPidaEstatus }} |
| 120 | - <a data-id="{{ tarea.id }}" id="estatus{{ tarea.id }}" data-toggle="modal" data-target="#nuevo_estatus" class="btn btn-xs btn-default">.</a> | 123 | + {% if servicio.idEstatus.id != 5 %}<a data-id="{{ tarea.id }}" id="estatus{{ tarea.id }}" data-toggle="modal" data-target="#nuevo_estatus" class="btn btn-xs btn-default">.</a>{% endif %} |
| 121 | </td> | 124 | </td> |
| 122 | 125 | ||
| 123 | </tr> | 126 | </tr> |
src/AppBundle/Controller/AdscripcionController.php
| @@ -453,19 +453,27 @@ class AdscripcionController extends Controller | @@ -453,19 +453,27 @@ class AdscripcionController extends Controller | ||
| 453 | if(!$adscripcion) return $this->redirect($this->generateUrl('solicitud_adscripcion')); | 453 | if(!$adscripcion) return $this->redirect($this->generateUrl('solicitud_adscripcion')); |
| 454 | 454 | ||
| 455 | //si ya se tiene PIDA | 455 | //si ya se tiene PIDA |
| 456 | - $pid = $this->getDoctrine()->getRepository('AppBundle:AdscripcionPida')->findByIdRolInstitucion(array( | ||
| 457 | - 'idRolInstitucion' => $this->getUser()->getIdRolInstitucion()->getId() | ||
| 458 | - )); | ||
| 459 | - | ||
| 460 | - $serv = false; | ||
| 461 | - | ||
| 462 | - if($pid){ | ||
| 463 | - $serv = $this->getDoctrine()->getRepository('AppBundle:DocenteServicio')-> | ||
| 464 | - findOneBy(array( | ||
| 465 | - 'idRolInstitucion' => $this->getUser()->getIdRolInstitucion()->getId(), | ||
| 466 | - 'idServicioCe' => 4 | ||
| 467 | - )); | ||
| 468 | - } | 456 | + |
| 457 | + $serv = $this->getDoctrine()->getRepository('AppBundle:DocenteServicio')-> | ||
| 458 | + findOneBy(array( | ||
| 459 | + 'idRolInstitucion' => $this->getUser()->getIdRolInstitucion()->getId(), | ||
| 460 | + 'idServicioCe' => 4), | ||
| 461 | + array('id' => 'DESC') | ||
| 462 | + ); | ||
| 463 | + if($serv) { | ||
| 464 | + //si el servicio está cadudado, debe solicitar uno nuevo | ||
| 465 | + if ($serv->getIdEstatus()->getId() == 5) { | ||
| 466 | + $this->addFlash('warning', 'Su PIDA ha caducado, por ese motivo, se le solicita que cree uno Nuevo'); | ||
| 467 | + $serv = false; | ||
| 468 | + $pid = false; | ||
| 469 | + }else{ | ||
| 470 | + $pid = $this->getDoctrine()->getRepository("AppBundle:AdscripcionPida")->findBy(array( | ||
| 471 | + 'idDocenteServicio' => $serv | ||
| 472 | + )); | ||
| 473 | + } | ||
| 474 | + } | ||
| 475 | + | ||
| 476 | + | ||
| 469 | 477 | ||
| 470 | $pida = new AdscripcionPida(); | 478 | $pida = new AdscripcionPida(); |
| 471 | $tarea = new PidaTareaEspecifico(); | 479 | $tarea = new PidaTareaEspecifico(); |
src/AppBundle/Controller/AppController.php
| @@ -64,16 +64,20 @@ class AppController extends Controller { | @@ -64,16 +64,20 @@ class AppController extends Controller { | ||
| 64 | ); | 64 | ); |
| 65 | $em = $this->getDoctrine()->getManager(); | 65 | $em = $this->getDoctrine()->getManager(); |
| 66 | if(!$pida){ | 66 | if(!$pida){ |
| 67 | + $this->addFlash('danger', 'Estimado Docente Mientras se verifica su adscripción, le solicitamos que por favor cree su PIDA.'); | ||
| 67 | return $this->redirect($this->generateUrl('solicitud_pida')); | 68 | return $this->redirect($this->generateUrl('solicitud_pida')); |
| 68 | }else{ | 69 | }else{ |
| 69 | $caducidad = $this->getDoctrine()->getRepository("AppBundle:PidaCaducidad")->findOneByIdDocenteServicio($pida); | 70 | $caducidad = $this->getDoctrine()->getRepository("AppBundle:PidaCaducidad")->findOneByIdDocenteServicio($pida); |
| 70 | if($caducidad){ | 71 | if($caducidad){ |
| 71 | //saber si el pida actual caducó | 72 | //saber si el pida actual caducó |
| 72 | $hoy = new \DateTime("now"); | 73 | $hoy = new \DateTime("now"); |
| 74 | + | ||
| 73 | $tiempo = ($hoy->diff($caducidad->getFechaFinal())); | 75 | $tiempo = ($hoy->diff($caducidad->getFechaFinal())); |
| 76 | + $vigente = $tiempo->invert ? false : true; | ||
| 74 | if($tiempo->format('%a%') <= 60 && $tiempo->format('%a%') >= 30){ | 77 | if($tiempo->format('%a%') <= 60 && $tiempo->format('%a%') >= 30){ |
| 75 | - $this->addFlash('warning', 'Estimado docente su PIDA estará vigente sólo por ' . $tiempo->format('%a%') . ' días más' ); | ||
| 76 | - }else if($tiempo->format('%a%') <= 29){ | 78 | + $suffix = ( $tiempo->invert ? ' venció hace' : 'estará viegene por' ); |
| 79 | + $this->addFlash('warning', 'Estimado docente su PIDA ' . $suffix . $tiempo->format('%a%') . ' días más' ); | ||
| 80 | + }else if($tiempo->format('%a%') <= 29 && $vigente){ | ||
| 77 | $this->addFlash('danger', 'Estimado docente dentro de ' . $tiempo->format('%a%') . ' días su PIDA caducará y deberá crear uno nuevo'); | 81 | $this->addFlash('danger', 'Estimado docente dentro de ' . $tiempo->format('%a%') . ' días su PIDA caducará y deberá crear uno nuevo'); |
| 78 | } | 82 | } |
| 79 | //var_dump($tiempo); die; | 83 | //var_dump($tiempo); die; |
src/AppBundle/Entity/AdscripcionPida.php
| @@ -10,7 +10,7 @@ use Doctrine\ORM\Mapping as ORM; | @@ -10,7 +10,7 @@ use Doctrine\ORM\Mapping as ORM; | ||
| 10 | /** | 10 | /** |
| 11 | * AdscripcionPida | 11 | * AdscripcionPida |
| 12 | * | 12 | * |
| 13 | - * @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"})}) | 13 | + * @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"})}) |
| 14 | * @ORM\Entity | 14 | * @ORM\Entity |
| 15 | * @ORM\HasLifecycleCallbacks() | 15 | * @ORM\HasLifecycleCallbacks() |
| 16 | */ | 16 | */ |