Á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.

...

NombreTipoDescripción
categoriaProfesionalPDICategoriaProfesionalCategoría profesional como PDI. Se devuelve la entidad CategoriaProfesional de la persona en su calidad de PDI, en caso de existir dicha relación, con todos sus campos.
categoriaProfesionalPASCategoriaProfesional

Categoría profesional como PAS.

Se devuelve la entidad CategoriaProfesional entidad CategoriaProfesional de la persona en su calidad de PAS, en caso de existir dicha relación, con todos sus campos.

fechaObtencionCategoriaPDI

FechaFecha de obtención de categoría profesional como PDI. Fecha en la que se obtiene la categoría profesional de la persona en su calidad de PDI, en caso de existir dicha relación.
fechaObtencionCategoriaPASFechaFecha de obtención de categoría profesional como PAS. Fecha en la que se obtiene la categoría profesional de la persona en su calidad de PAS, en caso de existir dicha relación.

fechaFinCategoriaPDI

FechaFecha de fin en categoría profesional como PDI. Fecha en la que finaliza la asociación con la categoría profesional de la persona en su calidad de PDI, en caso de existir dicha relación.

fechaFinCategoriaPAS

FechaFecha de fin en categoría profesional como PAS. Fecha en la que finaliza la asociación con la categoría profesional de la persona en su calidad de PAS, en caso de existir dicha relación.

departamentoPDI

DepartamentoDepartamento como PDI. Se devuelve la entidad Departamento de la persona en su calidad de PDI, en caso de existir dicha relación, con todos sus campos. Ver definición en UM - SGI - ESB - SGO.
departamentoPASDepartamentoDepartamento como PAS. Se devuelve la entidad Departamento de la persona en su calidad de PAS, en caso de existir dicha relación, con todos sus campos. Ver definición en UM - SGI - ESB - SGO.
areaConocimientoAreaConocimiento

Se devuelve la entidad AreaConocimiento con todos sus campos. Ver definición en UM - SGI - ESB - SGO.

empresaRefString

Se devuelve el identificador/referencia de la entidad Empresa externa que es la relacionada en la actualidad con la persona, la vigente.

entidadPropiaRefStringSe devuelve el identificador/referencia de la entidad que representa a la UM en caso de que la persona sea personalPropio de la Universidad, esto es, que la relación de la persona con la UM esté vigente.

...

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 siguientes servicios del 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

Se actualizan los JSON de los siguientes servicios del API de personas para sustituir el campo direccionContacto por los campos tipoViaContactoId, nombreViaContacto, numeroViaContacto y ampliacionDireccionContacto:

  • POST /personas/formly
  • PUT /personas/formly/{id}
  • GET /personas/formly/{id}

Se añade nuevo servicio:

  • GET personas/modificadas-ids

Modificar los siguientes servicios para que devuelva el campo activo en la entidad Persona.

  • GET /personas
  • GET /personas/{id}

Modificar los siguientes servicios para eliminar la funcionalidad de que solo se devuelve el detalle una persona que este activa:

  • GET /personas/{id}
  • GET /datos-personales/persona/{id}
  • GET /datos-contacto/persona/{id}
  • GET /vinculaciones/persona/{id}
  • GET /datos-academicos/persona/{id}
  • GET /personas/{id}/fotografia

 Modificar los siguientes servicios para que devuelva el campo personalPropio en la entidad Persona.

  • GET /personas
  • GET /personas/{id}

  Modificar los siguientes servicios para que devuelva el campo moviles en la entidad DatosContacto:

  • GET /datos-contacto/persona/{id}

Se modificar el servicio del alta de persona para que en el caso de que el servicio sea síncrono devuelva el id de la persona creada.

  • POST /personas/formly

Se actualizan los servicios API para:

  • GET /personas/modificadas-ids : tener en cuenta los cambios en los sexenios de una persona.
  • GET /sexenios/persona/{id}: Se añade el servicio de consultar los sexenios de una persona

Se actualizan los servicios API para:

  • GET /personas : poder buscar por email, eliminar la búsqueda por NIF y añadir en el resultado de la búsqueda el listado de emails de una persona, informando cuál es el principal de entre todos los devueltos en la lista y la referencia a la UM como entidad en el caso de que sea personal propio.
  • GET /vinculaciones/persona/{id}: añadir al resultado la referencia a la UM como entidad en el caso de que sea personal propio.
  • Nuevos servicios necesarios desde el módulo de GI:

    • GET /categorias-profesionales/persona/{id} : consulta de categoría de una persona a una fecha dada.
    • Recepción de notificación de cambio de categoría de una persona.
datosacademicosid

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
  • email

Lista[Persona]


Listado de Persona.

Ejemplo:

colectivoId=in=(refPAS,refPDI);(nombre=like=jim,apellidos=like=jim,email=like=jim)

colectivoId=in=(refPAS,refPDI);(nombre=like=nombre.apellido@um.es,apellidos=like=nombre.apellido@um.es,email=like=nombre.apellido@um.es)

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 (esté la persona activa o no).
POST/personas/formlyJSON

id

Vendrá relleno si la creación es síncrona y no vendrá si es asíncrona.


Recibe como parámetro la respuesta del usuario del formulario de datos 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": "1981-05-18",
	"paisNacimientoId": "1",
	"regionNacimientoId": "3",
	"ciudadNacimiento": "Madrid",
	"empresaId": "3",
    "tipoViaContactoId": "3",
    "nombreViaContacto": "Castellana",
    "numeroViaContacto": "123",
    "ampliacionDireccionContacto": "ampliación",
	"paisContactoId": "1",
	"regionContactoId": "2",
	"provinciaContactoId": "10",
	"codigoPostalContacto": "48152",
	"ciudadContacto": "Alcorcón (Madrid)",
	"emails": ["a@prueba.com", "a@prueba.com" ],
    "telefonos": ["666123456","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 yyyy-MM-dd (Ej: 1981-05-18)
  • 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
  • tipoViaContactoId: Id de tipo de vía de contacto. Ver definición en UM - SGI - ESB - SGO
  • nombreViaContacto: Nombre de vía de contacto
  • numeroViaContacto: Número de dirección de contacto
  • ampliacionDireccionContacto: Descripción de ampliación
  • 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 emails
  • telefonos: Array de teléfonos
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",
  "tipoViaContactoId": "3",
  "nombreViaContacto": "Castellana",
  "numeroViaContacto": "123",
  "ampliacionDireccionContacto": "ampliación",
  "paisContactoId": "1",
  "regionContactoId": "2",
  "provinciaContactoId": "10",
  "codigoPostalContacto": "48152",
  "ciudadContacto": "Alcorcón (Madrid)",
  "emails": ["a@prueba.com", "b@prueba.com"],
  "telefonos": ["666123456","666654321"],
  "areaConocimientoId": "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
  • tipoViaContactoId: Id de tipo de vía de contacto. Ver definición en UM - SGI - ESB - SGO
  • nombreViaContacto: Nombre de vía de contacto
  • numeroViaContacto: Número de dirección de contacto
  • ampliacionDireccionContacto: Descripción de ampliación
  • 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 emails
  • telefonos: Array de teléfonos
  • areaConocimientoId: Á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 independientemente de que este activa o no la persona (datos de dirección, nacimiento, etc).

GET/datos-contacto/persona/{id}idDatosContacto
Contiene la lista de emails y/o de teléfonos fijos y móviles de una persona (independientemente de que este activa o no la persona)

GET/vinculaciones/persona/{id}idVinculacion

Detalle de los datos de vinculación de una persona (independientemente de que este activa o no la persona)

Ver UM - SGI - ESB - SGP - Adaptaciones integración para su implementación en el SGI.


GET/categorias-profesionales/persona/{id}fechaDatosContactoContiene el nivel académico de la persona (independientemente de que este activa o no la persona)CategoriaProfesional
Detalle de la categoría profesional de la persona cuyo identificador se indica por parámetro vigente en la fecha indicada como parámetro. El orden de prioridad para devolver un único valor si tuviese dos categorías, una como PAS y otra como PDI, sería, primero la de PAS y, si no tiene categoría como PAS, la categoría como PDI.






GET/datos-academicos/persona/{id}idDatosContacto
Contiene el nivel académico de la persona (independientemente de que este activa o no la persona)






GET/colectivos
Lista[Colectivo]
GET/colectivosLista[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/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 (independientemente de que este activa o no la persona)

GET/personas/modificadas-ids

q+s (query + sort)

La query estará formada por:

  • fechaModificacion
Lista[String]

Listado de los identificadores de personas que han sufrido cambios en los datos identificativos (nombre, apellidos, sexo, número de documento y tipo de documento) y/o en los datos personales (fecha de nacimiento, país de nacimiento, comunidad autónoma de nacimiento y ciudad de nacimiento) y/o en datos de contacto (país de contacto, comunidad autónoma de contacto, provincia de contacto, ciudad de contacto, dirección de contacto, código postal, listado de teléfonos y listado de emails) y/o en la fotografía a partir de la fecha de modificación pasada por parámetro y/o en los sexenios.

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


GET/sexenios/persona/{id}
Lista[Sexenio]
Contiene la lista de sexenios reconocidos en un país determinado de una persona

Métodos a los que se llama desde los sistemas de la Universidad al SGI
POST/categorias-profesionales/persona/{id}

Los parámetros a recibir son:

  • nuevaCategoriaPASId: identificador de la nueva categoría como PAS
  • nuevaCategoriaPDIId: identificador de la nueva categoría como PDI
  • fechaNuevaCategoriaPAS: fecha de la nueva categoría como PAS
  • fechaNuevaCategoriaPDI: fecha de la nueva categoría como PDI


Comunicación de un cambio de categoría profesional de la persona bien como PAS bien como PDI o como ambas en los sistemas de la UM.