Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
th-app-java
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Oscar Enrique Gonzalez Escurra
th-app-java
Commits
e6f2073b
Commit
e6f2073b
authored
Nov 24, 2021
by
Cesar Giulano Gonzalez Maqueda
Browse files
Options
Browse Files
Download
Plain Diff
Merge con joel
parents
1795f580
11fc9313
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
32 additions
and
260 deletions
+32
-260
curriculumsearch/src/main/java/com/roshka/DTO/PostulanteListaDTO.java
+1
-10
curriculumsearch/src/main/java/com/roshka/controller/PostulanteController.java
+0
-2
curriculumsearch/src/main/java/com/roshka/controller/PostulanteRRHHController.java
+4
-8
curriculumsearch/src/main/java/com/roshka/modelo/Disponibilidad.java
+0
-24
curriculumsearch/src/main/java/com/roshka/modelo/DisponibilidadConverter.java
+0
-35
curriculumsearch/src/main/java/com/roshka/modelo/Postulante.java
+0
-2
curriculumsearch/src/main/java/com/roshka/repositorio/PostulanteRepository.java
+11
-13
curriculumsearch/src/main/resources/json/postulante.json
+7
-7
curriculumsearch/src/main/resources/static/main.js
+0
-79
curriculumsearch/src/main/webapp/jsp/detallepostulante.jsp
+0
-9
curriculumsearch/src/main/webapp/jsp/detallepostulante2.jsp
+1
-9
curriculumsearch/src/main/webapp/jsp/postulante-form.jsp
+6
-43
curriculumsearch/src/main/webapp/jsp/postulantes.jsp
+2
-19
No files found.
curriculumsearch/src/main/java/com/roshka/DTO/PostulanteListaDTO.java
View file @
e6f2073b
...
@@ -3,7 +3,6 @@ package com.roshka.DTO;
...
@@ -3,7 +3,6 @@ package com.roshka.DTO;
import
java.util.List
;
import
java.util.List
;
import
com.roshka.modelo.ConvocatoriaCargo
;
import
com.roshka.modelo.ConvocatoriaCargo
;
import
com.roshka.modelo.Disponibilidad
;
import
com.roshka.modelo.EstadoPostulante
;
import
com.roshka.modelo.EstadoPostulante
;
import
com.roshka.modelo.PostulanteTecnologia
;
import
com.roshka.modelo.PostulanteTecnologia
;
...
@@ -11,19 +10,17 @@ public class PostulanteListaDTO {
...
@@ -11,19 +10,17 @@ public class PostulanteListaDTO {
private
Long
id
;
private
Long
id
;
private
String
nombre
;
private
String
nombre
;
private
String
apellido
;
private
String
apellido
;
private
Disponibilidad
disponibilidad
;
private
Long
nivelIngles
;
private
Long
nivelIngles
;
private
Long
experienciaMeses
;
private
Long
experienciaMeses
;
private
List
<
PostulanteTecnologia
>
tecnologias
;
private
List
<
PostulanteTecnologia
>
tecnologias
;
private
EstadoPostulante
estado
;
private
EstadoPostulante
estado
;
private
List
<
ConvocatoriaCargo
>
convocatoria
;
private
List
<
ConvocatoriaCargo
>
convocatoria
;
public
PostulanteListaDTO
(
Long
id
,
String
nombre
,
String
apellido
,
Disponibilidad
disponibilidad
,
public
PostulanteListaDTO
(
Long
id
,
String
nombre
,
String
apellido
,
Long
nivelIngles
,
Long
experienciaMeses
,
List
<
PostulanteTecnologia
>
tecnologias
,
EstadoPostulante
estado
,
List
<
ConvocatoriaCargo
>
convocatoria
)
{
Long
nivelIngles
,
Long
experienciaMeses
,
List
<
PostulanteTecnologia
>
tecnologias
,
EstadoPostulante
estado
,
List
<
ConvocatoriaCargo
>
convocatoria
)
{
this
.
id
=
id
;
this
.
id
=
id
;
this
.
nombre
=
nombre
;
this
.
nombre
=
nombre
;
this
.
apellido
=
apellido
;
this
.
apellido
=
apellido
;
this
.
disponibilidad
=
disponibilidad
;
this
.
nivelIngles
=
nivelIngles
;
this
.
nivelIngles
=
nivelIngles
;
this
.
experienciaMeses
=
experienciaMeses
;
this
.
experienciaMeses
=
experienciaMeses
;
this
.
tecnologias
=
tecnologias
;
this
.
tecnologias
=
tecnologias
;
...
@@ -48,12 +45,6 @@ public class PostulanteListaDTO {
...
@@ -48,12 +45,6 @@ public class PostulanteListaDTO {
public
void
setApellido
(
String
apellido
)
{
public
void
setApellido
(
String
apellido
)
{
this
.
apellido
=
apellido
;
this
.
apellido
=
apellido
;
}
}
public
Disponibilidad
getDisponibilidad
()
{
return
disponibilidad
;
}
public
void
setDisponibilidad
(
Disponibilidad
disponibilidad
)
{
this
.
disponibilidad
=
disponibilidad
;
}
public
Long
getNivelIngles
()
{
public
Long
getNivelIngles
()
{
return
nivelIngles
;
return
nivelIngles
;
}
}
...
...
curriculumsearch/src/main/java/com/roshka/controller/PostulanteController.java
View file @
e6f2073b
...
@@ -10,7 +10,6 @@ import javax.validation.ConstraintViolationException;
...
@@ -10,7 +10,6 @@ import javax.validation.ConstraintViolationException;
import
com.roshka.modelo.*
;
import
com.roshka.modelo.*
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.core.JsonProcessingException
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.roshka.modelo.Disponibilidad
;
import
com.roshka.modelo.EstadoCivil
;
import
com.roshka.modelo.EstadoCivil
;
import
com.roshka.modelo.Nacionalidad
;
import
com.roshka.modelo.Nacionalidad
;
import
com.roshka.modelo.Postulante
;
import
com.roshka.modelo.Postulante
;
...
@@ -79,7 +78,6 @@ public class PostulanteController {
...
@@ -79,7 +78,6 @@ public class PostulanteController {
@RequestMapping
(
value
=
"/work-with-us"
,
method
=
RequestMethod
.
GET
)
@RequestMapping
(
value
=
"/work-with-us"
,
method
=
RequestMethod
.
GET
)
public
String
getFormPostulante
(
Model
model
){
public
String
getFormPostulante
(
Model
model
){
model
.
addAttribute
(
"tecnologias"
,
tecRepo
.
findAll
());
model
.
addAttribute
(
"tecnologias"
,
tecRepo
.
findAll
());
model
.
addAttribute
(
"disponibilidades"
,
Disponibilidad
.
values
());
model
.
addAttribute
(
"tiposDeEstudio"
,
TipoDeEstudio
.
values
());
model
.
addAttribute
(
"tiposDeEstudio"
,
TipoDeEstudio
.
values
());
model
.
addAttribute
(
"estadosEstudio"
,
EstadoEstudio
.
values
());
model
.
addAttribute
(
"estadosEstudio"
,
EstadoEstudio
.
values
());
model
.
addAttribute
(
"estadosCiviles"
,
EstadoCivil
.
values
());
model
.
addAttribute
(
"estadosCiviles"
,
EstadoCivil
.
values
());
...
...
curriculumsearch/src/main/java/com/roshka/controller/PostulanteRRHHController.java
View file @
e6f2073b
...
@@ -15,7 +15,6 @@ import com.fasterxml.jackson.core.JsonProcessingException;
...
@@ -15,7 +15,6 @@ import com.fasterxml.jackson.core.JsonProcessingException;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.roshka.DTO.PostulanteListaDTO
;
import
com.roshka.DTO.PostulanteListaDTO
;
import
com.roshka.modelo.*
;
import
com.roshka.modelo.*
;
import
com.roshka.modelo.Disponibilidad
;
import
com.roshka.modelo.EstadoPostulante
;
import
com.roshka.modelo.EstadoPostulante
;
import
com.roshka.modelo.Postulante
;
import
com.roshka.modelo.Postulante
;
import
com.roshka.repositorio.*
;
import
com.roshka.repositorio.*
;
...
@@ -91,7 +90,6 @@ public class PostulanteRRHHController {
...
@@ -91,7 +90,6 @@ public class PostulanteRRHHController {
@RequestParam
(
required
=
false
)
Long
tecId
,
@RequestParam
(
required
=
false
)
Long
tecId
,
@RequestParam
(
required
=
false
)
String
nombre
,
@RequestParam
(
required
=
false
)
String
nombre
,
@RequestParam
(
required
=
false
)
EstadoPostulante
estado
,
@RequestParam
(
required
=
false
)
EstadoPostulante
estado
,
@RequestParam
(
required
=
false
)
Disponibilidad
dispo
,
@RequestParam
(
required
=
false
)
Long
lvlEng
,
@RequestParam
(
required
=
false
)
Long
lvlEng
,
@RequestParam
(
required
=
false
)
Long
lvlTec
,
@RequestParam
(
required
=
false
)
Long
lvlTec
,
@RequestParam
(
required
=
false
)
Long
instId
,
@RequestParam
(
required
=
false
)
Long
instId
,
...
@@ -104,7 +102,6 @@ public class PostulanteRRHHController {
...
@@ -104,7 +102,6 @@ public class PostulanteRRHHController {
final
Integer
CANTIDAD_POR_PAGINA
=
10
;
final
Integer
CANTIDAD_POR_PAGINA
=
10
;
Pageable
page
=
PageRequest
.
of
(
nroPagina
,
CANTIDAD_POR_PAGINA
,
Sort
.
by
(
"id"
));
Pageable
page
=
PageRequest
.
of
(
nroPagina
,
CANTIDAD_POR_PAGINA
,
Sort
.
by
(
"id"
));
model
.
addAttribute
(
"tecnologias"
,
tecRepo
.
findAll
());
model
.
addAttribute
(
"tecnologias"
,
tecRepo
.
findAll
());
model
.
addAttribute
(
"disponibilidades"
,
Disponibilidad
.
values
());
model
.
addAttribute
(
"institucionesEducativas"
,
institucionRepository
.
findAll
());
model
.
addAttribute
(
"institucionesEducativas"
,
institucionRepository
.
findAll
());
model
.
addAttribute
(
"estadoP"
,
EstadoPostulante
.
values
());
model
.
addAttribute
(
"estadoP"
,
EstadoPostulante
.
values
());
...
@@ -121,14 +118,14 @@ public class PostulanteRRHHController {
...
@@ -121,14 +118,14 @@ public class PostulanteRRHHController {
nombre
==
null
||
nombre
.
trim
().
isEmpty
()
?
nombre
==
null
||
nombre
.
trim
().
isEmpty
()
?
new
TypedParameterValue
(
StringType
.
INSTANCE
,
null
)
:
new
TypedParameterValue
(
StringType
.
INSTANCE
,
null
)
:
new
TypedParameterValue
(
StringType
.
INSTANCE
,
"%"
+
nombre
+
"%"
),
new
TypedParameterValue
(
StringType
.
INSTANCE
,
"%"
+
nombre
+
"%"
),
dispo
,
lvlEng
,
lvlTec
,
tecId
,
instId
,
cargoId
,
page
,
estado
,
convId
,
expInMonths
);
lvlEng
,
lvlTec
,
tecId
,
instId
,
cargoId
,
page
,
estado
,
convId
,
expInMonths
);
model
.
addAttribute
(
"numeroOcurrencias"
,
postulantesPag
.
getTotalElements
());
model
.
addAttribute
(
"numeroOcurrencias"
,
postulantesPag
.
getTotalElements
());
List
<
Postulante
>
postulantes
=
postulantesPag
.
getContent
();
List
<
Postulante
>
postulantes
=
postulantesPag
.
getContent
();
List
<
PostulanteListaDTO
>
postulantesDTO
=
new
ArrayList
<>();
List
<
PostulanteListaDTO
>
postulantesDTO
=
new
ArrayList
<>();
for
(
Postulante
postulante
:
postulantes
)
{
for
(
Postulante
postulante
:
postulantes
)
{
postulantesDTO
.
add
(
new
PostulanteListaDTO
(
postulante
.
getId
(),
postulante
.
getNombre
(),
postulantesDTO
.
add
(
new
PostulanteListaDTO
(
postulante
.
getId
(),
postulante
.
getNombre
(),
postulante
.
getApellido
(),
postulante
.
get
Disponibilidad
(),
postulante
.
get
NivelIngles
(),
postulante
.
getApellido
(),
postulante
.
getNivelIngles
(),
postulante
.
getMesesDeExperiencia
(),
postulante
.
getTecnologias
(),
postulante
.
getEstadoPostulante
(),
postulante
.
getMesesDeExperiencia
(),
postulante
.
getTecnologias
(),
postulante
.
getEstadoPostulante
(),
postulante
.
getPostulaciones
()));
postulante
.
getPostulaciones
()));
}
}
...
@@ -148,7 +145,6 @@ public class PostulanteRRHHController {
...
@@ -148,7 +145,6 @@ public class PostulanteRRHHController {
@RequestParam
(
required
=
false
)
Long
tecId
,
@RequestParam
(
required
=
false
)
Long
tecId
,
@RequestParam
(
required
=
false
)
String
nombre
,
@RequestParam
(
required
=
false
)
String
nombre
,
@RequestParam
(
required
=
false
)
EstadoPostulante
estado
,
@RequestParam
(
required
=
false
)
EstadoPostulante
estado
,
@RequestParam
(
required
=
false
)
Disponibilidad
dispo
,
@RequestParam
(
required
=
false
)
Long
lvlEng
,
@RequestParam
(
required
=
false
)
Long
lvlEng
,
@RequestParam
(
required
=
false
)
Long
lvlTec
,
@RequestParam
(
required
=
false
)
Long
lvlTec
,
@RequestParam
(
required
=
false
)
Long
instId
,
@RequestParam
(
required
=
false
)
Long
instId
,
...
@@ -162,13 +158,13 @@ public class PostulanteRRHHController {
...
@@ -162,13 +158,13 @@ public class PostulanteRRHHController {
nombre
==
null
||
nombre
.
trim
().
isEmpty
()
?
nombre
==
null
||
nombre
.
trim
().
isEmpty
()
?
new
TypedParameterValue
(
StringType
.
INSTANCE
,
null
)
:
new
TypedParameterValue
(
StringType
.
INSTANCE
,
null
)
:
new
TypedParameterValue
(
StringType
.
INSTANCE
,
"%"
+
nombre
+
"%"
),
new
TypedParameterValue
(
StringType
.
INSTANCE
,
"%"
+
nombre
+
"%"
),
dispo
,
lvlEng
,
lvlTec
,
tecId
,
instId
,
cargoId
,
page
,
estado
,
convId
,
expInMonths
);
lvlEng
,
lvlTec
,
tecId
,
instId
,
cargoId
,
page
,
estado
,
convId
,
expInMonths
);
List
<
Postulante
>
postulantes
=
postulantesPag
.
getContent
();
List
<
Postulante
>
postulantes
=
postulantesPag
.
getContent
();
List
<
PostulanteListaDTO
>
postulantesDTO
=
new
ArrayList
<>();
List
<
PostulanteListaDTO
>
postulantesDTO
=
new
ArrayList
<>();
for
(
Postulante
postulante
:
postulantes
)
{
for
(
Postulante
postulante
:
postulantes
)
{
postulantesDTO
.
add
(
new
PostulanteListaDTO
(
postulante
.
getId
(),
postulante
.
getNombre
(),
postulantesDTO
.
add
(
new
PostulanteListaDTO
(
postulante
.
getId
(),
postulante
.
getNombre
(),
postulante
.
getApellido
(),
postulante
.
get
Disponibilidad
(),
postulante
.
get
NivelIngles
(),
postulante
.
getApellido
(),
postulante
.
getNivelIngles
(),
postulante
.
getMesesDeExperiencia
(),
postulante
.
getTecnologias
(),
postulante
.
getEstadoPostulante
(),
postulante
.
getMesesDeExperiencia
(),
postulante
.
getTecnologias
(),
postulante
.
getEstadoPostulante
(),
postulante
.
getPostulaciones
()));
postulante
.
getPostulaciones
()));
}
}
...
...
curriculumsearch/src/main/java/com/roshka/modelo/Disponibilidad.java
deleted
100644 → 0
View file @
1795f580
package
com
.
roshka
.
modelo
;
import
com.fasterxml.jackson.annotation.JsonValue
;
public
enum
Disponibilidad
{
TIEMPO_COMPLETO
(
"C"
,
"Tiempo Completo"
),
PARCIAL
(
"P"
,
"Parcial"
);
private
String
code
;
private
String
descripcion
;
private
Disponibilidad
(
String
code
,
String
descripcion
)
{
this
.
code
=
code
;
this
.
descripcion
=
descripcion
;
}
@JsonValue
public
String
getCode
()
{
return
code
;
}
public
String
getDescripcion
()
{
return
descripcion
;
}
}
curriculumsearch/src/main/java/com/roshka/modelo/DisponibilidadConverter.java
deleted
100644 → 0
View file @
1795f580
package
com
.
roshka
.
modelo
;
import
java.util.Arrays
;
import
javax.persistence.AttributeConverter
;
import
javax.persistence.Converter
;
@Converter
(
autoApply
=
true
)
public
class
DisponibilidadConverter
implements
AttributeConverter
<
Disponibilidad
,
String
>,
org
.
springframework
.
core
.
convert
.
converter
.
Converter
<
String
,
Disponibilidad
>
{
@Override
public
String
convertToDatabaseColumn
(
Disponibilidad
modalidad
)
{
if
(
modalidad
==
null
)
{
return
null
;
}
return
modalidad
.
getCode
();
}
@Override
public
Disponibilidad
convertToEntityAttribute
(
String
code
)
{
if
(
code
==
null
)
{
return
null
;
}
return
Arrays
.
stream
(
Disponibilidad
.
values
())
.
filter
(
c
->
c
.
getCode
().
equals
(
code
))
.
findFirst
()
.
orElseThrow
(
IllegalArgumentException:
:
new
);
}
@Override
public
Disponibilidad
convert
(
String
arg0
)
{
return
convertToEntityAttribute
(
arg0
);
}
}
curriculumsearch/src/main/java/com/roshka/modelo/Postulante.java
View file @
e6f2073b
...
@@ -93,8 +93,6 @@ public class Postulante {
...
@@ -93,8 +93,6 @@ public class Postulante {
private
TipoDocumento
tipoDocumento
;
private
TipoDocumento
tipoDocumento
;
@Column
(
name
=
"disponibilidad"
,
length
=
2
)
private
Disponibilidad
disponibilidad
;
@Column
(
name
=
"tecnologia_otros"
)
@Column
(
name
=
"tecnologia_otros"
)
private
String
tecnologiaOtros
;
private
String
tecnologiaOtros
;
...
...
curriculumsearch/src/main/java/com/roshka/repositorio/PostulanteRepository.java
View file @
e6f2073b
...
@@ -12,7 +12,6 @@ import org.springframework.data.jpa.repository.Modifying;
...
@@ -12,7 +12,6 @@ import org.springframework.data.jpa.repository.Modifying;
import
org.springframework.data.jpa.repository.Query
;
import
org.springframework.data.jpa.repository.Query
;
import
com.roshka.modelo.ConvocatoriaCargo
;
import
com.roshka.modelo.ConvocatoriaCargo
;
import
com.roshka.modelo.Disponibilidad
;
import
com.roshka.modelo.EstadoPostulante
;
import
com.roshka.modelo.EstadoPostulante
;
import
com.roshka.modelo.Postulante
;
import
com.roshka.modelo.Postulante
;
...
@@ -55,18 +54,17 @@ public interface PostulanteRepository extends JpaRepository<Postulante,Long> {
...
@@ -55,18 +54,17 @@ public interface PostulanteRepository extends JpaRepository<Postulante,Long> {
"left join p.tecnologias pt "
+
"left join p.tecnologias pt "
+
"left join p.postulaciones conv "
+
"left join p.postulaciones conv "
+
"where (?1 is null or lower(p.nombre) LIKE lower(?1) or lower(p.apellido) LIKE lower(?1) ) "
+
"where (?1 is null or lower(p.nombre) LIKE lower(?1) or lower(p.apellido) LIKE lower(?1) ) "
+
"and (p.disponibilidad = ?2 or ?2 is null) "
+
"and (p.nivelIngles >= ?2 or ?2 is null) "
+
"and (p.nivelIngles >= ?3 or ?3 is null) "
+
"and (pt.nivel >= ?3 or ?3 is null) "
+
"and (pt.nivel >= ?4 or ?4 is null) "
+
"and (pt.tecnologia.id = ?4 or ?4 is null) "
+
"and (pt.tecnologia.id = ?5 or ?5 is null) "
+
" and (e.institucion.id = ?5 or ?5 is null ) "
+
" and (e.institucion.id = ?6 or ?6 is null ) "
+
" and (conv.cargoId = ?6 or ?6 is null ) "
+
" and (conv.cargoId = ?7 or ?7 is null ) "
+
"and (p.estadoPostulante = ?7 or ?7 is null) "
+
"and (p.estadoPostulante = ?8 or ?8 is null) "
+
" and (conv.id=?8 or ?8 is null ) "
+
" and (conv.id=?9 or ?9 is null ) "
+
"and (p.mesesDeExperiencia >= ?9 or ?9 is null ) "
)
"and (p.mesesDeExperiencia >= ?10 or ?10 is null ) "
)
public
Page
<
Postulante
>
postulantesMultiFiltro
(
TypedParameterValue
nombre
,
Long
nivelInges
,
Long
nivel
,
Long
tecnoId
,
public
Page
<
Postulante
>
postulantesMultiFiltro
(
TypedParameterValue
nombre
,
Disponibilidad
disponibilidad
,
Long
instId
,
Long
cargoId
,
Pageable
pageable
,
EstadoPostulante
estado
,
Long
nivelInges
,
Long
nivel
,
Long
tecnoId
,
Long
instId
,
Long
cargoId
,
Long
convo
,
Long
expInMonths
);
Pageable
pageable
,
EstadoPostulante
estado
,
Long
convo
,
Long
expInMonths
);
@Transactional
@Transactional
@Modifying
@Modifying
...
...
curriculumsearch/src/main/resources/json/postulante.json
View file @
e6f2073b
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
"telefono"
:
"(950) 417-3681"
,
"telefono"
:
"(950) 417-3681"
,
"fechaNacimiento"
:
"1986-08-16"
,
"fechaNacimiento"
:
"1986-08-16"
,
"nivelIngles"
:
1
,
"nivelIngles"
:
1
,
"disponibilidad"
:
"C"
,
"experiencias"
:
[
"experiencias"
:
[
{
{
...
@@ -72,7 +72,7 @@
...
@@ -72,7 +72,7 @@
"telefono"
:
"(866) 560-2541"
,
"telefono"
:
"(866) 560-2541"
,
"fechaNacimiento"
:
"1980-09-04"
,
"fechaNacimiento"
:
"1980-09-04"
,
"nivelIngles"
:
5
,
"nivelIngles"
:
5
,
"disponibilidad"
:
"C"
,
"experiencias"
:
[
"experiencias"
:
[
{
{
...
@@ -119,7 +119,7 @@
...
@@ -119,7 +119,7 @@
"telefono"
:
"(876) 580-2411"
,
"telefono"
:
"(876) 580-2411"
,
"fechaNacimiento"
:
"2000-01-28"
,
"fechaNacimiento"
:
"2000-01-28"
,
"nivelIngles"
:
3
,
"nivelIngles"
:
3
,
"disponibilidad"
:
"P"
,
"experiencias"
:
[
"experiencias"
:
[
{
{
...
@@ -166,7 +166,7 @@
...
@@ -166,7 +166,7 @@
"telefono"
:
"(931) 499-3122"
,
"telefono"
:
"(931) 499-3122"
,
"fechaNacimiento"
:
"1972-06-05"
,
"fechaNacimiento"
:
"1972-06-05"
,
"nivelIngles"
:
4
,
"nivelIngles"
:
4
,
"disponibilidad"
:
"C"
,
"experiencias"
:
[
"experiencias"
:
[
{
{
...
@@ -213,7 +213,7 @@
...
@@ -213,7 +213,7 @@
"telefono"
:
"(972) 524-2610"
,
"telefono"
:
"(972) 524-2610"
,
"fechaNacimiento"
:
"1989-09-09"
,
"fechaNacimiento"
:
"1989-09-09"
,
"nivelIngles"
:
5
,
"nivelIngles"
:
5
,
"disponibilidad"
:
"P"
,
"experiencias"
:
[
"experiencias"
:
[
{
{
...
@@ -260,7 +260,7 @@
...
@@ -260,7 +260,7 @@
"telefono"
:
"(933) 501-3525"
,
"telefono"
:
"(933) 501-3525"
,
"fechaNacimiento"
:
"1994-03-24"
,
"fechaNacimiento"
:
"1994-03-24"
,
"nivelIngles"
:
1
,
"nivelIngles"
:
1
,
"disponibilidad"
:
"P"
,
"experiencias"
:
[
"experiencias"
:
[
{
{
...
@@ -307,7 +307,7 @@
...
@@ -307,7 +307,7 @@
"telefono"
:
"(817) 492-2493"
,
"telefono"
:
"(817) 492-2493"
,
"fechaNacimiento"
:
"2002-07-30"
,
"fechaNacimiento"
:
"2002-07-30"
,
"nivelIngles"
:
5
,
"nivelIngles"
:
5
,
"disponibilidad"
:
"P"
,
"experiencias"
:
[
"experiencias"
:
[
{
{
...
...
curriculumsearch/src/main/resources/static/main.js
View file @
e6f2073b
...
@@ -17,7 +17,6 @@ form = document.querySelector("form");
...
@@ -17,7 +17,6 @@ form = document.querySelector("form");
const
depSelect
=
document
.
querySelector
(
"#departamentos"
);
const
depSelect
=
document
.
querySelector
(
"#departamentos"
);
console
.
log
(
"saddsa"
,
bootstrap
)
console
.
log
(
"saddsa"
,
bootstrap
)
const
modalCargo
=
bootstrap
.
Modal
.
getOrCreateInstance
(
document
.
getElementById
(
'cargoForm'
))
const
modalExperiencia
=
bootstrap
.
Modal
.
getOrCreateInstance
(
document
.
getElementById
(
'experienciaForm'
))
const
modalExperiencia
=
bootstrap
.
Modal
.
getOrCreateInstance
(
document
.
getElementById
(
'experienciaForm'
))
const
modalTecnologia
=
bootstrap
.
Modal
.
getOrCreateInstance
(
document
.
getElementById
(
'tecnologiaForm'
))
const
modalTecnologia
=
bootstrap
.
Modal
.
getOrCreateInstance
(
document
.
getElementById
(
'tecnologiaForm'
))
const
modalEstudio
=
bootstrap
.
Modal
.
getOrCreateInstance
(
document
.
getElementById
(
'estudioForm'
))
const
modalEstudio
=
bootstrap
.
Modal
.
getOrCreateInstance
(
document
.
getElementById
(
'estudioForm'
))
...
@@ -415,84 +414,6 @@ function eliminarEstudio(index) {
...
@@ -415,84 +414,6 @@ function eliminarEstudio(index) {
//eliminar en html
//eliminar en html
document
.
getElementById
(
"est-"
+
index
).
remove
()
document
.
getElementById
(
"est-"
+
index
).
remove
()
}
}
/*------------Cargos----------------------------------------*/
function
agregarFieldCargo
(){
//recoger del form
const
pairs
=
{};
const
formcar
=
document
.
querySelector
(
"[name=cargo-form]"
);
const
formData
=
new
FormData
(
formcar
);
//Validacion
let
returnFlag
=
false
;
let
requiredValues
=
[
"nombre"
]
formData
.
forEach
((
value
,
key
)
=>
{
if
(
requiredValues
.
includes
(
key
)
&&
value
===
""
&&
returnFlag
==
false
){
console
.
log
(
key
,
value
)
returnFlag
=
true
;
}
});
if
(
returnFlag
===
true
){
let
message
=
"Rellene "
for
(
let
i
=
0
;
i
<
requiredValues
.
length
;
i
++
){
message
+=
", "
+
requiredValues
[
i
];
}
message
+=
" como minimo."
alert
(
message
);
return
;
}
for
(
const
[
name
,
value
]
of
formData
){
pairs
[
name
]
=
value
}
console
.
log
(
pairs
)
for
(
let
i
=
0
;
i
<
cont_cargo
;
i
++
){
if
(
postulaciones
[
i
]
!==
null
){
if
(
postulaciones
[
i
][
"id"
]
===
pairs
[
"cargo-id"
]){
alert
(
"Ya has agregado ese cargo!"
)
//cont_cargo--;
return
;
}
}
}
postulaciones
[
cont_cargo
]
=
{}
postulaciones
[
cont_cargo
][
"id"
]
=
pairs
[
"cargo-id"
]
//postulaciones[cont_cargo]["cargo"]=pairs["cargo-id"]=="-1"?{nombre: pairs["cargo-nombre"]}:{id: pairs["cargo-id"],nombre:document.querySelector('[name=cargo-id] > option[value="'+pairs["cargo-id"]+'"]').innerHTML}
console
.
log
(
postulaciones
)
formcar
.
reset
();
//imprimir lista actualizada
const
div
=
document
.
querySelector
(
"#cargos"
)
const
div1
=
document
.
createElement
(
'div'
);
let
content1
=
''
for
(
let
index
=
0
;
index
<
postulaciones
.
length
;
index
++
)
{
const
car
=
postulaciones
[
index
];
if
(
car
==
null
)
continue
;
content1
+=
`
<div class="col-auto" id="car-
${
index
}
" style="text-transform: uppercase;">
${
document
.
querySelector
(
'[name=cargo-id] > option[value="'
+
car
.
id
+
'"]'
).
innerHTML
}
<i class="bi bi-trash-fill pointer" onclick="eliminarCargoPostulante(event)"></i>
</div>
`
}
//content1 += "</ul>"
div
.
innerHTML
=
content1
//div.innerHTML = '';
//div.appendChild(div1);
cont_cargo
++
;
document
.
querySelector
(
"#no-valid-cargo"
).
style
.
display
=
"none"
;
modalCargo
.
hide
()
}
function
eliminarCargoPostulante
(
event
)
{
//eliminar del array
postulaciones
[
event
.
target
.
parentElement
.
id
.
split
(
"-"
)[
1
]]
=
null
//eliminar en html
event
.
target
.
parentElement
.
remove
()
}
/*--------------Referencias----------------------------- */
/*--------------Referencias----------------------------- */
function
agregarFieldReferencia
(
event
){
function
agregarFieldReferencia
(
event
){
...
...
curriculumsearch/src/main/webapp/jsp/detallepostulante.jsp
View file @
e6f2073b
...
@@ -106,15 +106,6 @@
...
@@ -106,15 +106,6 @@
<hr>
<hr>
<div class="row">
<div class="row">
<div class="col-sm-3">
<div class="col-sm-3">
<h6 class="mb-0">Disponbilidad</h6>
</div>
<div class="col-sm-9 text-secondary">
${postulante.disponibilidad.getDescripcion()}
</div>
</div>
<hr>
<div class="row">
<div class="col-sm-3">
<h6 class="mb-0">Estado</h6>
<h6 class="mb-0">Estado</h6>
</div>
</div>
<div class="col-sm-9 text-secondary">
<div class="col-sm-9 text-secondary">
...
...
curriculumsearch/src/main/webapp/jsp/detallepostulante2.jsp
View file @
e6f2073b
...
@@ -104,15 +104,7 @@
...
@@ -104,15 +104,7 @@
</div>
</div>
</div>
</div>
<hr>
<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>
<hr>
<div class="row">
<div class="row">
<div class="col-sm-3">
<div class="col-sm-3">
<h6 class="mb-0">Estado</h6>
<h6 class="mb-0">Estado</h6>
...
...
curriculumsearch/src/main/webapp/jsp/postulante-form.jsp
View file @
e6f2073b
...
@@ -122,8 +122,8 @@
...
@@ -122,8 +122,8 @@
<br>
<br>
<div
class=
"inputs mb-3 col-md-
4
"
>
<label
for=
"nivelIngles"
class=
"form-label"
>
Nivel de ingles
</label>
<div
class=
"inputs mb-3 col-md-
6
"
>
<label
for=
"nivelIngles"
class=
"form-label"
>
Nivel de ingles
</label>
<select
name=
"nivelIngles"
id=
"nivelIngles"
class=
"content-select"
>
<select
name=
"nivelIngles"
id=
"nivelIngles"
>
<option
value=
"1"
selected
>
Conocimiento de ingles muy basico
</option>
<option
value=
"1"
selected
>
Conocimiento de ingles muy basico
</option>
<option
value=
"2"
>
Comprendo algunas cosas y puedo leer con la ayuda del traductor
</option>
<option
value=
"2"
>
Comprendo algunas cosas y puedo leer con la ayuda del traductor
</option>
<option
value=
"3"
>
Puedo entender todo lo que leo
</option>
<option
value=
"3"
>
Puedo entender todo lo que leo
</option>
...
@@ -132,18 +132,11 @@
...
@@ -132,18 +132,11 @@
</select>
</select>
</div>
</div>
<div
class=
"inputs mb-3 col-md-4"
>
<label
for=
"disponibilidad"
class=
"form-label"
>
Disponibilidad
</label>
<select
name=
"disponibilidad"
id=
"disponibilidad"
class=
"content-select"
>
<c:forEach
items=
"${disponibilidades}"
var=
"disponibilidad"
>
<option
value=
"${disponibilidad.getCode()}"
>
${disponibilidad.getDescripcion()}
</option>
</c:forEach>
</select>
</div>
<div
class=
"inputs mb-3 col-md-
4
"
>
<div
class=
"inputs mb-3 col-md-
6
"
>
<label
for=
"estadoCivil"
class=
"form-label"
>
Estado Civil
</label>
<label
for=
"estadoCivil"
class=
"form-label"
>
Estado Civil
</label>
<select
name=
"estadoCivil"
id=
"estadoCivil"
class=
"content-select"
>
<select
name=
"estadoCivil"
id=
"estadoCivil"
>
<c:forEach
items=
"${estadosCiviles}"
var=
"estadoCivil"
>
<c:forEach
items=
"${estadosCiviles}"
var=
"estadoCivil"
>
<option
value=
"${estadoCivil.getDescripcion()}"
>
${estadoCivil.getDescripcion()}
</option>
<option
value=
"${estadoCivil.getDescripcion()}"
>
${estadoCivil.getDescripcion()}
</option>
</c:forEach>
</c:forEach>
...
@@ -155,7 +148,7 @@
...
@@ -155,7 +148,7 @@
<div
class=
"row w-100 gy-2 mx-auto"
>
<div
class=
"row w-100 gy-2 mx-auto"
>
<div
class=
"col-12 px-0"
>
<div
class=
"col-12 px-0"
>
<h4
class=
"text-start"
>
Cargos
<
i
class=
"bi bi-plus-square pointer"
data-bs-toggle=
"modal"
data-bs-target=
"#cargoForm"
></i><
/h4>
<h4
class=
"text-start"
>
Cargos
</h4>
</div>
</div>
<div
class=
"col-12"
>
<div
class=
"col-12"
>
<div
class=
"mt-3 gap-2 row"
id=
"cargos"
>
<div
class=
"mt-3 gap-2 row"
id=
"cargos"
>
...
@@ -283,36 +276,6 @@
...
@@ -283,36 +276,6 @@
</div>
</div>
</div>
</div>
</form>
</form>
<!---------------------------------------Modal de Cargos disponibles---------------------------------------------------------------->
<div
class=
"modal fade"
id=
"cargoForm"
tabindex=
"-1"
role=
"dialog"
aria-labelledby=
"cargoForm"
aria-hidden=
"true"
>
<div
class=
"modal-dialog"
role=
"document"
>
<div
class=
"modal-content"
>
<div
class=
"modal-header"
>
<h5
class=
"modal-title"
id=
"exampleModalLabel"
>
Cargos Disponibles
</h5>
<button
type=
"button"
class=
"close"
data-bs-dismiss=
"modal"
aria-label=
"Close"
style=
"color:#21130d;"
>
<span
aria-hidden=
"true"
>
×
</span>
</button>
</div>
<div
class=
"modal-body"
>
<form
name=
"cargo-form"
class=
"needs-validation"
novalidate
>
<label
for=
"cargo-nombre"
class=
"form-label"
>
Cargo
</label>
<div
class=
"input-group mb-3"
>
<select
class=
"form-select"
name=
"cargo-id"
aria-label=
"Default select example"
required
>
<c:forEach
items=
"${CargosDisponibles}"
var=
"convocatoria"
>
<option
value=
"${convocatoria.getId()}"
>
${convocatoria.getCargo().getNombre()}
</option>
</c:forEach>
>
</select>
</div>
</form>
</div>
<div
class=
"modal-footer"
>
<button
type=
"button"
class=
"btn btn-secondary"
data-bs-dismiss=
"modal"
>
Cerrar
</button>
<button
type=
"button"
class=
"btn btn-primary"
onclick=
"agregarFieldCargo()"
>
Agregar
</button>
</div>
</div>
</div>
</div>
<!-------------------------------------------------------------------------------------------------------------------------->
<!-------------------------------------------------------------------------------------------------------------------------->
<!--Modal de Experiencia-->
<!--Modal de Experiencia-->
...
...
curriculumsearch/src/main/webapp/jsp/postulantes.jsp
View file @
e6f2073b
...
@@ -26,7 +26,7 @@
...
@@ -26,7 +26,7 @@
<thead>
<thead>
<tr class="">
<tr class="">
<th scope="col">Estado</th>
<th scope="col">Estado</th>
<th scope="col">Disponbilidad</th>
<th scope="col">Nivel de ingles</th>
<th scope="col">Nivel de ingles</th>
<th scope="col">Institucion Educativa</th>
<th scope="col">Institucion Educativa</th>
<th scope="col">Tecnologias</th>
<th scope="col">Tecnologias</th>
...
@@ -45,14 +45,6 @@
...
@@ -45,14 +45,6 @@
</c:forEach>
</c:forEach>
</td>
</td>
<td>
<td>
<select class="form-select form-select-sm " name="dispo" id="dispo">
<option value="">Seleccione</option>
<c:forEach items="${disponibilidades}" var="disponibilidad">
<option value="${disponibilidad}" ${param.dispo == disponibilidad ? "selected" : ""}>${disponibilidad.getDescripcion()}</option>
</c:forEach>
</select>
</td>
<td>
<select class="form-select form-select-sm " name="lvlEng" id="lvlEng">
<select class="form-select form-select-sm " name="lvlEng" id="lvlEng">
<option value="">Seleccione</option>
<option value="">Seleccione</option>
<c:forEach var = "lvl" begin = "1" end = "5">
<c:forEach var = "lvl" begin = "1" end = "5">
...
@@ -136,14 +128,7 @@
...
@@ -136,14 +128,7 @@
<label class="form-label" for="dispo">Disponbilidad</label>
<label class="form-label" for="dispo">Disponbilidad</label>
</div>
</div>
<div class="col-auto col-md-8">
<select class="form-select form-select-sm " name="dispo" id="dispo">
<option value="">Seleccione una opcion</option>
<c:forEach items="${disponibilidades}" var="disponibilidad">
<option value="${disponibilidad}" ${param.dispo == disponibilidad ? "selected" : ""}>${disponibilidad.getDescripcion()}</option>
</c:forEach>
</select>
</div>
</div>
</div>
</div>
</div>
<div class="col">
<div class="col">
...
@@ -287,7 +272,6 @@
...
@@ -287,7 +272,6 @@
<tr>
<tr>
<th scope="col">#</th>
<th scope="col">#</th>
<th scope="col">Nombre</th>
<th scope="col">Nombre</th>
<th scope="col">Disponibilidad</th>
<th scope="col">Nivel de Ingles</th>
<th scope="col">Nivel de Ingles</th>
<th scope="col">Experiencia</th>
<th scope="col">Experiencia</th>
<th scope="col">Tecnologias</th>
<th scope="col">Tecnologias</th>
...
@@ -299,7 +283,6 @@
...
@@ -299,7 +283,6 @@
<tr>
<tr>
<th scope="row">${staPost.index + 1}</th>
<th scope="row">${staPost.index + 1}</th>
<td>${postulante.nombre} ${postulante.apellido}</td>
<td>${postulante.nombre} ${postulante.apellido}</td>
<td>${postulante.disponibilidad.getDescripcion()}</td>
<td>${postulante.nivelIngles}</td>
<td>${postulante.nivelIngles}</td>
<td><c:choose>
<td><c:choose>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment