amap-registro

Última modificación por Administrator el 2019/09/27 09:52

AMAPRegistro-1.5.0 2019/09/12

  • Soluciona bug al realizar un registro incorrectamente, la excepción devuelta es la correcta.
  • Incluiye un nuevo campos en el que se indica si está integrado en ebro la unidad de destino.

AMAPRegistro-1.4.1 2019/08/02

  • Utilizar clases de la runtime de java para operaciones http

AMAPRegistro-1.4.0 2019/06/21

  • Alta de método RGNALTE3
  • No soporta la implementación natural

AMAPRegistro-1.3.0 2019/01/31

  • Implementación mock

AMAPRegistro-1.2.3 2019/01/18

  • Actualización de las Excepciones

AMAPRegistro-1.2.2 2019/01/17

  • Actualización de las trazas

AMAPRegistro-1.2.1 2019/01/08

  • Modificación del método 'informarAltaProcedimiento'.
  • Modificación del método 'informarBajaProcedimiento'.

AMAPRegistro-1.2.0 2019/01/07

  • Modificación del método 'setDestinoAsientoEntrada'. Agregado nuevo parámetro 'motivoDevolucion'
  • Nuevo método para alta de procedimientos de EBRO
  • Nuevo método para baja de procedimientos de EBRO

AMAPRegistro-1.1.4 2018/12/11

  • Parametriza respuesta de error del servicio

AMAPRegistro-1.1.3 2018/04/16

  • Añadido el método para incluir 0s a la izquierda hasta el tamaño en las unidades RPT
  • Cambios en la forma de traer y componer el listado de interesados y de representantes.

AMAPRegistro-1.1.1 2018/04/16

  • solucionado bug de TipoDestino en httpclient

AMAPRegistro-1.1.0 2018/02/15

  • Se añade la implementacón httpclient
  • Se añade un nuevo servicio para recuperar las descripciones de una oficina

AMAPRegistro-1.0.3 2016/01/27

  • Se añade un nuevo servicio para recuperar la unidad de registro y unidad administrativa a la que pertenece el usuario informado.

AMAPRegistro-1.0.2 2016/01/22

  • Se añade un nuevo servicio para tramitar asientos de entrada en la unidad de destino.

AMAPRegistro-1.0.1 2015/04/28

  • Se actualizan los parámetros de registro de entrada y salida.

AMAPRegistro-0.0.4-SNAPSHOT 2012/02/28

  • Se soluciona bug en hora de presentación. Se ha de almacenar en formato 24 horas.

AMAPRegistro-0.0.3-SNAPSHOT 2012/02/17

  • Se crea un nuevo objeto en el modelo llamado Destino. Se añade como atributo al objeto RegistroSalida y para sustituir a idDestino y codigoDestino.

AMAPRegistro-0.0.2-SNAPSHOT 2012/01/10

  • Se modifica el componente para que la razón social de procedencia se pueda informar sin la necesidad de incluir caracteres iniciales.

AMAPRegistro-0.0.1-SNAPSHOT 2011/05/24

  • Liberación de la primera versión.
<dependency>
<groupId>es.gobcantabria.amap.integracion</groupId>
<artifactId>amap-registro</artifactId>
<version>1.5.0</version>
</dependency>

Es necesario de disponer de los datos:

  • Usuario del Proxy de Servicios

Se suministran los iconos necesarios en la aplicación:

  • Usuario del Proxy de Servicios
  • Usuario de Alfresco.

Configuración

Configuración de la factoría de servicios

Para la utilización del componente AMAPRegistro basta con añadir el jar y sus correspondientes dependencias al classpath de la aplicación y crear un servicio del siguiente modo:

Usuario usuario = new Usuario(null, null, null, usuarioProxyWS);
ServicioRegistro miservicio = ServicioRegistro.getServicio(usuario, urlServicio, implementacion);

El servicio concreto a usar se definirá a partir de un fichero de properties junto con el resto de los parámetros:

KeyDescripciónEjemplo
sistemas.app.proxy.idaplicacionUsuario del Proxy de servicios corporativo. De no informar de este usuario no se realizará la autorización (Basic Authorization)sidgdit
sistemas.global.amap.proxyws.endpoint.url*Endpoint del servicio webhttp://******/proxyws/tunneling
sistemas.app.amap.registro.implementacionImplementación del Registro.  natural o httpclient (Ver notas de actualización)httpclient

Los valores de las propieades aquí mostrados son meramente ilustrativos. En los entornos de desarrollo / preproducción y producción los valores de las variables han de ser externalizados tal y como se especifica en el documento Definición de acceso a propiedades de sistema

*La propiedad de acceso al endpoint del servicio ha sido modificada. Se recomienda utilizar la propiedad sistemas.global.amap.proxyws.endpoint.url en sustitución de la propiedad sistemas.global.amap.registro.url

Ejemplo de contenido del fichero de propiedades:

sistemas.app.amap.registro.usuario=RAPRUEBA
#Necesario en caso de entrar por ProxyWS
sistemas.app.proxy.idaplicacion=usuario
sistemas.global.amap.proxyws.endpoint.url=http://******/proxyws/tunneling
sistemas.app.amap.registro.implementacion=httpclient

Notas de actualización

Si se actualiza el componente desde la versión anterior, es necesario actualizar las librerias con aquellas de natural o de httpclient (recomendado).

Las librerías requeridas serían las siguientes:

Para httpclient:

<dependency>
 <groupId>org.apache.httpcomponents</groupId>
 <artifactId>httpclient</artifactId>
</dependency>

Para axis2:

<dependency> 
 <groupId>org.apache.axis2</groupId>
 <artifactId>axis2</artifactId>
</dependency>

<dependency>
 <groupId>org.apache.axis2</groupId>
 <artifactId>axis2-transport-local</artifactId>
</dependency>

<dependency>
 <groupId>org.apache.axis2</groupId>
 <artifactId>axis2-transport-http</artifactId>
</dependency>  

UML Registro

Nombreamap-registro
Identificadoramap-registro
Grupoes.gobcantabria.amap.integracion
Versión1.5.0
Licencia
DesarrolladorGobierno de Cantabria
Descripción

Componente de integración con Registro.

Documentaciónamap-registro (JavaDoc)
Binarioamap-registro (Jar)
Dependenciasamap-registro (Librerías)

Sin particularidades. Seguir las recomendaciones del fabricante.

Failed to execute the [velocity] macro. Cause: [null]. Click on this message for details.

Ejemplos de uso

Formato del número de registo

NNNNAAAAAANNNNNN
-Año de registro(N4)
-Unidad de registro(A5)
-Tipo de registro(A1)
-Numero de documento(N6)

Consultar usuarios activos para registro electrónico

 

Para obtener todos los usuarios activos para registro electrónico se emplea el método getUsuariosActivos del servicio. 

List<String> usuarios = miservicio.getUsuariosActivos();
System.out.println("Usuarios: " + usuarios);

Devuelve un ArrayList con los códigos de todos los usuarios activos.

Usuarios: [RRM0533, APK0888, AGI7587, TMM1280, ...]

Registrar

Registrar de entrada

Un asiento de entrada esta representado por el objeto RegistroEntradaV2. Para registrar una entrada se ha de invocar al método registra del servicio pasando la instancia del asiento como parámetro. El siguiente snippet crea un registro de entrada.

RegistroEntradaV2 registroEntrada = new RegistroEntradaV2();

registroEntrada.setUsuario("RAPRUEBA");
registroEntrada.setAnualidad("2015");
registroEntrada.setRegistroOrigen("PR001");
registroEntrada.setUnidadOrigen(new UnidadOrigen("02120001000000"));
registroEntrada.setAsunto("PRUEBAS CLIENTE INTEGRACION Registro");
registroEntrada.setTipoDocumento(new TipoDocumento("SOLIC"));

Procedencia procedencia = new Procedencia();
procedencia.setTipo(new TipoProcedencia("PERSO"));
procedencia.setNombre("FRANCISCO");
procedencia.setApellido1("FERNANDEZ");
procedencia.setApellido2("GONZALEZ");
  
registroEntrada.setProcedencia(procedencia);
registroEntrada.setPais(101);
registroEntrada.setNif("72727272X");
registroEntrada.setRegistroDestino(new RegistroDestino("PR001"));
registroEntrada.setUnidadDestino(new UnidadDestino("02120001000000"));
registroEntrada.setDestinoExterno("");

String documComple = "Documentacion complementaria 1                              Documentacion complementaria 2                              ";
registroEntrada.setDocumComplementaria(documComple);
String observacion = "Observación 1                                               Observación 2                                               ";
registroEntrada.setObservaciones(observacion);
registroEntrada.setVersion2(true);

RegistroEntradaV2 regen = (RegistroEntradaV2)miservicio.registra(registroEntrada);
System.out.println("Nº de registro de entrada: " + regen.getCodigoRegistro());

El resultado de la ejecución del código sería un String similar a este:

Nº de registro de entrada: 2015PR001E000146

Registrar de entrada V3

Un asiento de entrada esta representado por el objeto RegistroEntradaV3. Para registrar una entrada se ha de invocar al método registra del servicio pasando la instancia del asiento como parámetro. El siguiente snippet crea un registro de entrada.

RegistroEntradaV3 registroEntradaV3 = new RegistroEntradaV3();
        
//OBLIGATORIOS
registroEntradaV3.setUsuario("RAPRUEBA");
registroEntradaV3.setAnualidad(anualidad);
registroEntradaV3.setRegistroOrigen("PR001");
registroEntradaV3.setUnidadOrigen(new UnidadOrigen("02120001000000"));
registroEntradaV3.setAsunto("Asunto de Prueba");
registroEntradaV3.setTipoDocumento(new TipoDocumento("SOLIC"));     
registroEntradaV3.setRegistroDestino(new RegistroDestino("PR001"));
registroEntradaV3.setUnidadDestino(new UnidadDestino("02120001000000"));
registroEntradaV3.setIndDocFisica("S");
//FIN OBLIGATORIOS

Procedencia procedencia = new Procedencia();
procedencia.setTipo(new TipoProcedencia("PERSO"));
procedencia.setApellido1("GARCIA");
procedencia.setApellido2("PEREZ");
procedencia.setNombre("MANUEL");
List<Procedencia> listaProcedencias = new ArrayList<Procedencia>();
listaProcedencias.add(procedencia);
registroEntradaV3.setDestinoExterno("");
List<String> listaDocumentacion = new ArrayList<String>();
listaDocumentacion.add("Documentacion complementaria 1");
listaDocumentacion.add("Documentacion complementaria 2");
listaDocumentacion.add("Documentacion complementaria 3");
registroEntradaV3.setDocumComplementaria(listaDocumentacion);
List<String> listaObservacion = new ArrayList<String>();
listaObservacion.add("Observación 1 ");
listaObservacion.add("Observación 1 ");
listaObservacion.add("Observación 1 ");
registroEntradaV3.setObservaciones(listaObservacion);
        
//Interesado
List<Interviniente> intervinientes = new ArrayList<Interviniente>();
Interviniente interesado = new Interviniente();
interesado.setNombre("MANUEL");
interesado.setApellido1("PEREZ");
interesado.setApellido2("LAIN");
interesado.setRazonSocial("");
interesado.setTipoIdentificador("N");
interesado.setIdentificador("72236548K");
interesado.setTipoProcedencia("PERSO");
interesado.setPais("724");
interesado.setCodPostal("39770");
interesado.setCanalNotif("1");
interesado.setProvincia("39");
interesado.setMunicipio("358");
interesado.setDireccion("Laredo");
interesado.setCorreo("psilvinol@axpecantabria.com");
interesado.setTelefono("942679895");
interesado.setDirElectronica("psilvinol@axpecantabria.com");
interesado.setObservacionesInteresado("Observaciones");
   
//Representate del interesado
Representante representante = new Representante();
representante.setNombre("MANUELA");
representante.setApellido1("PEREZ");
representante.setApellido2("LAIN");
representante.setRazonSocial("");
representante.setTipoIdentificador("N");
representante.setIdentificador("72236549K");
representante.setTipoProcedencia("PERSO");
representante.setTipoProcedencia("PERSO");
representante.setPais("724");
representante.setCodPostal("39770");
representante.setCanalNotif("1");
representante.setProvincia("39");
representante.setMunicipio("358");
representante.setDireccion("Laredo");
representante.setCorreo("psilvinol@axpecantabria.com");
representante.setTelefono("942679895");
representante.setDirElectronica("psilvinol@axpecantabria.com");
        
interesado.setRepresentante(representante);
        
//Interesado Sin Representante
Interviniente interesadoSinRepresentante = new Interviniente();
interesadoSinRepresentante.setNombre("MANUELA");
interesadoSinRepresentante.setApellido1("PEREZ");
interesadoSinRepresentante.setApellido2("LAIN");
interesadoSinRepresentante.setRazonSocial("");
interesadoSinRepresentante.setTipoIdentificador("N");
interesadoSinRepresentante.setIdentificador("72236549K");
interesadoSinRepresentante.setTipoProcedencia("PERSO");
interesadoSinRepresentante.setPais("724");
interesadoSinRepresentante.setCodPostal("39770");
interesadoSinRepresentante.setCanalNotif("1");
interesadoSinRepresentante.setProvincia("39");
interesadoSinRepresentante.setMunicipio("358");
interesadoSinRepresentante.setDireccion("Laredo");
interesadoSinRepresentante.setCorreo("psilvinol@axpecantabria.com");
interesadoSinRepresentante.setTelefono("942679895");
interesadoSinRepresentante.setDirElectronica("psilvinol@axpecantabria.com");
interesadoSinRepresentante.setObservacionesInteresado("Observaciones");

intervinientes.add(interesado);
intervinientes.add(interesadoSinRepresentante);
registroEntradaV3.setInteresados(intervinientes);

AnexoV3 anexo = new AnexoV3();
anexo.setNombreRuta("/ruta/prueba");
anexo.setNombreFichero("ficheroPrueba.pdf");
anexo.setValidez("01");
anexo.setObservaciones("Observaciones");
anexo.setUidNoEni("1345");
anexo.setTipoAnexo("DC");
anexo.setTamano(20);        
anexos.add(anexo);
registroEntradaV3.setAnexos(anexos);
         
RegistroEntradaV3 registroEntradaRetornoV3=null;

registroEntradaRetornoV3 = (RegistroEntradaV3) miServicio.registra(registroEntradaV3);
log.info("Codigo Registro "+registroEntradaRetornoV3.getCodigoRegistro());

El resultado de la ejecución del código sería un String similar a este:

Nº de registro de entrada: 2015PR001E000146

Registrar de salida

Un asiento de salida esta representado por el objeto RegistroSalidaV2. Para registrar de entrada se ha de invocar al método registra del servicio pasando la instancia del asiento como parámetro. El siguiente snippet crea un registro de salida con destino interno.

RegistroSalidaV2 registroSalida = new RegistroSalidaV2();
registroSalida.setUsuario("RAPRUEBA");
registroSalida.setAnualidad("2015");
registroSalida.setRegistroOrigen("PR001");
registroSalida.setAsunto("Pruebas de cliente de integracion Registro");
registroSalida.setTipoDocumento(new TipoDocumento("NOTIF"));
registroSalida.setUnidadOrigen(new UnidadOrigen("02120001000000"));
registroSalida.setRegistroDestino(new RegistroDestino("GC001"));
registroSalida.setUnidadDestino(new UnidadDestino("02040000000000"));
String documComple = "Documentacion complementaria 1                              Documentacion complementaria 2                              ";
registroSalida.setDocumComplementaria(documComple);
String observacion = "Observación 1                                               Observación 2                                               ";
registroSalida.setObservaciones(observacion);
registroSalida.setVersion2(true);

RegistroSalidaV2 registroSalida = (RegistroSalidaV2)miservicio.registra(registroSalida);
System.out.println(registroSalida.getCodigoRegistro());

El resultado de la ejecución del código es un String con el número de registro.

2015PR001S000191

En caso de que el destino sea externo habrá que indicar uno. También se tendrá que indicar el NIF/NIE/CIF del destinatario y el país.
Si no se informan estos últimos datos, el componente se registra correctamente, pero la oficina de registro indicará que el registro no es válido. 

Destino destinoExterno = new Destino();
destinoExterno.setRazonSocial("Empresa de prueba");
destinoExterno.setTipo(new TipoDestino("PJURI"));
registroSalida.setDestinoExterno(destinoExterno);

registroSalida.setPais(PAIS_DEFECTO);
registroSalida.setNif(nifNieCifDestinoExterno);

Y en este caso, las propiedades RegistroDestino y la UnidadDestino se deberían informar de la siguiente manera:

registroSalida.setRegistroDestino(new RegistroDestino(""));
registroSalida.setUnidadDestino(new UnidadDestino("0"));

Consultar Registros

Consultar de entrada

Se puede consultar asientos de entrada por número de registro y para un determinado usuario. Para consultar el registro cuyo número es "2010GC001E003104" con el usuario "RAPRUEBA", el código a ejecutar sería el siguiente.

Registro registroEntrada = miservicio.getRegistro("2010GC001E003104", "RAPRUEBA");

El sistema nos devuelve en este caso una instancia del objeto Registro con todos los datos del mismo. El método toString del Registro sería el siguiente:

RegistroEntrada [horaPresentacion=Thu Jan 01 06:00:32 CET 1970, tipoProcedencia=TipoProcedencia [codigo=PERSO, descripcion=PERSONA FISICA],
 destinoExterno=, idExterno=, fechaEntradaUnidad=Wed Mar 30 00:00:00 CEST 2011, origenEntrada=M, isSalida()=false, isEntrada()=true,
 getUsuario()=RAPRUEBA, getAnualidad()=, getUnidadRegistro()=, getFechaPresentacion()=Wed Mar 30 00:00:00 CEST 2011,
 getFechaDocumento()=Wed Mar 30 00:00:00 CEST 2011, getAsunto()=PRUEBAS CLIENTE INTEGRACION REGISTRO,
 getTipoDocumento()=TipoDocumento [codigo=SOLIC, descripcion=SOLICITUD], getNif()=0072727272X,
 getUnidadDestino()=UnidadRegistro [codigo=2040003000000, descripcion=(OFI.)DE ATENCION A LA CIUDADANIA],
 getFechaAltaRegistro()=Wed Mar 30 00:00:00 CEST 2011, getHoraAltaRegistro()=Thu Jan 01 18:00:34 CET 1970,
 getUsuarioAnulacion()=UsuarioRegistro [codigo=PRUEBA4, nombre=, nif=null, apellido1=null, apellido2=null, perfilSolicita=null,
 unidadesRegistro=[], unidadesAdministrativas=[], email=null], getFechaAnulacion()=Fri Apr 01 00:00:00 CEST 2011,
 getMotivoAnulacion()=PRUEBA DE ANULACIóN., getUsuarioModificacion()=UsuarioRegistro [codigo=PRUEBA4, nombre=, nif=null, apellido1=null,
 apellido2=null, perfilSolicita=null, unidadesRegistro=[], unidadesAdministrativas=[], email=null],
 getFechaModificacion()=Fri Apr 01 00:00:00 CEST 2011, getUsuarioCreacion()=UsuarioRegistro [codigo=RAPRUEBA,
 nombre=USUARIO PRUEBAS REGISTRO-AUTOMATICO, nif=null, apellido1=null, apellido2=null, perfilSolicita=null, unidadesRegistro=[],
 unidadesAdministrativas=[], email=null], getFechaCreacion()=Wed Mar 30 00:00:00 CEST 2011, getNacionalidad()=108,
 getSituacion()=UnidadRegistro [codigo=ZNULO, descripcion=Anulado], getCodigoEmpresa()=GCA,
 getUnidadOrigen()=UnidadRegistro [codigo=2040003000000, descripcion=(OFI.)DE ATENCION A LA CIUDADANIA],
 getRegistroDestino()=UnidadRegistro [codigo=GC001, descripcion=GOBIERNO DE CANTABRIA. REGISTRO GENERAL],
 getIdProcedencia()=FERNANDEZ GONZALEZ FRANCISCO]

Consultar de salida

Se puede consultar asientos de salida por número de registro y para un determinado usuario. Para consultar el registro cuyo número es "2011GC001S001348" con el usuario "RAPRUEBA", el código a ejecutar sería el siguiente.

Registro registroSalida = miservicio.getRegistro("2011GC001S001348", "RAPRUEBA");

El sistema nos devuelve en este caso una instancia del objeto Registro con todos los datos del mismo. El método toString del Registro sería el siguiente:

RegistroSalida [codigoDestino=, idDestino=, isSalida()=true, isEntrada()=false, getUsuario()=RAPRUEBA, getAnualidad()=, getUnidadRegistro()=,
 getFechaPresentacion()=Thu Mar 31 00:00:00 CEST 2011, getFechaDocumento()=Thu Mar 31 00:00:00 CEST 2011,
 getAsunto()=PRUEBAS DE CLIENTE DE INTEGRACION REGISTRO, getTipoDocumento()=TipoDocumento [codigo=NOTIF, descripcion=NOTIFICACIONES],
 getNif()=0000000000, getUnidadDestino()=UnidadRegistro [codigo=2040000000000, descripcion=(DIGE.)DE SERVICIOS Y ATENCION A LA CIUDADANIA],
 getFechaAltaRegistro()=Thu Mar 31 00:00:00 CEST 2011, getHoraAltaRegistro()=Thu Jan 01 09:13:25 CET 1970,
 getUsuarioAnulacion()=UsuarioRegistro [codigo=, nombre=, nif=null, apellido1=null, apellido2=null, perfilSolicita=null, unidadesRegistro=[],
 unidadesAdministrativas=[], email=null], getFechaAnulacion()=null, getMotivoAnulacion()=, getUsuarioModificacion()=UsuarioRegistro [codigo=,
 nombre=, nif=null, apellido1=null, apellido2=null, perfilSolicita=null, unidadesRegistro=[], unidadesAdministrativas=[], email=null],
 getFechaModificacion()=null, getUsuarioCreacion()=UsuarioRegistro [codigo=RAPRUEBA, nombre=USUARIO PRUEBAS REGISTRO-AUTOMATICO, nif=null,
 apellido1=null, apellido2=null, perfilSolicita=null, unidadesRegistro=[], unidadesAdministrativas=[], email=null],
 getFechaCreacion()=Thu Mar 31 00:00:00 CEST 2011, getNacionalidad()=108, getSituacion()=UnidadRegistro [codigo=CRADO, descripcion=Creado],
 getCodigoEmpresa()=GCA, getUnidadOrigen()=UnidadRegistro [codigo=2040003000000, descripcion=(OFI.)DE ATENCION A LA CIUDADANIA],
 getRegistroDestino()=UnidadRegistro [codigo=GC001, descripcion=GOBIERNO DE CANTABRIA. REGISTRO GENERAL], getIdProcedencia()=]

Consultar unidad administrativa

El siguiente snippet muestra como obtener una unidad administrativa a partir de su código.

UnidadAdministrativa unidadAdministrativa = miservicio.getUnidadAdministrativa("2040003000000");
System.out.println("La descripción de la unidad administrativa 2040003000000 es: " + unidadAdministrativa.getDescripcion());

El resultado de su ejecución es el siguiente:

La descripción de la unidad administrativa 2040003000000 es: GOBIERNO DE CANTABRIA. REGISTRO GENERAL (OFI.)DE ATENCION A LA CIUDADANIA

Consultar unidades administrativas por unidad de registro

También es posible consultar unidades administrativas por código de unidad de registro. El siguiente fragmento de código devuelve todos los objetos UnidadeAdministrativa cuya unidad de registro es "GC001".

List<UnidadAdministrativa> listaUnidades = miservicio.getListasUnidadesAdministrativas("GC001")
System.out.println(listaUnidades);

La línea de comandos devolverá lo siguiente:

[UnidadAdministrativa [codigo=2000000000000, descripcion=(CONS.)DE PRESIDENCIA Y JUSTICIA, getCodigo()=2000000000000,
getDescripcion()=(CONS.)DE PRESIDENCIA Y JUSTICIA], UnidadAdministrativa [codigo=2000003000000,
descripcion=(GABI.)DEL PRESIDENTE, getCodigo()=2000003000000, getDescripcion()=(GABI.)DEL PRESIDENTE],...]

Consultar usuarios por unidad de registro

El método getListasUsuarios del servicio de registro devueve todos los usuarios correspondientes a un código de registro dado. Así pues, si se desea obtener el listado de usuarios cuya unidad de registro sea "GC001" se deberá ejecutar el siguiente código:

List<UsuarioRegistro> listaUsuarios = miservicio.getListasUsuarios("GC001"));
System.out.println(listaUsuarios);

Su ejecución devolverá una lista de todos los usuarios que cumplen la condición:

[UsuarioRegistro [codigo=XXD2840, nombre=GOMEZ LOPEZ CONCEPCION, nif=null, apellido1=null, apellido2=null, perfilSolicita=null,
unidadesRegistro=[], unidadesAdministrativas=[], email=null], UsuarioRegistro [codigo=FDF4883, nombre=FERNANDEZ GOMEZ PEDRO,
nif=null, apellido1=null, apellido2=null, perfilSolicita=null, unidadesRegistro=[], unidadesAdministrativas=[], email=null],
UsuarioRegistro [codigo=GOA6479, nombre=GARCIA LOPEZ,AMELIA Mª, nif=null, apellido1=null, apellido2=null, perfilSolicita=null,
unidadesRegistro=[], unidadesAdministrativas=[], email=null...]]

Consultar unidad de registro por código

A partir de su código es posible obtener un objeto UnidadRegistro. Una vez obtenido el objeto es posible obtener su descripción.

UnidadRegistro unidad =  miservicio.getUnidadRegistro("2040003000000");
System.out.println("La unidad de registro es: " + unidad.getCodigo() + " (" + unidad.getDescripcion() + ")");

Para el ejemplo la descripción de la unidad de registro con código "2040003000000" es "REGISTRO GENERAL":

La unidad de registro es: GC001 (REGISTRO GENERAL)

Consultar usuario por código

Se puede consultar un usuario por código. El método getUsuarioRegistro devuelve una instancia del objeto UsuarioRegistro con toda la información existente en el sistema del usuario cuyo código se pasa por parámetro.

UsuarioRegistro usuarioRegistro = miservicio.getUsuarioRegistro("PRUEBA4");
System.out.println("El usuario registro es: " + usuarioRegistro);

Los datos del usuario solicitado son los que se indican a continuación:

El usuario registro es: UsuarioRegistro [codigo=PRUEBA4, nombre=PRUEBA APLICACION, nif=, apellido1=PRUEBAAP, apellido2=, perfilSolicita=1,
unidadesRegistro=[UnidadRegistro [codigo=CU002, descripcion=null]], unidadesAdministrativas=[UnidadAdministrativa [codigo=8050001000000,
descripcion=null, getCodigo()=8050001000000, getDescripcion()=null]], email=]

Anular un registro

Si por ejemplo, el usuario "PRUEBA4" deseara anular el registro "2010GC001E003104" con motivo "Prueba de anulación." y fecha actual, deberia ejecutar el siguiente snippet:

miservicio.anulaRegistro("2010GC001E003104", new Date(), "Prueba de anulación.", "PRUEBA4");

Verificar registro

Es posible determinar si un asiento es válido para una determinada aplicación y usuario dadas unas determinadas opciones. El siguiente snippet devuelve true si los campos Tipo Documento y Unidad Destino con código "2011GC001S001348" son válidos para la aplicación de tipo Java "APP001" y el usuario "RAPRUEBA".

String numeroRegistro = "2011GC001S001348"; //Numero que coincide con el patrón.

String tipoAplicacion = "J"; 
//Indica el tipo de aplicación que llama al subprograma: (J) -> Java, (N) -> Natural/Adabas, (W) -> Web Service, (N) -> Net

String aplicacion = "APP001"; //Nombre de la aplicación

OpcionesValidacion opciones = new OpcionesValidacion(); //Los campos se validaran en funcion del parametro que reciban (con true se validaran).
opciones.setIdDestinoValido(true);
opciones.setDestinoExternoValido(false);
opciones.setFechaEntradaUnidadValido(true);
opciones.setIdProcedenciaValido(false);
opciones.setNifValido(false);
opciones.setRegistroDestinoValido(true);
opciones.setSituacionAsientoValido(false);
opciones.setTipoDocumentoValido(true);
opciones.setTipoProcedenciaValido(true);
opciones.setUnidadDestinoValido(false);
opciones.setUsuarioCreadorValido(true);

String codigoUsuario = "RAPRUEBA"; 
//Podra ser: un usuario físico (XXX9999 ó XXX99999), un usuario de registro automático (RAXXX999) o un usuario de registro telemático (RTXXX999)

System.out.println(miservicio.isAsientoValido(numeroRegistro, tipoAplicacion, aplicacion, opciones, codigoUsuario));

Tramitar asiento

El siguiente snippet muestra como incorporar un asiento de entrada en la unidad de destino. En concreto, se trataría de un asiento para el usuario "A2907001", campo obligatorio en caso de tratarse de un proceso de tramitación manual. Cuyo número de asiento de entrada de REC fuera, "2015GCELCE005083", indicando que se trata de un proceso manual por lo que se pasará como tercer parámetro el valor booleano "false". 

miServicio.tramita("A2907001", "2015GCELCE005083", false);

Recuperar unidad de registro y administrativa por usuario

El siguiente snippet muestra como recuperar la unidad de registro y unidad administrativa a la que pertenece el usuario informado. En concreto, se trataría de obtener la unidad de registro y administrativa para el usuario "A2907001". 

String codigoUsuario = "A2907001";
UnidadUsuario unidadUsuario = miServicio.getUnidadesUsuario(codigoUsuario);
System.out.println("Unidad Registro "+unidadUsuario.getUnidadRegistro().getCodigo()+"("+unidadUsuario.getUnidadRegistro().getDescripcion()+" )");
System.out.println("Unidad Administrativa "+unidadUsuario.getUnidadAdministrativa().getCodigo()+
 "("+unidadUsuario.getUnidadAdministrativa().getDescripcion()+" )");

Recuperar la descripcion de una oficina  (Sólo por httpClient)

El siguiente snippet muestra como recuperar las descripciones de una oficina. 

String codigoOficina = "XXXX";
Oficina oficina = miServicio.getOficina(codigoOficina);
System.out.println("Descripcion corta de la oficina "+codigoOficina + " : " + oficina.getDescripcionCorta());
System.out.println ("Descripcion media de la oficina "+codigoOficina + " : " + oficina.getDescripcionMedia());
System.out.println ("Descripcion larga de la oficina "+codigoOficina + " : " + oficina.getDescripcionLarga());
  

Recuperar los datos de un asiento (Sólo por httpClient)

El siguiente snippet muestra como recupera los datos de un asiento, junto a sus posibles intervinientes y anexos. 

String numeroRegistro = "2017OP001E000003";
String usuario = "A2907001";
Boolean[] opciones = null;
  
opciones = new Boolean[SIZEOPCIONESREGISTROENTRADAV3];
opciones[0] = true;
opciones[1] = true;
opciones[2] = true;
opciones[3] = true;
opciones[4] = true;
opciones[5] = true;
opciones[6] = false;
opciones[7] = true;
opciones[8] = true;
RegistroEntradaDetalle registroEntrada = miServicio.getRegistroDetalle(numeroRegistro, opciones, usuario);
System.out.println("Descripcion del asiento con número de registro "+numeroRegistro + 
" : " + registroEntrada.getSituacionAsiento().getDescripcion());
System.out.println ("Código del asiento con número de registro "+numeroRegistro + 
" : " + registroEntrada.getSituacionAsiento().getCodigo());
  

Buscar asientos de entrada (Sólo por httpClient)

El siguiente snippet muestra como realiza la búsqueda de asientos de entrada mediante una serie de campos por los que se filtran. 

String usuario = "RIEXPDTE";
Integer numeroAsientos = 500;
Integer codigoProcedimiento = 5;
Date fechaAltaRegistroD = AxisClientUtils.convierteStringADate("11/04/2013");
Date fechaAltaRegistroH = AxisClientUtils.convierteStringADate("10/05/2014");
List<Integer> situacionExpediente = null;
String numeroRegistroD = null;
String numeroRegistroH = null;
String tipoInteresado = "I";
String apellido1 = "MARTINEZ";
String apellido1 = null;
String apellido2 = null;
String nombre = null;
String razonSocial = null;
Asientos asientos = miServicio.findRegistroEntrada(usuario, numeroAsientos, codigoProcedimiento, 
fechaAltaRegistroD, fechaAltaRegistroH, situacionExpediente, numeroRegistroD, numeroRegistroH, 
tipoInteresado, identificadorIntRep, apellido1, apellido2, nombre, razonSocial);
System.out.println("Número de expediente del asiento "+ asientos.getDatoRegistroAsiento().get(index).getNumeroAsiento() + 
" : " + asientos.getDatoRegistroAsiento().get(index).getNumeroExpediente());
  

Obtener estadísticas por procedimiento, año y situación (Sólo por httpClient)

El siguiente snippet muestra como obtener estadísticas por procedimiento, año y situación. 

String usuario = "A2907222";
Long codigoProcedimiento = null;
int anio = 0;
List<DatosEstadisticaFiltro> datosEstadisticasFiltroList = new LinkedList();
DatosEstadisticaFiltro datosEstadisticaFiltro = new DatosEstadisticaFiltro(anio, codigoProcedimiento);
Estadisticas estadisticas = miServicio.getEstadisticas(usuario, datosEstadisticasFiltroList);
System.out.println("Código de procedimiento" + ": " + estadisticas.getDatos().get(index).getCodigoProcedimiento());
System.out.println("Situación expediente" + " : " + estadisticas.getDatos().get(index).getSituacionExpediente());
  

Modificar procedimiento (Sólo por httpClient)

El siguiente snippet muestra como modificar un procedimiento. 

String usuario = "RIEXPDT3";
String numeroRegistro = "2017PR001E000009";
Integer codigoProcedimiento = 860;
String usuarioExpediente = "D5772768";
Date fechaExpediente = AxisClientUtils.convierteStringToDate("09/04/2018", "12:00:00");
miServicio.modificaProcedimiento(usuario, numeroRegistro, codigoProcedimiento, usuarioExpediente, fechaExpediente);
   

Modificar o anular expediente (Sólo por httpClient)

El siguiente snippet muestra como modificar o anular un expediente. 

String usuario = "RIEXPDTE";
String numeroRegistro = "2017PR001E000010";
Integer situacionExpediente = 1;
String codigoExpediente = "EXPEDIENTE-1";
String usuarioExpediente = "D5772768";
Date fechaExpediente = AxisClientUtils.convierteStringToDate("09/04/2018", "12:22:50");
miServicio.modificaExpediente(usuario, numeroRegistro, situacionExpediente, codigoExpediente, usuarioExpediente, fechaExpediente);
  

Modificar el destino interno de un asiento  (Sólo por httpClient)

El siguiente snippet muestra como modificar el destino interno de un asiento . 

String numeroAsiento = "2018PR001E000620";
String oficinaDestino = "PR001";
Long unidadDestino = 2000000000000L;
String usuario = "RIEXPDTE";
String usuarioExpediente = "RIEXPDTE";
Date fechaExpediente = AxisClientUtils.convierteStringToDate("19/03/2018", "13:39:15");
String motivoDevolucion = "PRUEBA";
miServicio.setDestinoAsientoEntrada(numeroAsiento, oficinaDestino, unidadDestino, usuario, usuarioExpediente, fechaExpediente, motivoDevolucion);
  

Alta de procedimiento (Sólo por httpClient)

El siguiente método da alta un procedimiento de EBRO  y devuelve el código de unidad de registro si no hay error. 

Integer codProcedimiento= 560;
String unidadEbro= "09080004000000";
String codUnidadRegistro = null;
codUnidadRegistro = miServicio.informarAltaProcedimiento(codProcedimiento, unidadEbro);

Baja de procedimiento (Sólo por httpClient)

El siguiente método da baja un procedimiento de EBRO y devuelve el código de unidad de registro si no hay error. 

Integer codProcedimiento= 560;
String unidadEbro= "09080004000000";
String codUnidadRegistro = null;
codUnidadRegistro = miServicio.informarBajaProcedimiento(codProcedimiento, unidadEbro);
© 2014 GOBIERNO DE CANTABRIA - AVISO LEGAL Y PROTECCIÓN DE DATOS