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 | 26 | |
27 | 27 | {% block body %} |
28 | 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 | 40 | </div> |
38 | 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 | 43 | <div class="col-md-4"> |
41 | 44 | |
42 | 45 | |
... | ... | @@ -87,7 +90,7 @@ |
87 | 90 | </div> |
88 | 91 | {{ form_end(caducidadForm) }} |
89 | 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 | 95 | {% endif %} |
93 | 96 | <table class="table table-bordered"> |
... | ... | @@ -117,7 +120,7 @@ |
117 | 120 | <td>{{ tarea.idPidaPlazo }}</td> |
118 | 121 | <td> |
119 | 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 | 124 | </td> |
122 | 125 | |
123 | 126 | </tr> | ... | ... |
src/AppBundle/Controller/AdscripcionController.php
... | ... | @@ -453,19 +453,27 @@ class AdscripcionController extends Controller |
453 | 453 | if(!$adscripcion) return $this->redirect($this->generateUrl('solicitud_adscripcion')); |
454 | 454 | |
455 | 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 | 478 | $pida = new AdscripcionPida(); |
471 | 479 | $tarea = new PidaTareaEspecifico(); | ... | ... |
src/AppBundle/Controller/AppController.php
... | ... | @@ -64,16 +64,20 @@ class AppController extends Controller { |
64 | 64 | ); |
65 | 65 | $em = $this->getDoctrine()->getManager(); |
66 | 66 | if(!$pida){ |
67 | + $this->addFlash('danger', 'Estimado Docente Mientras se verifica su adscripción, le solicitamos que por favor cree su PIDA.'); | |
67 | 68 | return $this->redirect($this->generateUrl('solicitud_pida')); |
68 | 69 | }else{ |
69 | 70 | $caducidad = $this->getDoctrine()->getRepository("AppBundle:PidaCaducidad")->findOneByIdDocenteServicio($pida); |
70 | 71 | if($caducidad){ |
71 | 72 | //saber si el pida actual caducó |
72 | 73 | $hoy = new \DateTime("now"); |
74 | + | |
73 | 75 | $tiempo = ($hoy->diff($caducidad->getFechaFinal())); |
76 | + $vigente = $tiempo->invert ? false : true; | |
74 | 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 | 81 | $this->addFlash('danger', 'Estimado docente dentro de ' . $tiempo->format('%a%') . ' días su PIDA caducará y deberá crear uno nuevo'); |
78 | 82 | } |
79 | 83 | //var_dump($tiempo); die; | ... | ... |
src/AppBundle/Entity/AdscripcionPida.php
... | ... | @@ -10,7 +10,7 @@ use Doctrine\ORM\Mapping as ORM; |
10 | 10 | /** |
11 | 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 | 14 | * @ORM\Entity |
15 | 15 | * @ORM\HasLifecycleCallbacks() |
16 | 16 | */ | ... | ... |