Tabla de contenidos Sistema de gestión de empresas
Entidades
Entidad Descripción Empresa (EmpresaUM) Contiene los datos básicos de una empresa. DatosContacto (DatosContactoUM) Contiene los datos de contacto de la empresa. DatosTipoEmpresa Contiene los datos relativos a la tipología de la empresa, estando esta tipología basada en criterios diversos (los que se establezcan por parte de la universidad o sistema externo). TipoIdentificador Listado con los tipos de identificador fiscal (CIF, VAT, ...). TipoTercero Listado con los tipos de tercero (necesario para las empresas con datos económicos). TipoEmpresa Listado con los tipos de empresa (necesario para las empresas con datos económicos). TipoEmpresaContabilidad Listado con los tipos de empresa para contabilidad (necesario para las empresas con datos económicos). TipoTerceroReinoUnido Listado con los tipos de tercero para Reino Unido (necesario para las empresas con datos económicos cuyo país es el Reino Unido). EmpresaClasificacion (EmpresaUMClasificacion) Listado de relaciones entre empresas y clasificaciones. En principio, únicamente con las del tipo "Código CNAE" también llamado "Sector Industrial". Ver definición de clasificaciones en Sistema Gestión de Organizaciones (UM - SGI - ESB - SGO). Modelo lógico
API
Características generales que todas las API REST deben de cumplir:
Definición de los objetos
Empresa
Nombre Tipo Descripción id String Identificador de la empresa. nombre String Nombre de la empresa. Se devolverá lo mismo que en el campo "razonSocial". razonSocial String Razón social de la empresa. Se devolverá lo mismo que en el campo "nombre". tipoIdentificador TipoIdentificador Tipo de identificador fiscal de la empresa. Se devuelve la entidad TipoIdentificador con todos sus campos. numeroIdentificacion String Número de identificación fiscal de la empresa del tipo indicado en "tipoIdentificador". datosEconomicos Boolean Indicador de si se trata de una empresa con datos económicos (está dada de alta en GENTE y en JUSTO) o sin datos económicos (está dada de alta solo en GENTE). padreId String Identificador de la empresa padre o entidad principal. Estará informado en el caso de empresas que son subentidad de otra. Bloque de código language java theme RDark title Empresa collapse true { "id": "ent-002", "nombre": "Empresa de Prueba", "razonSocial": "Empresa de Prueba", "tipoIdentificador": { "id":"tp-1", "nombre":"CIF" }, "numeroIdentificacion": "H11111111", "datosEconomicos": false, "padreId": "ent-001" }
TipoIdentificador
Nombre Tipo Descripción id String Identificador de la entidad TipoIdentificador. nombre String Nombre (Posibles valores: CIF, VAT, ...). Bloque de código language java theme RDark title TipoIdentificador collapse true { "id":"tp-1", "nombre": "CIF" }
DatosTipoEmpresa
Nombre Tipo Descripción tipoTercero TipoTercero Tipo de tercero. Se devuelve la entidad TipoTercero con todos sus campos. tipoEmpresa TipoEmpresa Tipo de empresa. Se devuelve la entidad TipoEmpresa con todos sus campos. tipoEmpresaContabilidad TipoEmpresaContabilidad Tipo de tercero. Se devuelve la entidad TipoEmpresaContabilidad con todos sus campos. tipoTerceroReinoUnido TipoTerceroReinoUnido Tipo de tercero para personas físicas (personas actuando como empresas) con dirección en el Reino Unido. Se devuelve la entidad TipoTerceroReinoUnido con todos sus campos. Bloque de código language java theme RDark title DatosTipoEmpresa collapse true { "tipoTercero": { "id":"tt-1", "nombre": "Personas jurídicas españolas" }, "tipoEmpresa": { "id":"te-1", "nombre": "Empr. extranjeras" }, "tipoEmpresaContabilidad": { "id":"tec-1", "nombre": "Otros entes del sector público, empresa o institución privada" }, "tipoTerceroReinoUnido": { "id":"IN", "nombre": "Tercero de Irlanda del Norte" } }
TipoTercero
Control de cambios
Leyenda
...
Nuevo
...
Modificado
...
Eliminado
...
Fecha
...
Cambios
...
03-may-2021
...
Adaptaciones a los cambios de operativa y campos para el alta de empresas, en concreto, campos de país y provincia de contacto donde no se quiere tener que informar por parte del usuario la comunidad autónoma sino únicamente la provincia.
...
12-may-2021
...
Adaptación para contemplar la gestión de la clasificación "Sector industrial" (o códigos CNAE) en la UM, dentro de GENTE.
...
18-jun-2021
...
Añadir a este API el servicio para obtener el listado de tipos de vía y su entidad relacionada por trasladarse aquí su gestión desde el API de SGEMP.
...
19-nov-2021
...
Añadir a este API el servicio para obtener el listado de centros y su entidad relacionada por necesidad de disponer del dato de centro de adscripción de una persona en SGP.
Sistema de Gestión de la estructura Orgánica
Entidades
Cambios
12-may-2021 Se actualiza lista de entidades para:
- Añadir entidad "Clasificacion" a la lista de entidades a contemplar en la comunicación con el API UM.
18-jun-2021 Se actualiza lista de entidades para:
- Añadir entidad "TipoVia" a la lista de entidades a contemplar en la comunicación con el API UM.
19-nov-2021 Se actualiza lista de entidades para:
Añadir entidad "Centro" a la lista de entidades a contemplar en la comunicación con el API UM.
Entidad | Descripción |
AreaConocimiento | Listado con las áreas de conocimiento de la Universidad. Se entiende que las áreas de conocimiento de primer nivel son las ramas de conocimiento. |
Departamento | Listado con los departamentos que tiene la Universidad. |
Pais | Listado con los países que utiliza el SGI. |
ComunidadAutonoma | Listado con las comunidades autónomas que utiliza el SGI. |
Provincia | Listado con las provincias que utiliza el SGI. |
Clasificacion | Estructura de información enfocada jerárquicamente que recogerá la Clasificación Nacional de Actividades Económicas (CNAE), también conocido como el "Sector industrial". |
...
{+}https://www.ine.es/daco/daco42/clasificaciones/cnae09/estructura_cnae2009.xls+|
TipoVia | Listado con los tipos de vía (Calle, Avenida, ...). |
Centro | Listado con los centros de la Universidad. |
Modelo lógico
...
18-jun-2021 Se actualiza el modelo para:
- Añadir la nueva entidad "TipoVia".
19-nov-2021 Se actualiza el modelo para:
- Añadir la nueva entidad "Centro".
API
Características generales que todas las API REST deben de cumplir:
Definición de los objetos
Cambios
12-may-2021 Se actualizan los objetos para:
- Añadir el objeto "Clasificacion" a la lista de objetos de comunicación con el API UM. Para la comunicación, no es necesario que lleve el campo "tipoClasificacion".
18-jun-2021 Se actualiza el modelo para:
- Añadir el nuevo objeto "TipoVia".
19-nov-2021 Se actualizan los objetos para:
- Añadir el objeto "Centro" a la lista de objetos de comunicación con el API UM.
AreaConocimiento
Nombre | Tipo | Descripción |
id | String | Identificador del área de conocimiento. |
nombre | String | Nombre del área de conocimiento. |
padreId | String | Identificador de la entidad padre del área de conocimiento. |
AreaConocimiento Ampliar origen
{
"id": "11",
"nombre": "Medicina Preventiva y Salud Pública",
"padreId": "1"
}
Departamento
Nombre | Tipo | Descripción |
id | String | Identificador del departamento. |
nombre | String | Nombre del departamento. |
Departamento Ampliar origen
{
"id":"dpt-1",
"nombre":"Departamento Ciencias de la tecnología"
}
Pais
Nombre | Tipo | Descripción |
id | String | Identificador del país. |
nombre | String | Nombre del país. |
Pais Ampliar origen
{
"id": "33",
"nombre": "Francia"
}
...
Nombre Tipo Descripción id String Identificador de la
...
entidad TipoTercero. nombre String Nombre
...
paisId
...
String
...
Identificador del país.
...
. clase String Clase de tercero Reino Unido. Posibles valores: F (Persona física), J (Persona jurídica). Bloque de código language java theme RDark title TipoTercero collapse true { "id":"tt-1",
...
"nombre":
...
"Personas jurídicas: españolas",
...
"
...
clase": "
...
J"
...
}
...
TipoEmpresa
Nombre Tipo Descripción id String Identificador de la
...
entidad TipoEmpresa. nombre String Nombre
...
.
...
comunidadAutonomaId
...
String
...
Identificador de la comunidad autónoma.
Provincia Ampliar origen
{
"id": "1",
"nombre": "Provincia central",
"comunidadAutonomaId":"15"
}
Bloque de código language java theme RDark title TipoEmpresa collapse true { "id":"te-1", "nombre": "Empr. extranjeras" }
TipoEmpresaContabilidad
...
Nombre Tipo Descripción id String Identificador de la
...
entidad TipoEmpresaContabilidad.
...
nombre String
...
Nombre.
...
Bloque de código
...
String
...
Nombre de la clasificación.
...
padreId
...
String
...
Identificador de la entidad padre de la clasificación.
...
language java theme RDark title TipoEmpresaContabilidad collapse true { "id":"tec-1",
...
"nombre":
...
"Otros entes del sector público, empresa o institución privada" }
TipoTerceroReinoUnido
Nombre Tipo Descripción id String Identificador de la entidad TipoTerceroReinoUnido. Posibles valores: S (Tercero normal), IN (Tercero de Irlanda del Norte)
TipoVia
...
Nombre
...
Tipo
...
Descripción
...
id
...
String
...
. nombre String Nombre
...
. Posibles valores: Tercero normal (S), Tercero de Irlanda del Norte (IN). Bloque de código language java theme RDark title TipoTerceroReinoUnido collapse true { "id":"
...
IN",
...
"nombre":
...
"Tercero de Irlanda del Norte" }
EmpresaClasificacion
...
Nombre Tipo Descripción id String Identificador de la clasificación. codigo String Código de la
...
clasificación. nombre String Nombre
...
de la clasificación.
...
padreId
...
String Identificador de la entidad padre de la clasificación. Bloque de código theme RDark title Empresa-Clasificación padre collapse true { "id": "1", "codigo": "01" "nombre":"Cultivos no perennes", "padreId": null }
Bloque de código theme RDark title Empresa-Clasificación hija de primer nivel collapse true { "id": "2", "codigo": "0112" "nombre":"Cultivo de arroz", "padreId": "1" }
DatosContacto
Nombre Tipo Descripción paisContacto Pais Se devuelve la entidad Pais con todos sus campos. Ver definición en Sistema Gestión de Organizaciones (UM - SGI - ESB - SGO).
comAutonomaContacto ComunidadAutonoma Se devuelve la entidad ComunidadAutonoma con todos sus campos. Ver definición en Sistema Gestión de Organizaciones (UM - SGI - ESB - SGO).
provinciaContacto Provincia Se devuelve la entidad Provincia con todos sus campos. Ver definición en Sistema Gestión de Organizaciones (UM - SGI - ESB - SGO).
ciudadContacto String Ciudad de contacto de la empresa. codigoPostal
String Código postal de la empresa. tipoVia TipoVia Tipo de vía de la dirección de contacto de la empersa. Se devuelve la entidad TipoVia con todos sus campos. Ver definición en Sistema Gestión de Organizaciones (UM - SGI - ESB - SGO). nombreVia String Nombre de la vía de la dirección de contacto de la empresa. numero String Número de la vía de la dirección de contacto de la empresa. ampliacion String Campo para ampliar la informaicón de la dirección de contacto de la empresa. email String Email de contacto de la empresa. fax String Fax de contacto de la empresa. telefono String Teléfono de contacto de la empresa. direccionWeb String Dirección web de la empresa. Bloque de código language java theme RDark title DatosContacto collapse true { "paisContacto": { "id":"33", "nombre":"España" }, "comAutonomaContacto": { "id":"ca-3", "nombre":"Asturias" }, "provinciaContacto": { "id":"pro-1", "nombre":"Asturias" }, "ciudadContacto": "Oviedo", "codigoPostal": "33002", "tipoVia": { "id":"tv-1", "nombre":"Calle" }, "nombreVia": "Uría", "numero": "4", "ampliacion": "puerta A", "email": "email@empresadeprueba.es", "fax": "985798765", "telefono": "985798766", "direccionWeb": "www.empresadeprueba.es" }
Servicios
Método
URL
Parámetros
Respuesta
Descripción
GET /empresas q+s (query + sort)
La query estará formada por:
- id
- nombre
- razonSocial
- numeroIdentificacion
Lista[Empresa]
Listado de Empresa.
Ejemplo:
nombre=like=SL, razonSocial=like=SL
GET /empresas/{id} Empresa Detalle de los datos generales de una empresa.
POST /empresas/formly JSON 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 empresa.
Bloque de código language java theme RDark title Ejemplo de JSON collapse true { "tipoSedeId": "1", "datosEconomicos": false, "entidadRazonSocial": "Entidad", "tipoIdentificadorFiscalId": "2", "numeroIdentificadorFiscal": "12312312", "sectoresIndustriales": [ "4", "5" ], "paisContactoId": "1", "codigoPostalContacto": "48152", "ciudadContacto": "Madrid", "tipoViaContactoId": "1", "nombreViaContacto": "Gran vía", "numeroViaContacto": "234", "ampliacion": "ampliación", "email": "email@prueba.com", "telefonoContacto": "66612345", "faxContacto": "915551234", "direccionWeb": "http://www.prueba.com", "tipoTerceroId": "F", "tipoEmpresaId": "1", "tipoEmpresaContabilidadId": "1", "tipoTerceroReinoUnidoId": "S" }
Expandir title Descripción de campos JSON (pulsa para expandir)... - tipoSedeId: 0 para tipo 'Entidad' y 1 para tipo 'Subentidad'
- datosEconomicos: true | false
- entidadRazonSocial: Descripción de la entidad o razón social
- tipoIdentificadorFiscalId: Id de tipo de identificador fiscal procedente del endpoint /tipos-identificador
- numeroIdentificadorFiscal: Nº de identificador fiscal
- sectoresIndustriales: Array de ids de clasificaciones CNAE procedentes de /empresas-clasificaciones/empresa/{id}
- paisContactoId: Id de pais de contacto procedente de endpoint /paises. Ver definición en Sistema Gestión de Organizaciones (UM - SGI - ESB - SGO)
- codigoPostalContacto: Código postal de dirección de contacto
- ciudadContacto: Ciudad de contacto
- tipoViaContactoId: Id de tipo de vía de contacto procedente de endpoint /tipos-via
- nombreViaContacto: Nombre de vía de contacto
- numeroViaContacto: Número de dirección de contacto
- ampliacion: Descripción de ampliación
- email: Email de contacto
- telefonoContacto: Teléfono de contacto
- faxContacto: Fax de contacto
- direccionWeb: Web de contacto
- tipoTerceroId: Id de tipo de tercero procedente de endpoint /tipos-tercero
- tipoEmpresaId: Id de tipo de empresa procedente de endpoint /tipos-empresa
- tipoEmpresaContabilidadId: Id de tipo de empresa contabilidad procedente de endpoint /tipos-empresa-contabilidad
- tipoTerceroReinoUnidoId: Id de tipo de tercero reino unido procedente de endpoint /tipos-tercero-reino-unido
PUT /empresas/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 empresa.
Bloque de código language java theme RDark title Ejemplo de JSON collapse true { "empresaId": "1", "tipoSedeId": "1", "datosEconomicos": false, "entidadRazonSocial": "Entidad", "tipoIdentificadorFiscalId": "2", "numeroIdentificadorFiscal": "12312312", "entidadPrincipal": "entidad principal", "sectoresIndustriales": [ "4", "5" ], "paisContactoId": "1", "codigoPostalContacto": "48152", "ciudadContacto": "Madrid", "tipoViaContactoId": "1", "nombreViaContacto": "Gran vía", "numeroViaContacto": "234", "ampliacion": "ampliación", "email": "email@prueba.com", "telefonoContacto": "66612345", "faxContacto": "915551234", "direccionWeb": "http://www.prueba.com", "tipoTerceroId": "1", "tipoEmpresaId": "1", "tipoEmpresaContabilidadId": "1", "tipoTerceroReinoUnidoId": "S" }
Expandir title Descripción de campos JSON (pulsa para expandir)... - empresaId: Id de la empresa
- tipoSedeId: 0 para tipo 'Entidad' y 1 para tipo 'Subentidad'
- datosEconomicos: true | false
- entidadRazonSocial: Descripción de la entidad o razón social
- tipoIdentificadorFiscalId: Id de tipo de identificador fiscal procedente del endpoint /tipos-identificador
- numeroIdentificadorFiscal: Nº de identificador fiscal
- entidadPrincipal: Nombre de entidad principal
- sectoresIndustriales: Array de ids de clasificaciones CNAE procedentes de /empresas-clasificaciones/empresa/{id}
- paisContactoId: Id de pais de contacto procedente de endpoint /paises. Ver definición en Sistema Gestión de Organizaciones (UM - SGI - ESB - SGO)
- codigoPostalContacto: Código postal de dirección de contacto
- ciudadContacto: Ciudad de contacto
- tipoViaContactoId: Id de tipo de vía de contacto procedente de endpoint /tipos-via
- nombreViaContacto: Nombre de vía de contacto
- numeroViaContacto: Número de dirección de contacto
- ampliacion: Descripción de ampliación
- email: Email de contacto
- telefonoContacto: Teléfono de contacto
- faxContacto: Fax de contacto
- direccionWeb: Web de contacto
- tipoTerceroId: Id de tipo de tercero procedente de endpoint /tipos-tercero
- tipoEmpresaId: Id de tipo de empresa procedente de endpoint /tipos-empresa
- tipoEmpresaContabilidadId: Id de tipo de empresa contabilidad procedente de endpoint /tipos-empresa-contabilidad
- tipoTerceroReinoUnidoId: Id de tipo de tercero reino unido procedente de endpoint /tipos-tercero-reino-unido
GET /empresas/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 empresa (/empresas PUT)
GET /datos-contacto/empresa/{id} DatosContacto Contiene los datos de contacto de una empresa.
Métodos
Cambios
03-may-2021 Se actualizan los servicios API para:
- Crear 3 nuevos métodos que permita recuperar los datos de provincia, comunidad autónoma y país a partir de su identificador.
- Corregir el planteamiento de los métodos de obtención de provincias y comunidades autónomas para recibir parámetros en formato estándar.
12-may-2021 Se actualizan los servicios API para:
- Crear 2 nuevos métodos que permitan recuperar los datos de las clasificaciones CNAE.
18-jun-2021 Se actualizan los servicios API para:
- Crear nuevo método para recuperar el listado de tipos de vía.
19-nov-2021 Se actualizan los servicios API para:
Crear 2 nuevos métodos que permitan recuperar los datos de un centro concreto y la lista de todos los centros.
Método
URL
Parámetros
Respuesta
Permisos
Descripción
GET
/areas-conocimiento
q+s (query + sort)
La query estará formada por:Markup de wiki padreId|Lista\[AreaConocimiento\]| |Listado de áreas de conocimiento. \\ Nota: en el caso de no recibirse un padreId en la query, se devolverán todas las áreas de conocimiento 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
/areas-conocimiento/{id}
AreaConocimiento
Detalle del área de conocimiento cuyo identificador se indica por parámetro.
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="940e2214-ed69-40d2-a46c-eb7294fde8bc"><ac:plain-text-body><![CDATA[
GET
/departamentos
Lista[Departamento]
Listado de departamentos.
]]></ac:plain-text-body></ac:structured-macro>
<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="b8da65a1-612a-49f7-a1eb-d1648aa7d1af"><ac:plain-text-body><![CDATA[
GET
/paises
Lista[Pais]
Listado de países.
]]></ac:plain-text-body></ac:structured-macro>
GET
/paises/{id}
Pais
Detalle del país cuyo identificador se indica por parámetro.
GET
/comunidades-autonomas
q+s (query + sort)
La query estará formada por:Markup de wiki paisId|Lista\[ComunidadAutonoma\]| |Listado de comunidades autónomas. \\ Nota: en el caso de recibirse un país como parámetro se devolverán todas las comunidades autónomas de ese país.|
GET
/comunidades-autonomas/{id}
ComunidadAutonoma
Detalle de la comunidad autónoma cuyo identificador se indica por parámetro.
GET
/provincias
q+s (query + sort)
La query estará formada por:Markup de wiki comunidadAutonomaId|Lista\[Provincia\]| |Listado de provincias. \\ Nota: en el caso de recibirse una comunidad autónoma como parámetro se devolverán todas las provincias de esa comunidad autónoma.|
GET
/provincias/{id}
Provincia
Detalle de la provincia cuyo identificador se indica por parámetro.
GET
/clasificaciones
q+s (query + sort)
La query estará formada por:Markup de wiki padreId|Lista\[Clasificacion\]| |Listado de clasificaciones CNAE. \\ Nota: en el caso de no recibirse un padreId en la query, se devolverán todas las clasificaciones 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 sólo las clasificaciones raíz (su padre es null){_}: \\ padreId=na= \\ Ver [<span style="color: #0000ee"><span style="text-decoration: underline; ">UM - SGI - ESB - SGEMP - Adaptaciones integración</span></span>|file:///C:/pages/viewpage.action?pageId=108605766] para la implementación de este servicio en el SGI.|
GET
/clasificaciones/{id}
Detalle de la clasificación CNAE cuyo identificador se indica por parámetro.Clasificacion
la implementación de este servicio en el SGI.<ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="1bddff3b-0cb9-482f-9261-23b5eb60f946"><ac:plain-text-body><![CDATA[
viasu implementación en el SGI.
GET /empresas-clasificaciones/empresa/{id} EmpresaClasificacion Listado de las clasificaciones de tipo códigos CNAE o sectores industriales asociados a una empresa. GET /datos-tipo-empresa/empresa/{id} DatosTipoEmpresa Detalle de los datos de tipo de empresa de una empresa. GET /tipos-identificador Lista[TipoIdentificador] Listado de tipos de identificador fiscal para las empresas ordenados alfabéticamente de forma ascendente. GET /tipos-
TipoViatercero Lista[
víaTipoTercero] Listado de tipos de tercero ordenados alfabéticamente de forma ascendente. GET ]]></ac:plain-text-body></ac:structured-macro>
/tipos-empresa Lista[TipoEmpresa] Listado de tipos de empresa ordenados alfabéticamente de forma ascendente. GET /tipos-empresa-contabilidad Lista[TipoEmpresaContabilidad] Listado de tipos de empresa para contabilidad ordenados alfabéticamente de forma ascendente. GET /tipos-tercero-reino-unido Lista[TipoTerceroReinoUnido] Listado de tipos de tercero, en caso de que el país sea Reino Unido, ordenados alfabéticamente de forma ascendente. Métodos donde el SGI solo hace de pasarela entre Universidad y CVN GET /empresas/modificadas-ids q+s
La query estará formada por:
- fechaModificacion
Lista[String] Listado de los identificadores de empresas que han sufrido cambios en los datos de identificativos de la empresa o en sus datos de contacto (entidad Empresa y entidad DatosContacto) <ac:structured-macro ac:name="unmigrated-wiki-markup" ac:schema-version="1" ac:macro-id="962fc2ce-a240-46ec-aac0-bd6e78b6321e"><ac:plain-text-body><![CDATA[
GET
/centros
Lista[Centro]
Listado de centros.
]]></ac:plain-text-body></ac:structured-macro>
GET
/centros/{id}
Detalle del centro cuyo identificador se indica por parámetro.Centro