Commit 9a9b1d9fbaf4ffd6b5f189f057d70e2ee9429138

Authored by wilmer
1 parent 3f8d5aa1c4
Exists in master

modificada la solicitud de ascenso de acuerdo con la lista de cotejo

app/Resources/views/cea/ascenso_mostar.html.twig
... ... @@ -201,6 +201,20 @@
201 201 </div>
202 202 </div>
203 203 {% endif %}
  204 +
  205 +
  206 + {% if ascenso.aprobacion is not null %}
  207 + <div class="col-xs-4">
  208 + <div class="thumbnail">
  209 + <a href="{{asset('uploads/ascenso/'~ ascenso.aprobacion)}}" data-lightbox="adscripcion">
  210 + <img src="{{ asset('uploads/ascenso/thumb/'~ ascenso.aprobacion) }}" />
  211 + </a>
  212 + <div class="caption">
  213 + <p>Acta de aprobación de la tesis</p>
  214 + </div>
  215 + </div>
  216 + </div>
  217 + {% endif %}
204 218  
205 219  
206 220  
... ...
app/Resources/views/solicitudes/ascenso.html.twig
1 1 {% extends 'base_app.html.twig' %}
  2 +{% use 'form_div_layout.html.twig' with form_widget_simple as base_form_widget_simple %}
2 3  
3 4 {% block stylesheets %}
4 5 {{ parent() }}
5 6 <link rel="stylesheet" href="{{ asset('assets/vendor/chosen/chosen.min.css') }}">
6 7  
7 8 <style>
8   - .esc_oposicion, .esc_asistente, .esc_agregado, .esc_asociado, .esc_titular{
  9 + .esc_investigacion, .esc_pertinencia, .esc_tesis .esc_asistente, .esc_agregado, .esc_asociado, .esc_titular{
9 10 display: none;
10 11 }
11 12  
... ... @@ -137,19 +138,39 @@
137 138 {{ parent() }}
138 139 <script type="text/javascript" src="{{ asset('assets/vendor/chosen/chosen.jquery.min.js') }}"></script>
139 140 <script type="text/javascript">
  141 +
140 142  
141 143 $('#ascenso_tipoTrabajoInvestigacion').click(function() {
  144 + alert("click");
142 145  
143 146 $('.esc_oposicion')[this.checked ? "show" : "hide"]();
144 147  
145   - if($('#ascenso_tipoTrabajoInvestigacion').prop('checked') == true){
  148 + if($('#ascenso_tipoTrabajoInvestigacion').val() == false){
  149 + $('.esc_investigacion').show();
  150 + $('.esc_tesis').hide();
  151 + $("#ascenso_tutores_ascenso_chosen").show();
  152 + }else{
  153 + $('.esc_investigacion').hide();
  154 + $('.esc_tesis').show();
  155 + $("#ascenso_tutores_ascenso_chosen").hide();
  156 + }
146 157  
147   - $("#ascenso_tutores_ascenso_chosen").show();
  158 + });
  159 +
  160 +
  161 +
  162 + $('#ascenso_tesisUbv').click(function() {
  163 + $('.esc_pertinencia')[this.checked ? "show" : "hide"]();
  164 + if(this.checked){
  165 + $('.esc_investigacion').show();
  166 + $("#ascenso_tutores_ascenso_chosen").show();
148 167 }else{
149   - $("#ascenso_tutores_ascenso_chosen").hide();
  168 + $('.esc_investigacion').hide();
  169 + $('.esc_tesis').show();
  170 + $("#ascenso_tutores_ascenso_chosen").hide();
150 171 }
151 172  
152   - });
  173 + });
153 174  
154 175  
155 176 $(".tutorForm").submit(function(e){
... ...
src/AppBundle/Controller/AscensoController.php
... ... @@ -199,6 +199,7 @@ class AscensoController extends Controller
199 199 $ascenso->setNai($nombreNai);
200 200 $ascenso->setInvestigacion($nombreInvestigacion);
201 201 $ascenso->setTituloTrabajo($form->get('titulo_trabajo')->getData());
  202 + $ascenso->setNombreNucelo($form->get('nombreNucleo')->getData());
202 203 $ascenso->setIdEscalafones($nueva_escala);
203 204 $ascenso->setIdEstatus($this->getDoctrine()->getRepository('AppBundle:Estatus')->findOneById(2));
204 205  
... ... @@ -222,6 +223,36 @@ class AscensoController extends Controller
222 223 //$ascenso->setIdLineaInvestigacion($form->get('lineas_investigacion')->getData());
223 224  
224 225 }
  226 +
  227 +
  228 + if ($form->get('aprobacion')->getData()){
  229 +
  230 + $constanciaAprobacion = $form->get('aprobacion')->getData();
  231 + $nombreAprobacion = md5(uniqid()).'.'.$constanciaAprobacion->guessExtension();
  232 + $constanciaAprobacion->move(
  233 + $this->container->getParameter('ascenso_directory'),
  234 + $nombreAprobacion
  235 + );
  236 + thumbnail2($nombreAprobacion, $this->container->getParameter('ascenso_directory'), $this->container->getParameter('ascenso_thumb_directory'));
  237 + $ascenso->setAprobacion($nombreAprobacion);
  238 + //$ascenso->setIdLineaInvestigacion($form->get('lineas_investigacion')->getData());
  239 +
  240 + }
  241 +
  242 +
  243 + if ($form->get('curriculo')->getData()){
  244 +
  245 + $constanciaCurriculo = $form->get('curriculo')->getData();
  246 + $nombreCurriculo = md5(uniqid()).'.'.$constanciaCurriculo->guessExtension();
  247 + $constanciaCurriculo->move(
  248 + $this->container->getParameter('ascenso_directory'),
  249 + $nombreCurriculo
  250 + );
  251 + thumbnail2($nombreCurriculo, $this->container->getParameter('ascenso_directory'), $this->container->getParameter('ascenso_thumb_directory'));
  252 + $ascenso->setCurriculo($nombreCurriculo);
  253 + //$ascenso->setIdLineaInvestigacion($form->get('lineas_investigacion')->getData());
  254 +
  255 + }
225 256  
226 257  
227 258  
... ...
src/AppBundle/Entity/Ascenso.php
... ... @@ -100,6 +100,32 @@ class Ascenso
100 100 * @Assert\File(mimeTypes={ "application/pdf" })
101 101 */
102 102 private $pertinencia;
  103 +
  104 +
  105 + /**
  106 + * @ORM\Column(type="string", nullable=true, options={"comment" = "ubicación del digital del informe de pertinencia en caso de ser tesis fuera de ubv"})
  107 + *
  108 + *
  109 + * @Assert\File(mimeTypes={ "application/pdf" })
  110 + */
  111 + private $aprobacion;
  112 +
  113 +
  114 + /**
  115 + * @ORM\Column(type="string", nullable=true, options={"comment" = "ubicación del digital del curriculo de los posibles jurados"})
  116 + *
  117 + *
  118 + * @Assert\File(mimeTypes={ "application/pdf" })
  119 + */
  120 + private $curriculo;
  121 +
  122 +
  123 +
  124 + /**
  125 + * @ORM\Column(name="nombre_nucleo", type="string", nullable=true, options={"comment" = "Nombre del núcleo de investigación"})
  126 + * @Assert\NotBlank(message="El nombre del núcleo de investigación es obligatorio.")
  127 + */
  128 + private $nombreNucelo;
103 129  
104 130  
105 131 /**
... ... @@ -510,4 +536,73 @@ class Ascenso
510 536 {
511 537 return $this->getIdRolInstitucion()->getIdRol()->getIdPersona()->getPrimerNombre();
512 538 }
  539 +
  540 + /**
  541 + * Set aprobacion
  542 + *
  543 + * @param string $aprobacion
  544 + * @return Ascenso
  545 + */
  546 + public function setAprobacion($aprobacion)
  547 + {
  548 + $this->aprobacion = $aprobacion;
  549 +
  550 + return $this;
  551 + }
  552 +
  553 + /**
  554 + * Get aprobacion
  555 + *
  556 + * @return string
  557 + */
  558 + public function getAprobacion()
  559 + {
  560 + return $this->aprobacion;
  561 + }
  562 +
  563 + /**
  564 + * Set nombreNucelo
  565 + *
  566 + * @param string $nombreNucelo
  567 + * @return Ascenso
  568 + */
  569 + public function setNombreNucelo($nombreNucelo)
  570 + {
  571 + $this->nombreNucelo = $nombreNucelo;
  572 +
  573 + return $this;
  574 + }
  575 +
  576 + /**
  577 + * Get nombreNucelo
  578 + *
  579 + * @return string
  580 + */
  581 + public function getNombreNucelo()
  582 + {
  583 + return $this->nombreNucelo;
  584 + }
  585 +
  586 + /**
  587 + * Set curriculo
  588 + *
  589 + * @param string $curriculo
  590 + * @return Ascenso
  591 + */
  592 + public function setCurriculo($curriculo)
  593 + {
  594 + $this->curriculo = $curriculo;
  595 +
  596 + return $this;
  597 + }
  598 +
  599 + /**
  600 + * Get curriculo
  601 + *
  602 + * @return string
  603 + */
  604 + public function getCurriculo()
  605 + {
  606 + return $this->curriculo;
  607 + }
513 608 }
... ...
src/AppBundle/Entity/Ascenso.php~
... ... @@ -100,6 +100,32 @@ class Ascenso
100 100 * @Assert\File(mimeTypes={ "application/pdf" })
101 101 */
102 102 private $pertinencia;
  103 +
  104 +
  105 + /**
  106 + * @ORM\Column(type="string", nullable=true, options={"comment" = "ubicación del digital del informe de pertinencia en caso de ser tesis fuera de ubv"})
  107 + *
  108 + *
  109 + * @Assert\File(mimeTypes={ "application/pdf" })
  110 + */
  111 + private $aprobacion;
  112 +
  113 +
  114 + /**
  115 + * @ORM\Column(type="string", nullable=true, options={"comment" = "ubicación del digital del curriculo de los posibles jurados"})
  116 + *
  117 + *
  118 + * @Assert\File(mimeTypes={ "application/pdf" })
  119 + */
  120 + private $curriculo;
  121 +
  122 +
  123 +
  124 + /**
  125 + * @ORM\Column(name="nombre_nucleo", type="string", nullable=true, options={"comment" = "Nombre del núcleo de investigación"})
  126 + * @Assert\NotBlank(message="El nombre del núcleo de investigación es obligatorio.")
  127 + */
  128 + private $nombreNucelo;
103 129  
104 130  
105 131 /**
... ... @@ -460,4 +486,100 @@ class Ascenso
460 486  
461 487  
462 488  
  489 + /**
  490 + * Constructor
  491 + */
  492 + public function __construct()
  493 + {
  494 + $this->tutoresAscenso = new \Doctrine\Common\Collections\ArrayCollection();
  495 + }
  496 +
  497 + /**
  498 + * Add tutoresAscenso
  499 + *
  500 + * @param \AppBundle\Entity\TutoresAscenso $tutoresAscenso
  501 + * @return Ascenso
  502 + */
  503 + public function addTutoresAscenso(\AppBundle\Entity\TutoresAscenso $tutoresAscenso)
  504 + {
  505 + $this->tutoresAscenso[] = $tutoresAscenso;
  506 +
  507 + return $this;
  508 + }
  509 +
  510 + /**
  511 + * Remove tutoresAscenso
  512 + *
  513 + * @param \AppBundle\Entity\TutoresAscenso $tutoresAscenso
  514 + */
  515 + public function removeTutoresAscenso(\AppBundle\Entity\TutoresAscenso $tutoresAscenso)
  516 + {
  517 + $this->tutoresAscenso->removeElement($tutoresAscenso);
  518 + }
  519 +
  520 + /**
  521 + * Get tutoresAscenso
  522 + *
  523 + * @return \Doctrine\Common\Collections\Collection
  524 + */
  525 + public function getTutoresAscenso()
  526 + {
  527 + return $this->tutoresAscenso;
  528 + }
  529 +
  530 + /**
  531 + *
  532 + * @return string
  533 + */
  534 +
  535 + public function __toString()
  536 + {
  537 + return $this->getIdRolInstitucion()->getIdRol()->getIdPersona()->getPrimerNombre();
  538 + }
  539 +
  540 + /**
  541 + * Set aprobacion
  542 + *
  543 + * @param string $aprobacion
  544 + * @return Ascenso
  545 + */
  546 + public function setAprobacion($aprobacion)
  547 + {
  548 + $this->aprobacion = $aprobacion;
  549 +
  550 + return $this;
  551 + }
  552 +
  553 + /**
  554 + * Get aprobacion
  555 + *
  556 + * @return string
  557 + */
  558 + public function getAprobacion()
  559 + {
  560 + return $this->aprobacion;
  561 + }
  562 +
  563 + /**
  564 + * Set nombreNucelo
  565 + *
  566 + * @param string $nombreNucelo
  567 + * @return Ascenso
  568 + */
  569 + public function setNombreNucelo($nombreNucelo)
  570 + {
  571 + $this->nombreNucelo = $nombreNucelo;
  572 +
  573 + return $this;
  574 + }
  575 +
  576 + /**
  577 + * Get nombreNucelo
  578 + *
  579 + * @return string
  580 + */
  581 + public function getNombreNucelo()
  582 + {
  583 + return $this->nombreNucelo;
  584 + }
463 585 }
... ...
src/AppBundle/Form/AscensoType.php
... ... @@ -101,11 +101,56 @@ class AscensoType extends AbstractType
101 101 )
102 102 ))
103 103  
  104 + ->add('tipoTrabajoInvestigacion', ChoiceType::class, array(
  105 + 'placeholder' => 'Seleccione el Tipo de Trabajo de Investigación',
  106 + 'choices' => array(
  107 + 'Tesis (Trabajo de 4to nivel)' => true,
  108 + 'Trabajo de Investigacion' => false,
  109 + ),
  110 + // *this line is important*
  111 + 'choices_as_values' => true,
  112 + ))
  113 +
  114 +
  115 + ->add('tesisUbv', CheckboxType::class, array(
  116 + 'label' => '¿La tesis fue realizada FUERA de la UBV?',
  117 + 'label_attr' => array( 'class' => 'esc_tesis', 'style' => 'display:none;'),
  118 + 'required' => false,
  119 + 'attr' => array(
  120 + 'style' => 'display:none;',
  121 + 'class' => 'esc_tesis'
  122 + )
  123 + ))
  124 +
  125 +
  126 +
104 127 ->add('titulo_trabajo', TextType::class, array(
105   - 'label' => 'Título del Trabajo de Ascenso',
106   -
107   - 'required' => true,
108   -
  128 + 'label' => 'Título del Trabajo de Ascenso',
  129 + 'required' => true,
  130 + ))
  131 +
  132 +
  133 + ->add('aprobacion', FileType::class, array(
  134 + 'label' => 'Acta de Aprobación de la Tesis',
  135 + 'label_attr' => array( 'class' => 'esc_tesis', 'style' => 'display:none;'),
  136 + 'required' => false,
  137 + 'attr' => array(
  138 + 'style' => 'display:none;',
  139 + 'class' => 'esc_tesis'
  140 + ),
  141 + 'constraints' => array(
  142 + new File(array(
  143 + 'maxSize' => '1024K',
  144 + 'mimeTypes' => [
  145 + 'application/pdf',
  146 + 'application/x-pdf',
  147 + 'image/png',
  148 + 'image/jpg',
  149 + 'image/jpeg'
  150 + ],
  151 + 'mimeTypesMessage' => 'Sólo se permiten extensiones png, jpeg y pdf'
  152 + ))
  153 + )
109 154 ))
110 155  
111 156  
... ... @@ -128,17 +173,14 @@ class AscensoType extends AbstractType
128 173 ))
129 174  
130 175  
131   - ->add('tipoTrabajoInvestigacion', CheckboxType::class, array(
132   - 'label' => 'Si su trabajo de investigación es TESIS, responda ¿Fue realizado fuera de la UBV?',
133   - 'required' => false,
134   - ))
  176 +
135 177  
136 178 ->add('tutores_ascenso', EntityType::class, array(
137 179 'placeholder' => 'Añadir Posibles Jurados...',
138 180 'class' => 'AppBundle:TutoresAscenso',
139 181 'required' => false,
140 182 'label' => 'Asigne Posibles Jurados',
141   - 'label_attr' => array( 'class' => 'esc_oposicion'),
  183 + 'label_attr' => array( 'class' => 'esc_investigacion'),
142 184 'multiple' => true,
143 185 'group_by' => 'institucion',
144 186  
... ... @@ -146,14 +188,36 @@ class AscensoType extends AbstractType
146 188 'disabled' => 'true',
147 189 )*/
148 190 ))
  191 +
  192 +
  193 + ->add('curriculo', FileType::class, array(
  194 + 'label' => 'Digital de la síntesis curricular de los jurados',
  195 + 'label_attr' => array( 'class' => 'esc_investigacion', 'style' => 'display:none;'),
  196 + 'required' => false,
  197 + 'attr' => array(
  198 + 'style' => 'display:none;',
  199 + 'class' => 'esc_investigacion'
  200 + ),
  201 + 'constraints' => array(
  202 + new File(array(
  203 + 'maxSize' => '1024K',
  204 + 'mimeTypes' => [
  205 + 'application/pdf',
  206 + 'application/x-pdf',
  207 + ],
  208 + 'mimeTypesMessage' => 'Sólo se permiten extensiones pdf'
  209 + ))
  210 + )
  211 + ))
  212 +
149 213  
150 214 ->add('pertinencia', FileType::class, array(
151 215 'label' => 'Informe de Pertinencia',
152   - 'label_attr' => array( 'class' => 'esc_oposicion'),
  216 + 'label_attr' => array( 'class' => 'esc_pertinencia'),
153 217 'required' => false,
154 218 'attr' => array(
155 219 'style' => 'display:none;',
156   - 'class' => 'esc_oposicion'
  220 + 'class' => 'esc_pertinencia'
157 221 ),
158 222 'constraints' => array(
159 223 new File(array(
... ... @@ -169,6 +233,14 @@ class AscensoType extends AbstractType
169 233 ))
170 234 )
171 235 ))
  236 +
  237 +
  238 + ->add('nombreNucleo', TextType::class, array(
  239 + 'label' => 'Nombre del Núcleo al cual pertenece',
  240 +
  241 + 'required' => true,
  242 +
  243 + ))
172 244  
173 245  
174 246  
... ...