Árbol de páginas

Versiones comparadas

Clave

  • Se ha añadido esta línea.
  • Se ha eliminado esta línea.
  • El formato se ha cambiado.

...

Info
titleCambios

Se actualizan los servicios API para:

  • Modificar el funcionamiento del método POST de alta de persona, ahora recibirá más información, toda la indicada por la UM para el alta (recogida en la pantalla de Alta de Persona).
  • Crear 3 nuevos métodos:
    • Solicitar la modificación de los datos de Persona
    • Obtener todos los datos de una persona en JSON para pintar tanto en la pantalla de Modificación como en el Ver Detalle.
    • Obtener listado de sexos a asociar a Persona.
  • Eliminar todos los métodos de alta parcial de datos de Persona por secciones.
  • Eliminar servicio de obtener las subcategorías de una categoría, ya que desaparece el objeto Subcategoría y su referencia desde Categoría.

No son necesarios cambios a nivel del interface o firma de los servicios del API, ya que los cambios a aplicar afectan a los objetos de comunicación y a la lógica de negocio interna a los mismos para aplicar las consideraciones descritas en apartados anteriores.

Se añaden 2 nuevos servicios al API para poder pintar la pantalla de requisitos de equipo de investigación con las nuevas especificaciones de que niveles académicos y categorías profesionales sean campos multivalor.

 Se actualizan los servicios API de personas.

  • POST:
    • Se cambia la definición a /personas/formly.
  • PUT:
    • Se cambia la definición a /personas/formly/{id}
    • Se añade en el JSON el campo personaId para facilitar su identificación.
    • Se cambia el campo areasConocimiento por areaConocimientoId que contendrá el área de conocimiento a la que está adscrita
    • Se cambian los campos telefonos y emails para que contengan un array "simple" de teléfonos o emails

Método

URL

Parámetros

Respuesta

Permisos

Descripción

GET/personas

q+s (query + sort)

La query estará formada por:

  • id
  • colectivoId
  • nombre
  • apellidos
  • numeroDocumento
  • fechaModificacion

Lista[Persona]


Listado de Persona.

Ejemplo:

colectivoId=in=(refPAS,refPDI);(nombre=like=11111111H,apellidos=like=11111111H,numeroDocumento=like=11111111H)

NOTA:

Este método tendrá que ser capaz de responder con una lista de las personas modificadas con posterioridad a la fecha/hora proporcionada en el parámetro fechaModificacion.

La modificación debe incluir altas, actualizaciones y borrados lógicos.

GET/personas/{id}idPersona
Detalle de los datos generales de una persona.
POST/personas/formlyJSON

Recibe como parámetro la respuesta del usuario del formulario de datos básicos de alta (formly) con los campos necesarios para crear una persona.


Bloque de código
languagejava
themeRDark
titleEjemplo de JSON
collapsetrue
{
	"nombre": "nombre de prueba",
	"apellidos": "apellidos de prueba",
	"tipoDocumentoId": "2",
	"numeroDocumento": "07852369Y",
	"sexoId": "2",
	"fechaNacimiento": "2021-02-14T23:00:00Z",
	"paisNacimientoId": "1",
	"regionNacimientoId": "3",
	"ciudadNacimiento": "Madrid",
	"empresaId": "3",
	"direccionContacto": "C/ Gran vía nº 32 1-D",
	"paisContactoId": "1",
	"regionContactoId": "2",
	"provinciaContactoId": "10",
	"codigoPostalContacto": "48152",
	"ciudadContacto": "Alcorcón (Madrid)",
	"emails": [
		{
			"email": "a@prueba.com"
		},
		{
			"email": "b@pruebaa@prueba.com"
		}
	 ],
	    "telefonos": [
		{
			"telefono": "666123456"
		},
		{
			"telefono": "666654321"
	}
	],
}
Expandir
titleDescripción de campos JSON (pulsa para expandir)...
  • nombre: Nombre
  • apellidos: Apellidos
  • tipoDocumentoId: Id tipo de documento procedente de endpoint /tipos-documento
  • numeroDocumento: Número de documento
  • sexoId: Id sexo procedente de endpoint /sexos
  • fechaNacimiento: Fecha de nacimiento en formato ISO 8601 en UTC
  • paisNacimientoId: Id de pais de nacimiento procedente de endpoint /paises. Ver definición en UM - SGI - ESB - SGO
  • regionNacimientoId: Id de comunidad autónoma de nacimiento procedente de endpoint /comunidades-autonomas. Ver definición en UM - SGI - ESB - SGO
  • ciudadNacimiento: Ciudad de nacimiento
  • empresaId: Id de empresa procedente de endpoint /empresas. Ver definición en UM - SGI - ESB - SGEMP
  • direccionContacto: Dirección de contacto
  • paisContactoId: Id de pais de contacto procedente de endpoint /paises. Ver definición en UM - SGI - ESB - SGO
  • regionContactoId: Id de comunidad autónoma de contacto procedente de endpoint /comunidades-autonomas. Ver definición en UM - SGI - ESB - SGO
  • provinciaContactoId: Id de provincia de contacto procedente de endpoint /provincias. Ver definición en UM - SGI - ESB - SGO
  • codigoPostalContacto: Código postal de contacto
  • ciudadContacto: Ciudad de contacto
  • emails: Array de objetos emails con la siguiente estructura:
  • email: Email
  • telefonos: Array de de objetos teléfonos con la siguiente estructura:
  • telefono: Teléfono
PUT/personas/formly/{id}JSON

Recibe como parámetro la respuesta del usuario del formulario de datos de modificación (formly) con los campos necesarios para actualizar una persona.


Bloque de código
languagejava
themeRDark
titleEjemplo de JSON
collapsetrue
{
  "personaId": "1",
  "nombre": "nombre de prueba",
  "apellidos": "apellidos de prueba",
  "tipoDocumentoId": "2",
  "numeroDocumento": "07852369Y",
  "sexoId": "2",
  "fechaNacimiento": "2021-02-14T23:00:00Z",
  "paisNacimientoId": "1",
  "regionNacimientoId": "3",
  "ciudadNacimiento": "Madrid",
  "empresaId": "3",
  "fechaInicioVinculacion": "2021-02-14T23:00:00Z",
  "direccionContacto": "C/ Gran vía nº 32 1-D",
  "paisContactoId": "1",
  "regionContactoId": "2",
  "provinciaContactoId": "10",
  "codigoPostalContacto": "48152-D",
  "ciudadContactopaisContactoId": "Alcorcón (Madrid)1",
  "emailsregionContactoId": ["2",
    {
      "email"provinciaContactoId": "a@prueba.com"
    }10",
    {
      "email"codigoPostalContacto": "b@prueba.com"
    }
  ]48152",
  "telefonosciudadContacto": [
    {
      "telefono"Alcorcón (Madrid)",
  "emails": ["666123456a@prueba.com"
    },
    {
      "telefono, "b@prueba.com"],
  "telefonos": ["666123456","666654321"
    }
  ],
  "areasConocimientoIdareaConocimientoId": "id1",
  "historicosEntidades": [
    {
      "entidad": "entidad 1",
      "inicioVinculacion": "2021-02-14T23:00:00Z",
      "finVinculacion": "2021-02-14T23:00:00Z"
    }
  ],
  "nivelAcademicoId": "1",
  "fechaObtencion": "2021-02-14T23:00:00Z",
  "categoriaPdiId": "1",
  "departamentoPdiId": "2",
  "fechaCategoriaPdi": "2021-02-14T23:00:00Z",
  "fechaFinCategoriaPdi": "2021-02-14T23:00:00Z",
  "categoriaPasId": "2",
  "unidadPasId": "1",
  "fechaCategoriaPas": "2021-02-14T23:00:00Z",
  "fechaFincategoriaPas": "2021-02-14T23:00:00Z"
}
Expandir
titleDescripción de campos JSON (pulsa para expandir)...
  • personaId: Id de persona
  • nombre: Nombre
  • apellidos: Apellidos
  • tipoDocumentoId: Id tipo de documento procedente de endpoint /tipos-documento
  • numeroDocumento: Número de documento
  • sexoId: Id sexo procedente de endpoint /sexos
  • fechaNacimiento: Fecha de nacimiento en formato ISO 8601 en UTC
  • paisNacimientoId: Id de pais de nacimiento procedente de endpoint /paises. Ver definición en UM - SGI - ESB - SGO
  • regionNacimientoId: Id de comunidad autónoma de nacimiento procedente de endpoint /comunidades-autonomas. Ver definición en UM - SGI - ESB - SGO
  • ciudadNacimiento: Ciudad de nacimiento
  • empresaId: Id de empresa procedente de endpoint /empresas. Ver definición en UM - SGI - ESB - SGEMP
  • fechaInicioVinculacion: Fecha de inicio de vinculación en formato ISO 8601 en UTC
  • direccionContacto: Dirección de contacto
  • paisContactoId: Id de pais de contacto procedente de endpoint /paises. Ver definición en UM - SGI - ESB - SGO
  • regionContactoId: Id de comunidad autónoma de contacto procedente de endpoint /comunidades-autonomas. Ver definición en UM - SGI - ESB - SGO
  • provinciaContactoId: Id de provincia de contacto procedente de endpoint /provincias. Ver definición en UM - SGI - ESB - SGO
  • codigoPostalContacto: Código postal de contacto
  • ciudadContacto: Ciudad de contacto
  • emails: Array de objetos emails con la siguiente estructura:email: Email
  • telefonos: Array de de objetos teléfonos con la siguiente estructura:telefono: Teléfono
  • areaConocimientoId: Areas Área de conocimiento a la que está adscrita la persona
  • historicosEntidades: Array de histórico de entidades con objetos que refleja la información devuelta por el esb y que tiene la siguiente estructura:

    • entidad: Entidad
    • inicioVinculacion: Inicio de vinculación
    • finVinculacion: Fin de vinculación
  • nivelAcademicoId: Id de nivel académico procedente de endpoint /niveles-academicos
  • fechaObtencion: Fecha de obtención nivel académico en formato ISO 8601en UTC
  • categoriaPdiId: Id de categoría PDI procedente de endpoint /categorias-profesionales
  • departamentoPdiId: Id de departamento
  • fechaCategoriaPdi: Fecha de nacimiento en formato ISO 8601 en UTC
  • fechaFinCategoriaPdi: Fecha de nacimiento en formato ISO 8601 en UTC
  • categoriaPasId: Id de categoría PAS procedente de endpoint /categorias-profesionales
  • unidadPasId: Id de unidad
  • fechaCategoriaPas: Fecha de nacimiento en formato ISO 8601 en UTC
  • fechaFincategoriaPas: Fecha de fin de categoría en formato ISO 8601 en UTC
GET/personas/formly/{id}
JSON

Devuelve los datos a pintar en el formulario de Ver Detalle/Actualizar en el SGI (formly).

Se recibirá el mismo json que en la solicitud de modificación de persona (/personas PUT)


GET/datos-personales/persona/{id}id

DatosPersonales


Detalle de los datos personales de una persona (datos de dirección, nacimiento, etc).
POST/datos-personalesJSON

Recibe como parámetro la respuesta del usuario del formulario de datos personales (formly) con los campos necesarios para crear la entidad de datos personales de una persona. En el formulario se deben de incluir el campo id de Persona para saber de quién se trata (campo oculto).

GET/datos-contacto/persona/{id}idDatosContacto
Contiene la lista de emails y/o de teléfonos de una persona.
POST/datos-contactoJSON

Recibe como parámetro la respuesta del usuario del formulario de datos contacto (formly) con los campos necesarios para crear los datos de contacto de una persona. En el formulario se deben de incluir el campo id de Persona para saber de quién se trata (campo oculto).

GET/vinculaciones/persona/{id}idVinculacion
Detalle de los datos de vinculación de una persona.
POST/vinculacionesJSON

Recibe como parámetro la respuesta del usuario del formulario de vinculación (formly) con los campos necesarios para crear la vinculación de la universidad de la persona. En el formulario se deben de incluir el campo id de Persona para saber de quién se trata (campo oculto).

GET/datos-academicos/persona/{id}idDatosContacto
Contiene el nivel académico de la persona.
POST/datos-academicosJSON

Recibe como parámetro la respuesta del usuario del formulario de datos académicos (formly) con los campos necesarios para crear los datos académicos de una persona. En el formulario se deben de incluir el campo id de Persona para saber de quién se trata (campo oculto).






GET/colectivos
Lista[Colectivo]

Listado de colectivos ordenados alfabéticamente de forma ascendente.







GET/tipos-documento
Lista[TipoDocumento]
Listado de tipos de documento de identificación personal ordenados alfabéticamente de forma ascendente.

GET/sexos
Lista[Sexo]
Listado de sexos ordenados alfabéticamente de forma ascendente.






GET/categorias-profesionales
Lista[CategoriaProfesional]
Listado de categorías profesionales ordenadas alfabéticamente de forma ascendente.
GET/categorias-profesionales/{id}
CategoriaProfesional
Detalle de la categoría profesional cuyo identificador se indica por parámetro.
GET/categorias-profesionales/{id}/subcategorias-profesionalesidLista[SubcateroriaProfesional]
Listado de subcategorías profesionales vinculadas a la categoría pasada por parámetro ordenadas alfabéticamente de forma ascendente.

GET/niveles-academicos
Lista[NivelAcademico]
Listado de niveles académicos ordenados alfabéticamente de forma ascendente.
GET/niveles-academicos/{id}
NivelAcademico
Detalle del nivel académico cuyo identificador se indica por parámetro.

GET/personas/{id}/fotografiaidFotografia
Detalle de la fotografía digital de la persona.