amap-administracion-electronica

Última modificación por Administrator el 2020/01/21 14:11

AMAP-ADMINISTRACION-ELECTRONICA-1.0.0 2020/01/21

  • Primera versión del componente
<dependency>
<groupId>es.gobcantabria.amap.integracion</groupId>
<artifactId>amap-administracion-electronica</artifactId>
<version>1.0.0</version>
</dependency>

N/A

Sin recursos disponibles.

Configuración

Para la utilización del componente amap-administracion-electronica basta con añadir el jar y sus correspondientes dependencias al classpath de la aplicación (habitualmente desde maven). 

Configuración de la factoría de ServiciosAdministracionElectronicaCSV

Configuración de servicios para operaciones con el el gestor documental, firma y generación de cajetines csv.

Con esta factoría crearemos lo servicios de amap-administracion-electronica que sustituyen los servicios eliminados de amap-csv en la versión 3.0.0

Crear servicios sin verificación

Se crea el servicio para operaciones sin comprobación del documento o firma.


ServicioAdministracionElectronicaCSVInterface servicioSinVeirificacion = ServicesFactory
                      .createServicioAdministracionElectronicaCSVSinComprobacion().build();

Crear servicios con verificación sin firma

Se crea el servicio para operaciones con comprobación del gestor documental y sin firma.


private ServicioGestorDocumental servicioGestorDocumental;
private ServicioCSVInterface servicioCodificacionCsv;

ServicioAdministracionElectronicaCSVInterface servicioConVerificacionSinFirma = ServicesFactory
                      .createServicioAdministracionElectronicaCSV(servicioGestorDocumental, servicioCodificacionCsv).build();

Crear servicios con verificación con firma

Se crea el servicio para operaciones con comprobación del gestor documental y funcionalidades de firma.


private ServicioGestorDocumental servicioGestorDocumental;
private ServicioCSVInterface servicioCodificacionCsv;
private AmapFirmaServiceInterface servicioFirma;

ServicioAdministracionElectronicaCSVInterface servicioConVerificacionSinFirma = ServicesFactory
                      .createServicioAdministracionElectronicaCSV(servicioGestorDocumental,servicioCodificacionCsv, servicioFirma)
                      .build();

Crear servicios para obtener ficheros que solo se encuentran en VerificaCsv

Se obtiene el servicio de VerificaCSV y se crea el servicio para operaciones con comprobación del gestor documental y funcionalidades de firma.


//Obtener servicio interno para llamar a verifica csv
ServicioInternoVerificaCSVInterface servicioVerificaCsv = ServicesFactory.getServicioVerificaCsv(new URL(urlVerifica), APLICACION, PASSWORD);

// Crear servicio
ServicioAdministracionElectronicaInterface servicio = ServicesFactory
     .createServicioAdministracionElectronica()
     .setServicioVerificaCsv(servicioVerificaCsv)
     .setServicioGestorDocumental(servicioGestorDocumental)
     .setServicioCodificacionCsv(servicioCodificacionCsv)
     .setServicioFirma(servicioFirma).build();

Nombreamap-administracion-electronica
Identificadoramap-administracion-electronica
Grupoes.gobcantabria.amap.integracion
Versión1.0.0
Licencia
DesarrolladorGobierno de Cantabria
Descripción

Componente para servicios de administración electrónica como crear documentos en el gestor documental verificando su firma previamente o generar documentos con el informe de firma.

Documentaciónamap-administracion-electronica (JavaDoc)
Binarioamap-administracion-electronica (Jar)

Sin particularidades. Seguir las recomendaciones del fabricante.

Con la utilización correcta de este componente se podrá cubrir la funcionalidad de los servios de amap-csv eliminados en la versión 3.0.0. Puede consultar el apartado migración desde amap-csv

Ejemplos de uso

El componente dispone de un método al que se le pasará un listado de operaciones a ejecutar, que previamente generaremos a través de la factoría de operaciones.

Configurar la factoría de operaciones

Se utiliza factoría de operaciones para generar una lista a la que se agregarán las operaciones a ejecutar y los datos necesarios para cada una de ellas.

Existen dos posibilidades, ejecutar las operaciones sobre un documento ya existente en el gestor documental o sobre un nuevo documento que se creará al comienzo de la ejecución.

Crear factoría para nuevo documento

Se creará la factoría de operaciones aportando los datos necesarios para crear el documento en el gestor documental


Documento documento;
Carpeta carpeta;
String aplicacionCsv;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(documento, carpeta, aplicacionesCsv)
     .build();

Si deseamos obtener el código CSV del documento creado, será necesario informar el parámetro "aplicacionCsv".

Crear factoría para documento existente

Se creará la factoría de operaciones para un documento ya almacenado en el gestor documental aportando los datos necesarios para su obtención.

Utilizando el CSV


String csv;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(csv)
     .build();

Utilizando el UUID


UUID uuid;
String aplicacionCsv;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(uuid, aplicacionCsv)
     .build();

Operaciones a ejecutar

Simplemente deberemos ir añadiendo a la lista (utilizando la facotría de operaciones) los datos necesarios para cada operación que queramos ejecutar.

Firmar

Se firmará un documento con el tipo de firma y certificado señalado.


TipoFirma tipoFirma;
String aliasCertificado;
String usuarioFirma;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(documento, carpeta, aplicacionCsv)
     .addFirmar(tipoFirma, aliasCertificado, usuarioFirma) // Datos para firmar
     .build();

Verificar firmar

Se verifica la firma de un documento a través del binario firmado


byte[] binarioFirmado;
String usuarioFirma;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(uuid, aplicacionCsv)
     .addVerificarFirma(binarioFirmado, usuarioFirma) // Datos para verificar firma
     .build();

Registrar

Se registrarán asientros de entrada y salida.

Registrar entrada V2

Se registra un asiendo de entrada en v2


RegistroEntradaV2 registroEntradaV2;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(uuid, aplicacionCsv)
     .addRegistarEntradaV2(registroEntradaV2) // Datos para registrar
     .build();

Registrar entrada V3

Se registra un asiendo de entrada en v3


RegistroEntradaV3 registroEntradaV3;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(uuid, aplicacionCsv)
     .addRegistarEntradaV3(registroEntradaV3) // Datos para registrar
     .build();

Registrar salida V2

Se registra un asiendo de salida en v2


RegistroSalidaV2 registroSalidaV2;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(uuid, aplicacionCsv)
     .addRegistarSalidaV2(registroSalidaV2) // Datos para registrar
     .build();

Generar cajetín CSV

Se genera una copia del documento original con el cajetín CSV del informe de firma.


String urlVerificaCSV;
boolean paginado;
boolean qr;
boolean csvEnUrlVerifica;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(uuid, aplicacionCsv)
     .addGenerarCajetinCsv(urlVerificacionCSV, paginado, qr, csvEnUrlVerifica) // Datos para cajetin csv
     .build();

Ejemplo completo

Ejemplo de cómo crear el listado con todas las operaciones. Crear -> Firmar -> Registrar -> Cajetin CSV


// Crear documento
Documento documento;
Carpeta carpeta;
String aplicacionCsv;

//Firmar
TipoFirma tipoFirma;
String aliasCertificado;
String usuarioFirma;

// Registrar
RegistroEntradaV2 registroEntradaV2;

// Cajetin CSV
TipoCajetin tipoCajetin;
String urlVerificaCSV;
boolean paginado;
boolean qr;
boolean csvEnUrlVerifica;

List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(documento, carpeta, aplicacionesCsv)
     .addFirmar(tipoFirma, aliasCertificado, usuarioFirma)
     .addRegistarEntradaV2(registroEntradaV2)
     .addGenerarCajetinCsv(tipoCajetin, urlVerificacionCSV, paginado, qr, csvEnUrlVerifica)
     .build();

Ejecutar operaciones

Se realizan las operaciones indicadas y se devuelve la información de respuesta de cada una de ellas.


// Lista de operaciones creada con la factoría
List<Operaciones> operaciones;

// Ejecutar operaciones
ResultadoOperaciones resultado = servicio.ejecutarOperaciones(operaciones);

Migración desde amap-csv (veriones anteriores amap-csv-3.0.0)

Guía de ayuda para adaptar servicios desparecidos de amap-csv a los servicios de amap-administacion-electronica que aportar la misma funcionalidad.

Generar informe de firma con verificación

Cómo reemplazar el método eliminado: generarInformeFirma(DatosConfiguracionPie, DocumentoVerificacion)

  • DatosConfiguracionPie: sus atributos son los parámetros para agregar la operación de generar cajetín.
  • DocumentoVerificacion: sus atributos son los parámetros para crear la lista de operaciones.
List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(uuid, aplicacionCsv) //.crearListaOperaciones(csv)
     .addGenerarCajetinCsv(tipoCajetin, urlVerificacionCSV, paginado, qr, csvEnUrlVerifica)
     .build();

Generar informe de firma sin verificación

Para generar un informe de firma sin verificación debermos hacer uso directo del componente amap-csv

Crear documento sin firma

Cómo reemplazar el método eliminado: crearDocumento(Documento, Capeta, DatosConfiguracionPie, InfoCSV, DatosRegistro, boolean)

  • DatosConfiguracionPie: sus atributos son los parámetros para agregar la operación de generar cajetín.
  • InfoCSV: el atributo 'aplicacionCsv' será necesario para crear el documento, el resto son eliminados.
List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(Documento, Carpeta, aplicacionCsv)
     .addGenerarCajetinCsv(tipoCajetin, urlVerificacionCSV, paginado, qr, csvEnUrlVerifica) // Añadir para generar cajetin
     .build();

Crear y firmar documento

Cómo reemplazar el método eliminado: crearDocumento(Documento, Capeta,TipoFirma, DatosConfiguracionPie, InfoCSV, DatosRegistro, boolean)

  • DatosConfiguracionPie: sus atributos son los parámetros para agregar la operación de generar cajetín.
  • InfoCSV: el atributo 'aplicacionCsv' será necesario para crear el documento, el resto son eliminados.
  • aliasCertificado: Se requiere para firmar el documento. Utilizar el mismo que en la creacion del antiguo servicio de amap-csv 
  • usuarioFirma: Nuevo parámetro para auditar la petición de firma del documento.
List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(Documento, Carpeta, aplicacionCsv)
     .addFirmar(tipoFirma, aliasCertificado, usuarioFirma)
     .addGenerarCajetinCsv(tipoCajetin, urlVerificacionCSV, paginado, qr, csvEnUrlVerifica) // Añadir para generar cajetin
     .build();

Crear documento firmado con verificación de firma

Cómo reemplazar el método eliminado: crearDocumento(Documento, Capeta, binarioFirmado, TipoFirma, DatosConfiguracionPie, InfoCSV, DatosRegistro, boolean, boolean)

  • DatosConfiguracionPie: sus atributos son los parámetros para agregar la operación de generar cajetín.
  • InfoCSV: el atributo 'aplicacionCsv' será necesario para crear el documento, el resto son eliminados.
  • usuarioFirma: Nuevo parámetro para auditar la petición de firma del documento.
List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(Documento, Carpeta, aplicacionCsv)
     .addVerificarFirma(binarioFirmado, usuarioFirma)
     .addGenerarCajetinCsv(tipoCajetin, urlVerificacionCSV, paginado, qr, csvEnUrlVerifica) // Añadir para generar cajetin
     .build();

Crear documento firmado sin verificación de firma

Cómo reemplazar el método eliminado: crearDocumento(Documento, Capeta, idDocFirma, DatosConfiguracionPie, InfoCSV, DatosRegistro, boolean)

  • DatosConfiguracionPie: sus atributos son los parámetros para agregar la operación de generar cajetín.
  • InfoCSV: el atributo 'aplicacionCsv' será necesario para crear el documento, el resto son eliminados.
List<Operaciones> operaciones = OperacionesFactory
     .crearListaOperaciones(Documento, Carpeta, aplicacionCsv)
     .addGenerarCajetinCsv(tipoCajetin, urlVerificacionCSV, paginado, qr, csvEnUrlVerifica) // Añadir para generar cajetin
     .build();
© 2014 GOBIERNO DE CANTABRIA - AVISO LEGAL Y PROTECCIÓN DE DATOS