...
Entidad | Descripción |
---|---|
TipoDatoEconomico | Puede tomar los siguientes valores:
|
TipoOperacion | Puede tomar los siguientes valores:
|
Estado (en validación de gastos) | Puede tomar los siguientes valores:
|
Modelo lógico
API
Características generales que todas las API REST deben de cumplir:
...
Nombre | Tipo | Descripción |
id | String | Identificador del dato económico. Tiene que ser un identificador único. |
proyectoId | String | Identificador del proyecto económico |
partidaPresupuestaria | String | Código de la Partida presupuestaria |
fechaDevengo | String | Fecha de devengo (fecha del gasto o del ingreso) |
clasificacionSGE | ClasificacionSGE | Contiene la entidad ClasificacionSGE |
codigoEconomico | CodigoEconomicoGasto/CodigoEconomicoIngreso | Contiene la entidad Código económico Gasto si se trata de un gasto (campo "tipo" es "Gasto" ) o contiene la entidad Código económico Ingreso si se trata de un ingreso (campo "tipo" es "Gasto" ) |
anualidad | String | Anualidad |
tipo | String | Dos valores:
|
columnas | Map[clave,valor] | Mapa de propiedades El valor será un String salvo en aquellas columnas que sean acumulables (se tenga que hacer sumas sobre ellas) donde será de tipo Numérico (sin separador de miles y como separador decimal el punto) |
...
Nombre | Tipo | Descripción |
id | String | Identificador del dato económico. Tiene que ser un identificador único. |
proyectoId | String | Identificador del proyecto económico |
partidaPresupuestaria | String | Código de la Partida presupuestaria |
fechaDevengo | String | Fecha de devengo (fecha del gasto o del ingreso) |
clasificacionSGE | ClasificacionSGE | Contiene la entidad ClasificacionSGE |
codigoEconomico | CodigoEconomicoGasto/CodigoEconomicoIngreso | Contiene la entidad Código económico Gasto si se trata de un gasto o contiene la entidad Código económico Ingreso si se trata de un ingreso |
anualidad | String | Anualidad |
campos | Lista[Campo] | Lista de campos, por cada campo se define el nombre y el valor del campo |
...
Nombre | Tipo | Descripción |
comentario | String | Comentario relacionado con el cambio de estado de un gasto |
ClasificacionSGE
Nombre | Tipo | Descripción |
id | String | Cadena numérica o alfanumérica que identifica a la clasificación del gasto en el SGE |
nombre | String | Nombre o descripción de la clasificación SGE |
Método | URL | Parámetros | Respuesta | Descripción |
---|---|---|---|---|
GET | /ejecucion-economica/columnas | q+s (query + sort) La query estará formada por:
El campo reducida puede tomar los siguientes valores:
Si no esta informado el campo reducida se considera false. El tipoOperacion puede tomar los siguientes valores:
| Lista[Columna] | Listado con las columnas que va a devolver la llamada /ejecucion-economica Por cada columna se indica un id, nombre, si es una columna acumulable (se va a hacer una suma de ella en el SGI) Ver el apartado "Columnas Ejecución económica" para ver que columnas se deben de mostrar dependiendo del tipo de operación (campo tipoOperacion) y si es reducida o no |
GET | /ejecucion-economica | q+s (query + sort) La query estará formada por:
El campo reducida puede tomar los siguientes valores:
Si no esta informado el campo reducida se considera false. El tipoOperacion puede tomar los siguientes valores:
| Lista[DatoEconomico] | Listado con los datos económicos pedidos según el campo tipoOperacion. Por cada dato económico se devolverán los siguientes campos:
|
GET | /ejecucion-economica/{id} | tipoOperacion El tipoOperacion puede tomar los siguientes valores (cuando estamos en la llamada de detalle de dato económico):
| DatoEconomicoDetalle | Detalle del dato económico con todas sus columnas.
El listado de campos a mostrar dependerá de que dato económico sea, si es una factura o gasto, un viaje o dieta o un personal contratado. |
Validación de gastos | ||||
GET | /gastos/columnas | q+s (query + sort) La query estará formada por:
Si no esta informado el campo reducida se considera false. El campo estado puede tomar dos valores:
El campo reducida puede tomar los siguientes valores:
| Lista[Columna] | Listado con las columnas que va a devolver la llamada /gastos Por cada columna se indica un id, nombre, si es una columna acumulable (se va a hacer una suma de ella en el SGI) Ver el apartado "Columnas Validación de gastos" para ver que columnas se deben de mostrar dependiendo de si es reducida o no |
GET | /gastos | q+s (query + sort) La query estará formada por:
El campo estado puede tomar dos valores:
El campo reducida puede tomar los siguientes valores:
Si no esta informado el campo reducida se considera false. | Lista[DatoEconomico] | Listado de gastos pendientes de pasar por la "Validación de gastos" si en el campo del filtrado estado = 'Pendiente' o listado de gastos que ya han sido validados (han pasado por la "Validación de gastos") si en el campo del filtrado estado = 'Validado' Para cada gasto se devolverán los siguientes datos:
|
GET | /gastos/{id} | DatoEconomicoDetalle | Detalle de un gasto. Para cada gasto se devolverán los siguientes datos:
| |
PATCH | /gastos/{id}/validar | Comentario | Se valida el gasto y recibe como parámetro el comentario en caso de que lo tuviese. | |
PATCH | /gastos/{id}/rechazar | Comentario | Se rechaza el gasto y recibe como parámetro el comentario en caso de que lo tuviese. | |
PENDIENTE | Se necesita un servicio que reciba como parámetros la lista de identificadores del gasto y devuelve las columnas a mostrar en la validación de gastos con la suma ya realizada, en este caso "Importe validado" e "Importe pagado" (realiza la sumas de esos importes de todos los gastos pasados como parámetro) Se necesitará primero la función que devuelva el nombre de las columnas? | |||
PENDIENTE | Se necesita un servicio que reciba como parámetro la lista de códigos económicos usados en el proyecto (en elegibilidad) y devuelva para cada código económico la suma del importe de todos los gastos pendientes para ese código económico Se necesitará primero la función que devuelva el nombre de las columnas? | |||
GET | /documentos/{id} | Documento | Devuelve el detalle del documento | |
GET | /documentos/{id}/archivo | Binario (en la cabecera ira el contentType) | Devuelve el binario del documento |
...
Cuando tipoOperacion=='FJF' y reducida = "true" las columnas a devolver en la Universidad de Murcia serán:
id | nombre | acumulable |
---|---|---|
1 | Nº de registro | false |
2 | Concepto de la Fac./Gasto | false |
3 | Fecha |
pago | false |
4 |
Importe | true |
Cuando tipoOperacion=='FJF' y reducida = "false" las columnas a devolver en la Universidad de Murcia serán:
id | nombre | acumulable | ||
---|---|---|---|---|
1 | Nº de registro | false | ||
2 | Tipo de operación | false | ||
3 | Proveedor | false | ||
4 | Nº de registro del proveedor | false | ||
5 | Concepto de la Fac./Gasto | false | ||
6 | Importe | true | ||
7 | Importe IVA | true | ||
8 | Fecha devengocontabilización | false | ||
9 | Fecha contabilizaciónpago | false | ||
10Fecha pago | false | 11 | Nº de documento de gasto | false |
1211 | Nº de señalamiento | false |
Facturas y justificantes - Viajes y dietas
...
id | nombre | acumulable | |||
---|---|---|---|---|---|
1 | Nº de factura | false | |||
2 | Nº de comisión de servicios | false | |||
3 | Perceptor/proveedor | false | |||
4 | Concepto/ motivo del viaje | false | |||
5 | Fecha devengopago | false | |||
6 | Fecha pago | false | 7 | Importe | true |
El campo Perceptor/proveedor será el nombre y apellidos del perceptor o proveedor
...
id | nombre | acumulable | |||
---|---|---|---|---|---|
1 | Nº de factura | false | |||
2 | Nº de comisión de servicios | false | |||
3 | Perceptor/proveedor | false | |||
4 | Identificador Perceptor/Proveedor | false | |||
5 | Concepto/ motivo del viaje | false | |||
6 | Fecha devengocontabilización | false | |||
7 | Fecha contabilizaciónpago | false | |||
8 | Fecha pago | false | 9 | Itinerario viaje | false |
109 | Destino | false | |||
1110 | Fecha salida - Fecha vuelta | false | |||
1211 | Medio de locomoción | false | |||
1312 | Importe locomoción | true | |||
1413 | Importe alojamiento | true | |||
1514 | Importe dietas | true | |||
1615 | Otros gastos | true | |||
1716 | Importe total | true | |||
1817 | Observaciones locomoción | false | |||
1918 | Observaciones alojamiento | false | |||
2019 | Observaciones dietas | false |
...
id | nombre | acumulable | |||
---|---|---|---|---|---|
1 | Nº documento identificación | false | |||
2 | Nombre y apellidos | false | |||
3 | Concepto | false | |||
4 | Fecha devengopago | false | |||
5 | Fecha pago | false | 6 | Importe | true |
El campo "Nº documento identificación" se refiere al NIF/NIE del contratado
...
id | nombre | acumulable | |||
---|---|---|---|---|---|
1 | Nº documento identificación | false | |||
2 | Nombre y apellidos | false | |||
3 | Concepto | false | |||
4 | Fecha devengocontabilización | false | |||
5 | Fecha contabilizaciónpago | false | |||
6 | Fecha pagoImporte | falsetrue | |||
7 | Importe | true | 8 | Fecha inicio del contrato | false |
98 | Fecha fin del contrato | false | |||
109 | Categoría laboral | false | |||
1110 | Jornada semanal o diaria | false |
...
id | nombre | acumulable | |||
---|---|---|---|---|---|
1 | Tipo documento | false | |||
2 | Importe imputado | true | |||
3 | Proveedor | false | 4 | Fecha | false |
Cuando reducida = "false" las columnas a devolver en la Universidad de Murcia serán:
id | nombre | acumulable | |||
---|---|---|---|---|---|
1 | Tipo documento | false | |||
2 | Nº documento | false | |||
3 | Importe imputado | true | |||
4 | Importe total | true | |||
5 | Descripción | false | |||
6 | Proveedor | false | 7 | Fecha | false |
Campos Detalle dato económico
...
- Nº de registro
- Tipo de operación
- Proveedor
- Nº de registro del proveedor
- Concepto de la Fac/Gasto
- Importe
- Importe IVA
- Fecha devengoFecha contabilización
- Fecha pago
- Nº de documento de gasto
- Nº de señalamiento
...
- Nº de factura
- Nº de comisión de servicio
- Perceptor/Proveedor
- Identificador Perceptor/Proveedor
- Concepto/ Motivo del viaje
- Fecha devengoFecha contabilización
- Fecha pago
- Itinerario viaje
- Destino
- Fecha salida - Fecha vuelta
- Medio de locomoción
- Importe locomoción
- Importe alojamiento
- Importe dietas
- Otros gastos
- Importe total
- Observaciones locomoción
- Observaciones alojamiento
- Observaciones dietas
...
- Nº documento identificación
- Nombre y apellidos
- ConceptoFecha devengo
- Fecha contabilización
- Fecha pago
- Importe
- Fecha inicio del contrato
- Fecha fin del contrato
- Categoría laboral
- Jornada semanal o diaria
...
- Tipo documento
- Nº documento
- Importe imputado
- Importe total
- Descripción
- Proveedor
- Fecha
Ejemplos
Ejecución presupuestaria - Estado actual - Columnas (/ejecucion-economica/columnas)
...
Bloque de código | ||||
---|---|---|---|---|
| ||||
[ { "id": "1" "nombre":"Nº de registro" "acumulable": "false" }, { "id":"2", "nombre":"Tipo de operación", "acumulable": "false" }, { "id":"3", "nombre":"Proveedor", "acumulable": "false" }, { "id":"4", "nombre":"Nº de registro del proveedor", "acumulable": "false" }, { "id":"5", "nombre":"Concepto de la Fac./Gasto", "acumulable": "false" }, { "id":"6", "nombre":"Importe", "acumulable": "true" }, { "id":"7", "nombre":"Importe IVA", "acumulable": "true" }, { "id":"8", "nombre":"Fecha devengocontabilización", "acumulable": "false" }, { "id":"9", "nombre":"Fecha contabilizaciónpago", "acumulable": "false" }, { "id":"10", "nombre":"Fecha pago", "acumulable": "false" }, { "id":"11", "nombre":"Nº documento de gasto", "acumulable": "false" }, { "id":"1211", "nombre":"Nº de señalamiento", "acumulable": "false" } ] |
...
Bloque de código | ||||
---|---|---|---|---|
| ||||
[ { "id":"11-2020-Factura" "proyectoId":"123456", "partidaPresupuestaria": "8002B541A64406", "codigoEconomico": { "fechaDevengo": "20/12/2020", "clasificacionSGE": { "id": "1", "nombre": "Fungible", } , "codigoEconomico": { "id": "FU", "nombre": "Fungible", "tipo": "Gasto" } "anualidad":"2020", "tipo":"Gasto", "columnas": { "1":"1243", "2":"Factura", "3":"Proveedor1", "4":"24555", "5":"Gasto de material inventariable", "6":500.00, "7":0.00, "8":"20/12/2020", "9":"20/12/2020", "10":"20/12/2020", "11":"11222", "1211":"4567" } }, { "id":"12-2020-Factura" "proyectoId":"123456", "partidaPresupuestaria": "8002B541A64406", "codigoEconomico "fechaDevengo": "20/12/2020", "clasificacionSGE": { "id": "1", "nombre": "Fungible", } , "codigoEconomico": { "id": "FU", "nombre": "Fungible", "tipo": "Gasto" } "anualidad":"2020", "tipo":"Gasto", "columnas":{ "1":"1243", "2":"Factura", "3":"Proveedor1", "4":"24555", "5":"Gasto de material inventariable", "6":500.00, "7":0.00, "8":"20/12/2020", "9":"20/12/2020", "10":"20/12/2020", "11":"11222", "1211":"4567" } } ] |
Facturas y justificantes - Facturas y gastos - Detalle (/ejecucion-economica/{id})
...
Bloque de código | ||||
---|---|---|---|---|
| ||||
{ "id":"11-2020-Factura" "proyectoId":"123456", "partidaPresupuestaria": "8002B541A64406", "fechaDevengo": "20/12/2020", "clasificacionSGE": { "id": "1", "nombre": "Fungible", } , "codigoEconomico": { "id": "FU", "nombre": "Fungible", "tipo": "Gasto" } "anualidad":"2020", "tipo":"Gasto", "campos":[ { "nombre":"Nº registro", "valor":"1243" }, { "nombre":"Tipo operación", "valor":"Factura" }, { "nombre":"Proveedor", "valor":"Proveedor1" }, { "nombre":"Nº de registro del proveedor", "valor":"24555" }, { "nombre":"Concepto de la Fac/Gasto", "valor":"Gasto de material inventariable" }, { "nombre":"Importe", "valor":"500.00" }, { "nombre":"Importe IVA", "valor":"0.00" }, { "nombre":"Fecha devengocontabilización", "valor":"20/12/2020" }, { "nombre":"Fecha contabilizaciónpago", "valor":"20/12/2020" }, { "nombre":"Fecha pagoNº documento de gasto", "valor":"20/12/202011222" }, { "nombre":"Nº documento de gastoseñalamiento", "valor":"112224567" }, { "nombre":"Nº de señalamiento", "valor":"4567" } ] } |
Validaciones de gastos pendientes - Columnas (con reducida a true) (/gastos/columnas)
...
Bloque de código | ||||
---|---|---|---|---|
| ||||
[ { "id": "1" "nombre":"Tipo documento" "acumulable": "false" }, { "id":"2", "nombre":"Importe imputado", "acumulable": "true" }, { "id":"3", "nombre":"Proveedor", "acumulable": "false" }, { "id":"4", "nombre":"Fecha", "acumulable": "false" } ] ] |
Validaciones de gastos pendientes - Columnas (con reducida a false) (/gastosValidaciones de gastos pendientes - Columnas (con reducida a false) (/gastos/columnas)
Bloque de código | ||||
---|---|---|---|---|
| ||||
proyectoId=="123456";estado=="Pendiente";reducida=="false" |
Bloque de código | ||||
---|---|---|---|---|
| ||||
[ { "id": "1" "nombre":"Tipo documento" "acumulable": "false" }, { "id":"2", "nombre":"Nº documento", "acumulable": "false" }, { "id":"3", "nombre":"Importe imputado", "acumulable": "true" }, { "id":"4", "nombre":"Importe total", "acumulable": "true" }, { "id":"5", "nombre":"Descripción", "acumulable": "false" }, { "id":"6", "nombre":"Proveedor", "acumulable": "false" }, { "id":"7", "nombre":"Fecha", "acumulable": "false" } ] |
Validaciones de gastos pendientes (con reducida a true) (/gastos)
...
Bloque de código | ||||
---|---|---|---|---|
| ||||
[ { "id":"1", "proyectoId":"123456", "partidaPresupuestaria": "08002B541A64406", "codigoEconomico": { "fechaDevengo": "10/11/2021", "clasificacionSGE": { "id": "1", "nombre": "Fungible", } , "codigoEconomico": { "id": "VI", "nombre": "Viajes y dietas", "tipo": "Gasto" }, "anualidad":"2021", "tipo":"Gasto", "columnas": { "1":"Factura", "2":"1000.50", "3":"Empresa S.A", } }, { "id":"2", "proyectoId":"123456", "partidaPresupuestaria": "08002B541A64406", "4fechaDevengo": "1007/11/2021", } }, { "clasificacionSGE": { "id": "21", "proyectoId "nombre": "123456Fungible", "partidaPresupuestaria": "08002B541A64406", } , "codigoEconomico": { "id": "VI", "nombre": "Viajes y dietas", "tipo": "Gasto" } "anualidad":"2021", "tipo":"Gasto", "columnas" { "1":"Factura", "2":"1000.50", "3":"Empresa S.A", "4":"07/11/2021" } } ] |
Validaciones de gastos pendientes (con reducida a false) (/gastos)
...
Bloque de código | ||||
---|---|---|---|---|
| ||||
[ { { "id":"1", "proyectoId":"123456", "partidaPresupuestaria": "08002B541A64406", "fechaDevengo": "10/11/2021", "clasificacionSGE": { "id": "1", "proyectoId "nombre": "123456Fungible", "partidaPresupuestaria": "08002B541A64406", } , "codigoEconomico": { "id": "VI", "nombre": "Viajes y dietas", "tipo": "Gasto" }, "anualidad":"2021", "tipo":"Gasto", "columnas": { "1":"Factura", "2":"122-45", "3":"700.00", "4":"800.50", "5":"Descripción del gasto", "6":"Empresa S.A", } }, { "id":"2", "proyectoId":"123456", "partidaPresupuestaria": "08002B541A64406", "7fechaDevengo": "10/11/2021", } }, { "clasificacionSGE": { "id": "21", "proyectoId "nombre": "123456Fungible", "partidaPresupuestaria": "08002B541A64406", } , "codigoEconomico": { "id": "VI", "nombre": "Viajes y dietas", "tipo": "Gasto" } "anualidad":"2021", "tipo":"Gasto", "columnas" { "1":"Factura", "2":"122-46", "3":"600.00", "4":"1800.50", "5":"Descripción del gasto", "6":"Empresa S.A", "7":"10/11/2021" } } ] |
Detalle gasto (/gastos/{id})
...
Bloque de código | |||||||
---|---|---|---|---|---|---|---|
| |||||||
"id":"2", "proyectoId":"123456", "partidaPresupuestaria": "08002B541A64406", "fechaDevengo": "10/11/2021", "clasificacionSGE": { "id": "1", "nombre": "Fungible", } , "id":"2", "proyectoId":"123456", "partidaPresupuestaria": "08002B541A64406", "codigoEconomico": { "id": "VI", "nombre": "Viajes y dietas", "tipo": "Gasto" } "anualidad":"2021", "tipo":"Gasto", "campos":[ { "nombre":"Tipo documento", "valor":"Factura" }, { "nombre":"Nº documento", "valor":"122-46" }, { "nombre":"Importe imputado", "valor":"600.00" }, { "nombre":"Importe total", "valor":"1800.50" }, { "nombre":"Descripción", "valor":"Descripción del gasto" }, { "nombre":"Proveedor", "valor":"Empresa S.A" }, { "nombre":"Fecha", "valor":"10/11/2021" } ] "documentos":[ { "id": "11", "nombre":"Factura", "nombreFichero":"factura.pdf" }, { "id": "12", "nombre":"Otro documento", "nombreFichero":"otroDocumento.pdf" } ] |
...