Sistema de Gestión Investigación
Entidades
Entidad | Descripción |
---|---|
Convocatoria | Contiene los datos generales de una convocatoria. |
AreaTematica | Contiene los datos generales de las áreas temáticas que se pueden relacionar con las convocatorias. |
ConvocatoriaAreaTematica | Contiene los datos de la asociación de un área temática con una convocatoria. |
ConvocatoriaDocumento | Contiene los datos de la asociación de un documento con una convocatoria. |
ConvocatoriaEntidadConvocante | Contiene los datos de la asociación de una entidad convocante con una convocatoria. |
ConvocatoriaEntidadFinanciadora | Contiene los datos de la asociación de una entidad financiadora con una convocatoria. |
Documento | Contiene los datos de un documento. |
FuenteFinanciacion | Contiene los datos de una fuente de financiación. |
ModeloEjecucion | Contiene los datos de un modelo de ejecución. |
ModeloTipoDocumento | Contiene los datos de la asociación de un tipo de documento con un modelo de ejecución. |
ModeloTipoFase | Contiene los datos de la asociación de un tipo de fase con un modelo de ejecución. |
ModeloUnidad | Contiene los datos de la asociación de una unidad de gestión con un modelo de ejecución. |
Programa | Contiene los datos de un programa. |
TipoFinanciacion | Contiene los datos de un tipo de financiación. |
UnidadGestion | Contiene los datos de una unidad de gestión. |
Modelo lógico
API
Características generales que todas las API REST deben de cumplir:
Definición de los objetos
Convocatoria
Nombre | Tipo | Requerido (alta/modificación) | Descripción |
unidadGestionRef | String | Identificador de la unidad de gestión | |
titulo | String | Titulo de la convocatoria | |
formularioSolicitud | String [PROYECTO, GRUPO] | Tipo de solicitud SGI | |
modeloEjecucion | ModeloEjecucion | Modelo de ejecución | |
fechaProvisional | String | Fecha provisional | |
observaciones | String | Observaciones de la convocatoria |
AreaTematica
Nombre | Tipo | Descripción |
---|---|---|
id | Long | Identificador único del área temática. |
nombre | String | Nombre del área temática a presentar por pantalla en los componentes visuales árbol o selector. |
descripcion | String | Descripción del área temática. |
padre | Long | Identificador del área temática de la que depende jerárquicamente, del padre. Si está nulo, se entiende que el área temática es raíz o de primer nivel, no tiene área temática padre. |
activo | Boolean | Indica si el área temática está activa o no. |
ConvocatoriaAreaTematica
Nombre | Tipo | Descripción |
id | Long | Identificador |
convocatoriaId | Long | Identificador de la convocatoria |
areaTematica | AreaTematica | Área temática |
observaciones | String | Observaciones |
ConvocatoriaDocumento
Nombre | Tipo | Requerido | Descripción |
convocatoriaId | Long | Identificador de la convocatoria | |
nombre | String | Nombre del documento | |
documentoRef | String | Identificador del documento en el sgdoc | |
tipoFase | TipoFase | Tipo de fase | |
tipoDocumento | TipoDocumento | Tipo de documento | |
publico | Boolean | Indica si es un documento publico | |
observaciones | String | Observaciones del documento |
ConvocatoriaEntidadConvocante
Nombre | Tipo | Requerido | Descripción |
id | Long | Identificador | |
convocatoriaId | Long | Identificador de la convocatoria | |
entidadRef | String | Identificador de la empresa | |
programa | Programa | Programa |
ConvocatoriaEntidadFinanciadora
Nombre | Tipo | Requerido | Descripción |
convocatoriaId | Long | Identificador de la convocatoria | |
entidadRef | String | Identificador de la empresa | |
fuenteFinanciacion | FuenteFinanciacion | Fuente de financiación | |
tipoFinanciacion | TipoFinanciacion | Tipo de financiación | |
porcentajeFinanciacion | Long | Porcentaje de financiación | |
importeFinanciacion | Long | Importe de financiación |
PalabraClave
Nombre | Tipo | Descripción |
id | Long | Identificador único autogenerado de la palabra clave. |
convocatoriaId | Long | Identificador de la convocatoria a la que se asocia la palabra clave. |
palabraClaveRef | String | Referencia a la palabra clave. Coincide con el texto de la palabra clave por ser único en el diccionario de todo el SGI. |
Documento
Nombre | Tipo | Descripción |
documentoRef | String | Identificador del documento |
nombre | String | Nombre del documento |
version | Long | Versión del documento |
fechaCreacion | String | Fecha de creación |
tipo | String | Tipo de fichero |
autorRef | String | Autor |
FuenteFinanciacion
Nombre | Tipo | Descripción |
id | Long | Identificador de la fuente de financiación |
nombre | String | Nombre de la fuente de financiación |
descripcion | String | Descripción de la fuente de financiación |
fondoEstructural | Boolean | Indica si es un fondo estructural |
tipoAmbitoGeografico | TipoAmbitoGeografico | Tipo de ámbito geográfico |
tipoOrigenFuenteFinanciacion | TipoOrigenFuenteFinanciacion | Tipo de origen de la fuente de financiación |
activo | Boolean | Indica si esta activo o no |
ModeloEjecucion
Nombre | Tipo | Descripción |
id | Long | Identificador del modelo de ejecución. |
createdBy | String | Nombre del usuario que ha creado la entidad. |
creationDate | String | Fecha de la creación de la entidad. |
lastModifiedBy | String | Nombre del usuario que ha modificado por última vez la entidad. |
lastModifiedDate | String | Fecha de la última modificación de la entidad. |
nombre | String | Nombre |
descripcion | String | Descricpión |
externo | Boolean | Indica si |
contrato | Boolean | Indica si es un modelo de ejecución para Contrato / Convenio |
activo | Boolean | Indica si esta activo o no |
ModeloTipoDocumento
Nombre | Tipo | Descripción |
id | Long | Identificador del modelo tipo documento. |
createdBy | String | Nombre del usuario que ha creado la entidad. |
creationDate | String | Fecha de la creación de la entidad. |
lastModifiedBy | String | Nombre del usuario que ha modificado por última vez la entidad. |
lastModifiedDate | String | Fecha de la última modificación de la entidad. |
tipoDocumento | TipoDocumetno | Tipo de documento |
modeloEjecucion | ModeloEjecucion | El modelo de ejecución |
modeloTipoFase | ModeloTipoFase | El modelo tipo fase |
activo | Boolean | Indica si esta activo o no |
ModeloTipoFase
Nombre | Tipo | Descripción |
id | Long | Identificador del modelo tipo fase. |
createdBy | String | Nombre del usuario que ha creado la entidad. |
creationDate | String | Fecha de la creación de la entidad. |
lastModifiedBy | String | Nombre del usuario que ha modificado por última vez la entidad. |
lastModifiedDate | String | Fecha de la última modificación de la entidad. |
tipoFase | TipoFase | Tipo fase |
modeloEjecucion | ModeloEjecucion | El modelo de ejecución |
solicitud | Boolean | Indica si se puede usar en solicitudes |
convocatoria | Boolean | Indica si se puede usar en convocatorias |
proyecto | Boolean | Indica si se puede usar en proyectos |
activo | Boolean | Indica si esta activo o no |
ModeloUnidad
Nombre | Tipo | Descripción |
id | Long | Identificador del modelo unidad. |
createdBy | String | Nombre del usuario que ha creado la entidad. |
creationDate | String | Fecha de la creación de la entidad. |
lastModifiedBy | String | Nombre del usuario que ha modificado por última vez la entidad. |
lastModifiedDate | String | Fecha de la última modificación de la entidad. |
unidadGestionRef | String | Identificador de la unidad de gestión |
modeloEjecucion | ModeloEjecucion | El modelo de ejecución |
activo | Boolean | Indica si esta activo o no |
Programa
Nombre | Tipo | Descripción |
---|---|---|
id | Long | Identificador del programa. |
createdBy | String | Nombre del usuario que ha creado la entidad. |
creationDate | String | Fecha de la creación de la entidad. |
lastModifiedBy | String | Nombre del usuario que ha modificado por última vez la entidad. |
lastModifiedDate | String | Fecha de la última modificación de la entidad. |
nombre | String | Nombre del programa. |
descripcion | String | Descripción del programa. |
padre | Programa | Entidad que representa el programa padre |
TipoFinanciacion
Nombre | Tipo | Descripción |
id | Long | Identificador del tipo de financiacion. |
createdBy | String | Nombre del usuario que ha creado la entidad. |
creationDate | String | Fecha de la creación de la entidad. |
lastModifiedBy | String | Nombre del usuario que ha modificado por última vez la entidad. |
lastModifiedDate | String | Fecha de la última modificación de la entidad. |
nombre | String | Nombre del tipo de financiación |
descripcion | String | Descripción del tipo de financiación |
activo | Boolean | Indica si esta activo o no |
UnidadGestion
Nombre | Tipo | Descripción |
id | Long | Identificador de la unidad de gestión. |
createdBy | String | Nombre del usuario que ha creado la entidad. |
creationDate | String | Fecha de la creación de la entidad. |
lastModifiedBy | String | Nombre del usuario que ha modificado por última vez la entidad. |
lastModifiedDate | String | Fecha de la última modificación de la entidad. |
nombre | String | Nombre de la unidad de gestión |
acronimo | String | Acronimo de la unidad de gestión |
descripcion | String | Descripción de la unidad de gestión |
activo | Boolean | Indica si esta activa o no |
Servicios
Para componer la URL llamada completa, se debe anteponer a lo indicado en la columna URL lo siguiente: {HOST}/api/sgicsp, donde {HOST} de deberá sustituir el dominio correspondiente al entorno al que se está accediendo y dicho acceso será por http o https según el caso.
Se definen en primer lugar una lista de servicios organizados paso a paso para llevar a cabo el proceso de dar de alta e una convocatoria en el SGI con los datos generales mínimos por parte de terceros y de modificarla a continuación para asociarle el resto de información.
Finalmente, se incluye el listado de aquellos métodos de consulta que no fueron descritos en los apartados anteriores.
Crear convocatoria
Método | URL | Parámetros | Respuesta | Descripción |
---|---|---|---|---|
GET | Servicio /unidades del API de Usuarios. Ver URL en ESB - SGI - Usuarios | q+s (query + sort) | Lista[UnidadGestion] | Listado de unidades de gestión |
GET | /modelounidades | q+s (query + sort) La query estará formada por:
| ModeloUnidad | Listado de ModeloUnidad de la unidad de gestión indicada Ejemplo: unidadGestionRef=="1" |
POST | /convocatorias | Convocatoria | Convocatoria | Crea la convocatoria. Los siguientes campos se rellenan con los datos obtenidos de los endpoints anteriores:
|
Asociar entidades convocantes
Método | URL | Parámetros | Respuesta | Descripción |
---|---|---|---|---|
GET | Servicio /empresas del API del Sistema de Gestión de Empresas. Ver URL en SGI - ESB - SGEMP | q+s (query + sort) La query estará formada por:
| Lista[Empresas] | Listado de Empresa. Ejemplo: numeroIdentificacion=ik="123",nombre=ik="123",razonSocial=ik="123" |
GET | /programas/plan | Programa | Listado de planes (programas sin padre) | |
GET | /programas/{id}/hijos | id | Programa | Listado de programas que tienen como padre el programa indicado |
POST | /convocatoriaentidadconvocantes | ConvocatoriaEntidadConvocante | ConvocatoriaEntidadConvocante | Crea la entidad convocante de la convocatoria. Los siguientes campos se rellenan con los datos obtenidos de los endpoints anteriores:
|
Asociar entidades financiadoras
Método | URL | Parámetros | Respuesta | Descripción |
---|---|---|---|---|
GET | Servicio /empresas del API del Sistema de Gestión de Empresas. Ver URL en SGI - ESB - SGEMP | q+s (query + sort) La query estará formada por:
| Lista[Empresas] | Listado de Empresa. Ejemplo: numeroIdentificacion=ik="123",nombre=ik="123",razonSocial=ik="123" |
GET | /tipofinanciaciones | TipoFinanciacion | Listado de planes (programas sin padre) | |
GET | /fuentesfinanciacion | FuenteFinanciacion | Listado de programas que tienen como padre el programa indicado | |
POST | /convocatoriaentidadconvocantes | ConvocatoriaEntidadFinanciadora | ConvocatoriaEntidadFinanciadora | Crea la entidad financiadora de la convocatoria. Los siguientes campos se rellenan con los datos obtenidos de los endpoints anteriores:
|
Asociar documentos
Método | URL | Parámetros | Respuesta | Descripción |
---|---|---|---|---|
GET | /modeloejecuciones/{id}/modelotipofases | q+s (query + sort) La query estará formada por:
| Lista[ModeloTipoFase] | Listado de tipos de fase del modelo de ejecución de la convocatoria. Ejemplo: tipoFase.activo=="true";convocatoria=="true" |
GET | /modeloejecuciones/{id}/modelotipodocumentos | q+s (query + sort) La query estará formada por:
| Lista[ModeloTipoDocumento] | Listado de tipos de documento del modelo de ejecución de la convocatoria y del tipo de fase si se selecciona una. Ejemplo: tipoDocumento.activo=="true";modeloTipoFase.tipoFase.id=="1" |
POST | Servicio /documentos del API del Sistema de Gestión de Documentos. Ver URL en SGI - ESB - SGDOC. | (multipart/form-data)
| Documento | Guarda el documento en el sgdoc |
POST | /convocatoriadocumentos | ConvocatoriaDocumento | ConvocatoriaDocumento | Crea la entidad documento de la convocatoria. Los siguientes campos se rellenan con los datos obtenidos de los endpoints anteriores:
|
Consultar convocatorias
Método | URL | Parámetros | Respuesta | Descripción |
---|---|---|---|---|
GET | /convocatorias | q+s (query + sort) La query estará formada por:
| Lista[Convocatoria] | Listado de convocatorias. Ejemplo: fechaProvisional=ge="2022-02-28T23:00:00Z";fechaProvisional=le="2022-03-31T21:59:59Z" |
GET | /convocatorias/{id}/convocatoriaareatematicas | Lista[ConvocatoriaAreaTematica] | Listado de las asociaciones de áreas temáticas con la convocatoria. | |
GET | /convocatorias/{id}/convocatoriadocumentos | Lista[ConvocatoriaDocumento] | Listado de asociaciones entre documentos y la convocatoria | |
GET | /convocatorias/{id}/convocatoriaentidadconvocantes | Lista[ConvocatoriaEntidadConvocante] | Listado de asociaciones entre entidades convocantes y la convocatoria | |
GET | /convocatorias/{id}/convocatoriaentidadfinanciadoras | Lista[ConvocatoriaEntidadFinanciadora] | Listado de asociaciones entre entidades financiadoras y la convocatoria | |
GET | /convocatorias/{id}/palabrasclave | Lista[PalabraClave] | Listado de palabras clave de la convocatoria | |
GET | /areatematicas | q+s (query + sort) La query estará formada por:
| Lista[AreaTematica] | Listado de AreaTematica (sólo devuelve los registros activos). Nota: en el caso de no recibirse un padreId en la query, se devolverán todas las áreas temáticas y en caso de indicarse en la query que se quieren solo las que tengan un padreId con valor "null" se devolverán únicamente las de primer nivel o nivel raíz. Ejemplo de query para obtener solo áreas de conocimiento raíz (su padre es null): padreId=na= |
GET | /areatematicas/{id} | AreaTematica | Datos de un área temática específica. | |
GET | /convocatorias/eliminadas-ids | q+s La query estará formada por:
| Lista[Long] | Listado de Identificadores de Convocatoria que han sido eliminadas (campo activo = false) a partir de una fecha. Se utilizará el siguiente parámetro en la llamada al servicio:
Ejemplo1:
Ejemplo2:
|
GET | /convocatorias/modificados-ids | q+s La query estará formada por:
| Lista[Long] | Listado de identificadores de convocatorias activas que han sido modificadas (tanto la entidad CONVOCATORIA) como las siguientes entidades relacionadas:
Ejemplo:
|