detallepostulante.jsp 21.7 KB
Newer Older
1 2 3
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
4
<%@ taglib uri="http://kwonnam.pe.kr/jsp/template-inheritance" prefix="layout"%>
5
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
6

7

8 9
<layout:extends name="layouts/base.jsp">
    <layout:put block="contents" type="REPLACE">
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
        <h2 style="text-align: center;">
            DETALLE POSTULANTE        
        </h2>
        <div class="row gy-3">
            <div class="col-md-6">
                <div class="card mb-3">
                  <div class="card-body">
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Nombre</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.nombre} ${postulante.apellido}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Email</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.correo}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Vive en</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.getCiudad().getNombre()}, ${postulante.getCiudad().getDepartamento().getNombre()}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Nro de Documento</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.tipoDocumento}: ${postulante.nroDocument}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Telefono</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.telefono}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
64
                        <h6 class="mb-0">Edad</h6>
65
                      </div>
66 67
                      <div id="edad" class="col-sm-9 text-secondary"></div>
                      <input style="display: none;" id="dob" value="${postulante.fechaNacimiento}">
68 69 70 71
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
72
                        <h6 class="mb-0">Direccion</h6>
73 74
                      </div>
                      <div class="col-sm-9 text-secondary">
75
                        ${postulante.direccion}
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Nivel de Ingles</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.nivelIngles}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Estado Civil</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.estadoCivil.getDescripcion()}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Nacionalidad</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.nacionalidad.getDescripcion()}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Disponbilidad</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.disponibilidad.getDescripcion()}
                      </div>
                    </div>
114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">Estado</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.estadoPostulante.getEstado()}
                      </div>
                    </div>
                    <hr>
                    <div class="row">
                      <div class="col-sm-3">
                        <h6 class="mb-0">ComentarioRRHH</h6>
                      </div>
                      <div class="col-sm-9 text-secondary">
                        ${postulante.getComentarioRRHH()}
                      </div>
                    </div>
132 133 134
                    <hr>
                    <div class="row">
                      <div class="col">
135
                        <button type="button" class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#estadoModalLong">Agregar observacion</button>
136
                      </div>
137 138 139 140 141 142 143 144
                      <c:choose>
         
                        <c:when test = "${cvId != null}">
                          <div class="col">
                            <a class="btn btn-link" target="__blank" href="/postulantes/cvFile/${cvId}">Descargar CV</a>
                          </div>
                        </c:when>
                        
145 146 147 148
                      </c:choose>
                      <div class="col">
                        <a class="btn btn-link" target="__blank" href="/postulantes/${postulante.id}/pdf">Obtener pdf</a>
                      </div>
149
                      
150 151 152
                    </div>
                  </div>
                </div>
153

154 155 156 157 158 159
              </div>
              <div class="col-md-6">
                <div class="row gy-3">
                    <div class="col-md-6">
                        <div class="card h-100">
                            <div class="card-body">
160
                              <h6 class="text-start fw-bold">Tecnologias</h6>
161 162 163 164 165 166 167
                                <c:forEach items="${postulante.tecnologias}" var="detalle_tecnologia">
                                    <small>${detalle_tecnologia.getTecnologia().getNombre()}</small>
                                    <div class="progress mb-3" style="height: 5px">
                                      <div class="progress-bar bg-primary" role="progressbar" style="width: ${(detalle_tecnologia.getNivel() / 5) * 100}%" aria-valuenow="${detalle_tecnologia.getNivel()}" aria-valuemin="1" aria-valuemax="5"></div>
                                    </div>
                                </c:forEach>
                                <hr>
168
                                <h6 class="text-start fw-bold">Cargos al que postula</h6>
169 170
                            <ul class="list-group list-group-flush">
                                <c:forEach items="${postulante.postulaciones}" var="convocatoria">
171

172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
                                    <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                      <h6 class="mb-0">${convocatoria.getCargo().getNombre()}</h6>
                                      <span class="text-secondary"></span>
                                    </li>
                                </c:forEach>
                              
                            </ul>
                             
                            </div>
                          </div>
                    </div>
                    <div class="col-md-6">
                          <div class="card">
                              <div class="card-body">
                            <div id="carouselExampleIndicators" class="carousel carousel-dark slide" data-bs-ride="carousel">
                            
                            <div class="carousel-inner">
                                
                                
191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
                              <h6 class="d-flex justify-content-between fw-bold px-1">
                                <c:choose>
                                  <c:when test="${postulante.experiencias.size() > 1}">
                                    <i class="bi bi-arrow-left-circle-fill" data-bs-target="#carouselExampleIndicators" data-bs-slide="prev"></i>
                                    Experiencias
                                    <i class="bi bi-arrow-right-circle-fill" data-bs-target="#carouselExampleIndicators" data-bs-slide="next"></i>
                                  </c:when>
                                  <c:otherwise>
                                    Experiencias
                                  </c:otherwise>

                                </c:choose>
                                

                              </h6>
206 207
                                <c:forEach items="${postulante.experiencias}" var="detalle_experiencia" varStatus="status">
                                    <div class="carousel-item  ${status.first ? 'active' : ''}" data-bs-interval="false">
208

209 210 211 212 213 214 215
                                        <ul class="list-group list-group-flush ">
                                            <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                                <h6 class="mb-0">Institucion</h6>
                                                <span class="text-secondary">${detalle_experiencia.getInstitucion()}</span>
                                            </li>
                                            <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                                <h6 class="mb-0">Fecha Inicio</h6>
216 217
                                                <span class="text-secondary"><fmt:formatDate value="${detalle_experiencia.getFechaDesde()}" pattern="dd-MM-yyyy" /></span>
                                           <!--    <input style="display:none;" id="fechaInicioExp" value="${detalle_experiencia.getFechaDesde()}">
218

219
                                                <span style="display: none;" class="text-secondary" id="fechaInicioExp2">${detalle_experiencia.getFechaDesde()}</span>--> 
220 221 222
                                            </li>
                                            <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                                <h6 class="mb-0">Fecha Fin</h6>
223 224 225
                                                <span class="text-secondary"><fmt:formatDate value="${detalle_experiencia.getFechaHasta()}" pattern="dd-MM-yyyy" /></span>
                                             <!--    <input style="display:none;" id="fechaFinExp" value="${detalle_experiencia.getFechaHasta()}">
                                                <span style="display: none;" class="text-secondary" id="fechaFinExp2">${detalle_experiencia.getFechaHasta()}</span>--> 
226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245
                                            </li>
                                            <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                                <h6 class="mb-0">Referencia</h6>
                                                <span class="text-secondary">${detalle_experiencia.getNombreReferencia()}</span>
                                            </li>
                                            <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                                <h6 class="mb-0">Telefono de la referencia</h6>
                                                <span class="text-secondary">${detalle_experiencia.getTelefonoReferencia()}</span>
                                            </li>
                                            <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                                <h6 class="mb-0">Cargo</h6>
                                                <span class="text-secondary">${detalle_experiencia.getCargo()}</span>
                                            </li>
                                            <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                                <h6 class="mb-0">Motivo de salida</h6>
                                                <span class="text-secondary">${detalle_experiencia.getMotivoSalida()}</span>
                                            </li>
                                            
                                            
                                        </ul>
246 247
                                      </div>
                                      </c:forEach>
248 249 250 251
                                        
                                    
                              
                            </div>
252 253
                            

254 255 256 257 258 259 260
                          </div>
                           </div>
                          </div>
                    </div>
                    <div class="col-md-6">
                        <div class="card">
                            <div class="card-body">
261
                          <div id="carouselExampleIndicators1" class="carousel carousel-dark slide" data-bs-ride="carousel">
262 263 264
                          
                          <div class="carousel-inner">
                              
265 266 267 268 269 270 271 272 273 274 275 276 277 278
                            <h6 class="d-flex justify-content-between fw-bold px-1">

                              <c:choose>
                                    <c:when test="${postulante.experiencias.size() > 1}">
                                      <i class="bi bi-arrow-left-circle-fill" data-bs-target="#carouselExampleIndicators1" data-bs-slide="prev"></i>
                                      Estudios
                                      <i class="bi bi-arrow-right-circle-fill" data-bs-target="#carouselExampleIndicators1" data-bs-slide="next"></i>
                                    </c:when>
                                    <c:otherwise>
                                      Estudios
                                    </c:otherwise>
  
                                  </c:choose>
                            </h6>
279 280
                              <c:forEach items="${postulante.estudios}" var="detalle_estudios" varStatus="status">
                                  <div class="carousel-item  ${status.first ? 'active' : ''}" data-bs-interval="false">
281

282 283 284 285 286 287 288
                                      <ul class="list-group list-group-flush ">
                                          <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                              <h6 class="mb-0">Institucion</h6>
                                              <span class="text-secondary">${detalle_estudios.getInstitucion().getNombre()}</span>
                                          </li>
                                          <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                              <h6 class="mb-0">Fecha Inicio</h6>
289
                                              <span class="text-secondary"><fmt:formatDate value="${detalle_estudios.getFechaDesde()}" pattern="dd-MM-yyyy" /></span>
290

291 292
                                           <!-- <input style="display:none;" id="fechaInicioEst" value="${detalle_estudios.getFechaDesde()}">-->  
                                              
293 294 295
                                          </li>
                                          <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                              <h6 class="mb-0">Fecha Fin</h6>
296
                                              <span class="text-secondary"><fmt:formatDate value="${detalle_estudios.getFechaHasta()}" pattern="dd-MM-yyyy" /></span>
297

298
                                            <!--  <input style="display:none;" id="fechaFinEst" value="${detalle_estudios.getFechaHasta()}">-->
299 300 301 302 303 304 305 306 307 308 309 310 311
                                          </li>
                                          <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                              <h6 class="mb-0">Tipo de Estudio</h6>
                                              <span class="text-secondary">${detalle_estudios.getTipoDeEstudio()}</span>
                                          </li>
                                          <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                              <h6 class="mb-0">Tema de estudio</h6>
                                              <span class="text-secondary">${detalle_estudios.getTemaDeEstudio()}</span>
                                          </li>
                                          <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                              <h6 class="mb-0">Estado</h6>
                                              <span class="text-secondary">${detalle_estudios.getEstado()}</span>
                                          </li>
312
                                          
313 314 315 316 317 318 319 320 321
                                          
                                          
                                      </ul>
                                  </div>
                              </c:forEach>
                                      
                                  
                            
                          </div>
322
                          
323 324 325 326 327 328 329
                        </div>
                         </div>
                        </div>
                    </div>
                    <div class="col-md-6">
                        <div class="card">
                            <div class="card-body">
330
                              <h6 class="text-start fw-bold">Referencias Personales</h6>
331 332
                            <ul class="list-group list-group-flush">
                                <c:forEach items="${postulante.referencias}" var="referencia">
333

334 335 336 337 338 339 340 341
                                    <li class="list-group-item d-flex justify-content-between align-items-center flex-wrap">
                                      <h6 class="mb-0">${referencia.nombre}, ${referencia.relacion}, ${referencia.telefono}</h6>
                                      <span class="text-secondary"></span>
                                    </li>
                                </c:forEach>
                            </div>
                        </div>
                    </div>
342
                </div>
343 344 345 346 347
              </div>
              
            
            
          </div>
348 349 350 351
    <!-- Modal -->
    <div class="modal fade" id="estadoModalLong" tabindex="-1" role="dialog" aria-labelledby="estadorrhhModal" aria-hidden="true">
      <div class="modal-dialog" role="document">
      <div class="modal-content">
352
        <form:form class="needs-validation" method="post" modelAttribute="postulante">
353 354
          <div class="modal-header">
          <h5 class="modal-title" id="estadorrhhModal">Estado</h5>
355
          <button type="button" class="close" data-bs-dismiss="modal" aria-label="Close">
356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376
              <span aria-hidden="true">&times;</span>
          </button>
          </div>
          <div class="modal-body">
                  <form:label path="estadoPostulante" class="form-label">Estado</form:label>
                  <div class="inputs">
                      <form:select class="form-select" path="estadoPostulante" aria-label="Default select example">
                          <c:forEach items="${estadoP}" var="estadoPostulante">
                                      <c:choose>
                                          <c:when test="${estadoPostulante.getEstado()=='Nuevo' }">
                                          </c:when>
                                          <c:otherwise>
                                              <form:option value="${estadoPostulante}">${estadoPostulante.getEstado()}</form:option>
                                          </c:otherwise>
                                      </c:choose>    
                          </c:forEach>
                      </form:select>
                  </div>
                  <div class="inputs">
                      <form:label path="comentarioRRHH" class="form-label">ComentarioRRHH</form:label>
                      <form:textarea  class="form-control" path="comentarioRRHH" id="comentarioRRHH"></form:textarea>
377 378 379 380 381 382 383
                  </div><br>
                  
                </div>
                <div class="modal-footer">
                  <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Cancelar</button>
                  <button type="submit" class="btn btn-primary" data-bs-dismiss="modal">Agregar</button>
                </div>
384 385 386 387 388
              </form:form> 
      </div>
      </div>
  </div>  
  <layout:put block="scripts" type="APPEND">
389

390
    <script src="../valEdad.js"></script>
391
    
392
  </layout:put>
393

394
            
395
        
396
    
397
 
398 399
    </layout:put>
</layout:extends>
400