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.
La excepción son los servicios donde hay una parte en negrita, indicando que en lugar de "sgicsp" se ha de usar el valor en negrita.
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 | /sgiusr/unidades | 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 | /sgemp/empresas | 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 | /sgemp/empresas | 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 | /sgdoc/documentos | (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. |