Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 16 Current »

Servicio IissueService


CreateIssue

El método createIssue tiene como finalidad permitir la creación de un envío dentro de bandeja de entrada, su invocación retornará un número que será el identificador del envío creado, que podrá ser utilizado posteriormente para realizar consultas sobre dicho envío. Para integrarse con este método será necesario ponerse en contacto con el equipo de desarrollo de BENT para tipificar el envío según la aplicación y dar de alta a la misma en la configuración desde el módulo administrativo (se detalla esto en el manual de administrador)

 Más información

  • Usuario: sería la persona que realiza la operación, la finalidad es preparar una serie de documentos que remitirá a bandeja de entrada para que sea enviado hasta el destinatario seleccionado.

  • Aplicación externa: es la aplicación que se va integrar con Bandeja de Entrada, se encargará de realizar las operaciones previas necesarias de creación y firma de documentos.

  • Crear documentos en CCSV: los documentos deben quedar almacenados en CCSV junto con sus firmas si estas están creadas.

  • Registro en SRT: el documento de registro es necesario para que el proceso de envío pueda realizarse, la aplicación externa deberá crear y firmar el documento de registro.

  • Bandeja de Entrada: la aplicación que se encarga de generar el envío y remitirlo hasta el destinatario.

El resultado del alta es el identificador único del envío creado.

Signatura

public Long createIssue(ParamCreateIssue paramCreateIssue) throws InternalCoreException

 

Parámetros de entrada:

ParamCreateIssue

Parámetro

Tipo

Obligatorio

Descripción

documentList

List<es.aragon.bent.core.ws.data.Document>

SI

Lista con los documentos del envío, La clase Document extiende BaseData, deben informarse los campos:

  • csv: string

  • applicationId: id de la aplicación integradora

(IMPORTANTE: los documentos que estén en estado borrador no serán añadidos al envío)

csvMaindoc

String

SI

CSV del documento principal, este csv debe estar incluido en el parametro de listado de documentos

description

String

SI

Descripción del envío

insertRegistry

String

NO

Insertar registro en organismos intermedios (valores aceptados: S/N, por defecto N o nulo)

viewDetail

String

NO

Ver detalle en organismo intermedios (valores aceptados: S/N, por defecto N o nulo)

viewTrace

String

NO

Ver traza en organismo intermedios (valores aceptados: S/N, por defecto N o nulo)

senderDni

String

NO

DNI del remitente

senderName

String

NO

Nombre del remitente

senderOrgCode

String

NO

Código del Organismo remitente

receiverDni

String

NO

DNI del receptor

receiverOrgCode

String

SI

Código del Organismo receptor

inmediateSend

Boolean

NO

Realiza el envío si este no requiere registro si la preparación se ha realizado desde Bandeja de Entrada. En otro caso el parámetro es ignorado. (por defecto nulo)

registryInNumber

String

NO

CSV del documento que va a ser justificante de registro. (por defecto nulo)

issuerDni

String

NO

DNI de la persona que realiza la creación del evento de envío

origen

String

SI

Origen del envío (valores aceptados:

0 = ADMINISTRACION

1 = INTERESADO (CIUDADANO)

2 = ADMINISTRACION EXTERNA (Comunicacion)

3 = ADMINISTRACION EXTERNA (Notificacion)

numAsientoRegfia

String

NO

Código del envío en REGFIA (sólo para importaciones de REGFIA, uso interno)

isRegfiaImport

String

NO

Indica si el nuevo envio está importado desde REGFIA (sólo para importaciones de REGFIA, uso interno)

regfiaRegisterType

String

NO

Tipo de registro en REGFIA (sólo para importaciones de REGFIA, uso interno)

*applicationId

String

SI

*(Heredado de BaseData), en el caso de createIssue la aplicación debe estar añadida como aplicación integradora en el admin de BENT. Consultar CAU o al equipo de BENT.

Parámetros de salida

Parametro

Tipo

Descripción

idIssue

Long

Id del envío recién creado en la plataforma de Bandeja de Entrada

Códigos de error

Este método lanza una excepción de tipo InternalCoreException. A continuación se muestra una tabla con los códigos de error que puede contener la excepción lanzada.

Código de error

Descripción

WSVALIDATION_VALIDATEPARAMCREATEISSUE_01

El parámetro de entrada es obligatorio

WSVALIDATION_VALIDATEPARAMCREATEISSUE_03

Los csv de los documentos que van dentro del sobre son obligatorios

WSVALIDATION_VALIDATEPARAMCREATEISSUE_04

El índice del documento principal seleccionado no es válido

WSVALIDATION_VALIDATEPARAMCREATEISSUE_05

El documento principal no es de tipo PDF

WSVALIDATION_VALIDATEPARAMCREATEISSUE_06

El documento principal debe estar firmado

WSVALIDATION_VALIDATEPARAMCREATEISSUE_07

El documento con CSV {0} no es de tipo PDF, todos los documentos de la solicitud deben ser de este formato (aunque se mantiene el codigo no aplica en realidad ya que se elimino esta restricción)

WSVALIDATION_VALIDATEPARAMCREATEISSUE_08

El documento con CSV {0} no está firmado, todos los documentos de la solicitud deben estar firmados

WSVALIDATION_VALIDATEPARAMCREATEISSUE_09

No se pueden enviar documentos que registren al documento principal.

WSVALIDATION_VALIDATEPARAMCREATEISSUE_10

La aplicación integradora no tiene un tipo de aportador válido

WSVALIDATION_VALIDATEPARAMCREATEISSUE_11

La aplicación no está dada de alta en BENT como apliación integradora

WSVALIDATION_VALIDATEPARAMCREATEISSUE_12

No se puede realizar un envío solo con documentos en estado borrador

WSVALIDATION_VALIDATEPARAMCREATEISSUE_13

Error de almacenamiento en uno de los documentos del envio

WSVALIDATION_VALIDATEPARAMCREATEISSUE_14

Se ha señalado como documento principal un documento en estado borrador

CREATEISSUE_VALUE_INCORRECT

Error de validación al crear el envío en los parámetros

CCSVINTEGRATION_GETDOCUMENT

Error en el repositorio documental. Se ha producido un error al recuperar el documento

DOCUMENTDAOIMPL_SAVEDOCUMENT

Se ha producido un error al guardar el documento

CREATEISSUE_INVALID_SENDERDNI

Error de validación al crear el envío, el dni del emisor no es correcto

CREATEISSUE_INVALID_SENDERORGCODE

Error de validación al crear el envío, el código de organismo emisor debe empezar por ORG

CREATEISSUE_INVALID_RECEIVERDNI

Error de validación al crear el envío, el dni del receptor no es correcto

CREATEISSUE_INVALID_RECEIVERORGCODE

Error de validación al crear el envío, el código de organismo receptor debe empezar por ORG

ISSUEDAOIMPL_FINFISSUEBYID

Se ha producido un error al recuperar el envío

ISSUEEVENTDAOIMPL_SAVEISSUEEVENT

Se ha producido un error al guardar el evento del envío

TRACEDAOIMPL_SAVETRACE

Se ha producido un error al guardar la traza

Ejemplo de invocación

La petición createIssue de BENT tiene varias casuísticas diferenciadas principalmente por el origen del envío a crear. Este parámetro de origen tiene cuatro valores posibles y según el valor que corresponda se parametrizarán también los valores del emisor (senderDni, senderName y senderOrgCode).

Esto no afectará a los parámetros del receptor no obstante. La parametrización del receptor tiene como parámetro obligatorio el receiverOrgCode (deberá ser un organismo de la DGA con su código formateado correctamente ORGXXXXX). El otro parámetro receiverDni, es opcional y se introducirá únicamente si el envío es dirigido a la bandeja personal de un funcionario en concreto del organismo establecido en el receiverOrgCode. Dicho DNI deberá estar registrado correctamente en SIU, si no se especifica ningún dni el envío será recibido en la bandeja del organismo y se deberá crear un registro de entrada a través de SRT para que el envío pueda ser completado y visible en BENT. En caso de realizar un envío a un organismo que no tenga gestores dados de alta en BENT, la aplicación enviará una notificación a soporte para realizar las acciones pertinentes.

El parámetro issuerDni, no es obligatorio y únicamente informa del usuario que realizó la operación.

La parametrización del sender dependerá del tipo de origen del envío, por lo tanto vamos a mostrar una petición de cada tipo y como se debería parametrizar en cada caso:

  1. Origen Administración

El envío proviene de la propia administración interna y se tipificará el campo origen como 0. En este caso la parametrización del sender será igual que la del receiver. Será obligatorio indicar un senderOrgCode con el formato ORGXXXXX y opcional indicar un senderDni correspondiente a un funcionario del organismo, dependiendo si el emisor fuera una bandeja personal o la del propio organismo.

Ponemos como ejemplo una petición de la aplicación CPPC que realiza este tipo de envíos, el envío sería dirigido desde una bandeja de organismo a la bandeja de personal de un funcionario en concreto, e incluyendo dos documentos :

<arg0>
            <applicationId>APP_CODE</applicationId>
            <csvMaindoc>CSVJ529Y7L77G1W0BENT</csvMaindoc>
            <description>envío origen administración interna</description>
            <documentList>
               <applicationId>APP_CODE</applicationId>
               <csv>CSVJ529Y7L77G1W0BENT</csv>
            </documentList>
            <documentList>
               <applicationId>CPPC</applicationId>
               <csv>CSVGK37WVC2761V0BENT</csv>           
            </documentList>
            <insertRegistry>N</insertRegistry>
            <issuerDni>00000000T</issuerDni>
            <origen>0</origen>
            <receiverDni>00000000T</receiverDni>
            <receiverOrgCode>ORG07464</receiverOrgCode>
            <senderOrgCode>ORG07458</senderOrgCode>
</arg0>

2. Origen Ciudadano

El envío proviene de un ciudadano y se tipificará el campo origen como 1. En este caso en la parametrización del sender se deberá informar un senderDni y un senderName, con los datos del solicitante. El campo senderOrgCode quedará nulo.

Ponemos como ejemplo una petición de la aplicación TTO que realiza envíos de este tipo:

<arg0>
            <applicationId>APP_CODE</applicationId>
            <csvMaindoc>CSVV21UZAF88L1M0BENT</csvMaindoc>
            <description>prueba </description>
            <documentList>
               <applicationId>APP_CODE</applicationId>
               <csv>CSVV21UZAF88L1M0BENT</csv>            
            </documentList>
            <documentList>
               <applicationId>APP_CODE</applicationId>
               <csv>CSV5U2UDSD48F1E0BENT</csv>             
            </documentList>
            <origen>1</origen>
            <receiverOrgCode>ORG06670</receiverOrgCode>
            <senderDni>73133419C</senderDni>
            <senderName>DIEGO PATRICIO GONZALEZ PARAMO</senderName>
</arg0>

3. Administracion Externa

El envío proviene de una administración externa a la dga y el campo origen se puede tipificar con el valor 2 (caso de que el envío sea una comunicación) o 3 (caso de que el envío sea una notificación). En este caso se informará como en el caso anterior el senderDni y el senderName, pero en este caso con el dni del gestor y el nombre del organismo.

Ponemos como ejemplo una petición de la aplicación SETA que realiza envíos de este tipo:

<arg0>
            <applicationId>APP_CODE</applicationId>
            <csvMaindoc>CSVJ529Y7L77G1W0BENT</csvMaindoc>
            <description>prueba </description>
            <documentList>
               <applicationId>APP_CODE</applicationId>
               <csv>CSVJ529Y7L77G1W0BENT</csv>              
            </documentList>
            <!-- 2 Comunicacion - 3 Notificacion -->
            <origen>2</origen>
            <receiverOrgCode>ORG06670</receiverOrgCode>
            <senderDni>00000000T</senderDni>
            <senderName>Organismo Externo</senderName>		  
</arg0>

 

 

AcceptIssue

Este método permite aceptar un envío creando una traza con la fecha de aceptación. Los envios considerados como aceptables son los que tienen como ultimo evento uno de tipo 1 (envio) o 4 (reenvio), cuyo estado es finalizado OK (3) y no contienen documentos editables. Tampoco se permite realizar una aceptación sobre una importación de REGFIA directamente.

En caso de que el envío se encuentre en esta situación, se comprobará también que el receptor último del envío coincida con el indicado en los parametros userNif o userOrganismCode dependiendo de si el receptor es un funcionario o un organismo.

Signatura

public ResultAcceptIssue acceptIssue(ParamAcceptIssue paramAcceptIssue) throws InternalCoreException

Parámetros de entrada

Parámetro

Tipo

Obligatorio

Descripción

paramAcceptIssue

ParamAcceptIssue

SI

Objeto donde están encapsulados los datos relativos al envío que queremos aceptar

Parámetros de salida

Parámetro

Tipo

Descripción

acceptIssue

ResultAcceptIssue

Objeto que contiene un código con el valor que indica cómo terminó el proceso

Ejemplo de invocación

ParamAcceptIssue paramAcceptIssue = new ParamAcceptIssue();
 
paramAcceptIssue.setIssueId(Long.parseLong(issueId));
// indicar unicamente este parametro si el receptor ultimo del envio es personal
paramAcceptIssue.setUserNif(userNif));
// indicar unicamente este parametro si el receptor ultimo del envio es un organismo
paramAcceptIssue.setUserOrganismCode(userOrganismCode);
paramAcceptIssue.setNotes(notes);
 
ResultAcceptIssue result = issueManager.getiIssueService().acceptIssue(paramAcceptIssue);
 
if (BENTCoreConstants.SendResult.ISSUE_ACCEPTED.equals(result.getResult()) {
	log.info("Envio aceptado");
} else if (BENTCoreConstants.SendResult.ISSUE_ESTATE_INVALID.equals(result.getResult()) {
	log.ingo("El envío no se encontraba en estado de poder ser aceptado");
} else if (BENTCoreConstants.SendResult.USER_WITHOUT_PERMISSION.equals(result.getResult()) {
	log.info("El usuario/organismo indicado no era el correspondiente para aceptar el envío");
}


 

ImportRegfiaEntry

Este método permite realizar la importación de un asiento de REGFIA en BENT

Signatura

public ResultImportRegfiaEntry importRegfiaEntry(ParamImportRegfiaEntry paramImportRegfiaEntry)

Parámetros de entrada

Parámetro

Tipo

Obligatorio

Descripción

paramImportRegfiaEntry

ParamImportRegfiaEntry

SI

Objeto donde están encapsulados los datos relativos al asiento a importar

Parámetros de salida

Parámetro

Tipo

Descripción

resultImportRegfiaEntry

ResultImportRegfiaEntry

Objeto que contiene el id de envio generado en BENT, o la informacion del error producido

Ejemplo de invocación

ParamImportRegfiaEntry arg6 = new ParamImportRegfiaEntry();

// parametros obtenidos del asiento de REGFIA
arg6.setApplicationId("BENT");
arg6.setAsunto("Programa emprendedores autónomos");
arg6.setCodOrganismoDestino("ORG06670");
arg6.setCodOrganismoOrigen(null);
arg6.setDsOrganismoOrigen(null);
arg6.setIdentificadorAgente("17756357N");
arg6.setNombreCompletoAgente("Mª Jose Montesa Letosa");
arg6.setNumeroRegistro("E20140015950");
arg6.setTipoAsiento("E");

// el asiento de REGFIA contiene un listado de objetos document de REGFIA, solo se pasa un listado de String con los csvs
List<String> csvList = new ArrayList<String>();
csvList.add("CSVO33FKMM3S6AE01PFI");
arg6.setCsvList(csvList);
 
ResultImportRegfiaEntry result = bentClient.importRegfiaEntry(arg6);
 
if (result.getError()) {
    log.error("Error: " + result.getErrorMsg());
} else {
    log.info("OK: " + result.getIssueId()");
}



 

ParamImportRegfiaEntry

La clase ParamImportRegfiaEntry encapsula los parametros del asiento de REGFIA que son necesario para realizar la importacion en BENT tal y como los devuelve esta aplicacion en el metodo getRegistry.

 Ver detalles

Parámetro

Tipo

Obligatorio

Descripción

asunto

String

SI

Asunto del asiento a importar

codOrganismoDestino

String

SI

codigo del organismo receptor de la importación. Debe ser un codigo valido de SIU

codOrganismoOrigen

String

NO*

codigo del organismo origen de la importación

dsOrganismoOrigen

String

NO*

descripcion del organismo emisor de la importación

numeroRegistro

String

SI

numero de registro del asiento

tipoAsiento

String

SI

Debe ser “E” solo se permiten importar asientos de entrada

identificadorAgente

String

NO*

identificador del primer interesado del asiento

nombreCompletoAgente

String

NO*

nombre completo del primer interesado del asiento

csvList

List<String>

SI

listado de csvs del asiento. BENT comprueba y elimina los documentos en estado borrador. En el caso de que todos sean borradores el envio fallará.

( * ) deben introducirse los datos del organismo origen, o del agente interesado obligatoriamente. En cualquier caso estos parametros se deben rellenar siempre con lo que venga informado en el asiento de REGFIA: organismoOrigen e interesados (el primero del listado).

ResultImportRegfiaEntry

La clase ResultImportRegfiaEntry contiene el resultado de la importación.

 Ver detalles

Parámetro

Tipo

Descripción

errorCode

String

Codigo de error producido

errorMsg

String

Mensaje de error producido

error

boolean

valor booleano que indica si la importacion se ha realizado correctamente o no

issueId

Long

devuelve el id de envio creado en la importación

 

FindIssueTrayAdvanced

Método que devuelve una lista de envíos correspondientes de la bandeja de recibidos con filtros avanzados

Signatura

public ResultTrayListAdvanced findIssueTray(ParamFindTrayAdvanced paramTraySearch) throws InternalCoreException

Parámetros de entrada

Parámetro

Tipo

Obligatorio

Descripción

paramTraySearch

ParamFindTrayAdvanced

SI

Objeto donde están encapsulados los datos para realizar la búsqueda de envíos recibidos

 

Parámetros de salida

Parámetro

Tipo

Descripción

resultTrayList

ResultTrayListAdvanced

Objeto donde se encuentran encapsulados la lista de envíos correspondientes a la bandeja y su tamaño

 

Excepciones

Tipo de excepción

Descripción

InternalCoreException

Error en una operación del núcleo

 

Ejemplo de invocación

ResultTrayListAdvanced resultTrayList = new ResultTrayListAdvanced();
ParamFindTrayAdvanced paramTraySearch = new ParamFindTrayAdvanced();
 
paramTraySearch.setIssueId(Long.parseLong(issueId));
paramTraySearch.setFromIndex(-1);
paramTraySearch.setReceiverDni(user.getNif());
paramTraySearch.setReceiverOrgCode(user.getOrganismCode());
 
resultTrayList = issueManager.getiIssueService().findIssueTrayAdvanced(paramTraySearch);



ParamFindTrayAdvanced

La clase ParamFindTrayAdvanced es la que contiene los parámetros para la obtención de los listados que se muestran en las bandejas que ve el usuario, se la bandeja de usuario o la de organismo, tanto para entrada como para salida, con filtros adicionales.

 Ver detalles

Parámetro

Tipo

Obligatorio

Descripción

senderDni

String

NO

DNI del remitente

senderName

String

NO

Nombre del remitente

receiverDni

String

NO

DNI del destinatario

receiverName

String

NO

Nombre del destinatario

origin

String

NO

Origen de creación del envío

adminFileNumber

String

NO

Número del expediente

issueId

Long

NO

Identificador del envío

status

Long

NO

Estado en el que se encuentra el envío

acceptanceNif

String

NO

NIF de la persona que realiza la aceptación del envío

description

String

NO

Descripción del envío

entryDateFrom

Date

NO

Fecha inicial para el rango de fechas de entrada del envío en el sistema

entryDateTo

Date

NO

Fecha final para el rango de fecha de entrada del envío en el sistema

receptionDateFrom

Date

NO

Fecha inicial para el rango de fechas de recepción del envío

receptionDateTo

Date

NO

Fecha final para el rango de fechas de recepción del envío

viewIfIntermediate

Boolean

NO

Incluir o no en el resultado los envíos en los que el organismo es un organismo intermedio en la ruta de remisión

fromIndex

int

NO

Para consultas paginadas recuperar desde el registro con el número indicado en fromIndex

toIndex

int

NO

Para consultas paginadas recuperar hasta el registro con el número indicado en toIndex

maxResults

int

NO

Para consultas paginadas indica el número máximo de registros a retornar

sortColumn

String

NO

Columna por la cual se van a ordenar los resultados

ascending

Boolean

NO

Ordenación ascendente (true) o descendente (false) de los resultados

userSentNif

String

NO

NIF del usuario que realiza el envío, aplicable sólo para envíos remitidos a otro usuario/organismo

userOrgCode

String

NO

Código del organismo desde el que se realiza el envío, aplicable sólo para envíos remitidos a otro usuario/organismo

acceptedIssue

String

NO

Estado de aceptación de un envío

editableDocs

String

NO

Documentos que hay que editar el código de procedimiento

origen

String

NO

Parámetro que indica el origen del envío

procNum

Long

NO

Codigo de procedimiento

eventCause

Long

NO

Causa del evento del envio

regInNumber

String

NO

Numero de registro de entrada

regOutNumber

String

NO

Numero de registro de salida

regInDateFrom

Date

NO

Fecha de registro de entrada

regOutDateFrom

Date

NO

Fecha de registro de salida

regInCsv

String

NO

Csv del documento de registro de entrada

regOutCsv

String

NO

Csv del documento de registro de salida

 

ResultTrayListAdvanced

La clase ResultTrayListAdvanced contiene el resultado de buscar la lista de trazas de un envío.

 Ver detalles

Parámetro

Tipo

Descripción

list

List<ParamReceivedTrayAdvanced>

Lista que contiene uno o varios objetos ParamReceivedTrayAdvanced

size

int

Número de objetos que contiene la lista

 

ParamReceivedTrayAdvanced

La clase ParamReceivedTrayAdvanced contiene los datos a mostrar en el listado de la bandeja de recibidos.

 Ver detalles

Parámetro

Tipo

Descripción

issueId

Long

Identificador del envío

issueEventId

Long

Identificador del evento de envío

acceptanceNif

String

NIF del usuario que realiza la aceptación del envío

adminFileNumber

String

Número de expediente

entryDate

Date

Fecha de entrada del envío

receptionDate

Date

Fecha de recepción del envío

senderDni

String

DNI del usuario que remite el envío

senderName

String

Nombre del usuario que remite el envío

receiverDni

String

DNI del usuario que se va consultar la bandeja de elementos recibidos

description

String

Descripción del envío

origin

String

Origen del envío, ver códigos en “Tipos de origen de creación del envío”

state

Integer

Estado en el que se encuentra el registro, ver “Valores del campo status”

senderOrgName

String

Nombre del organismo del remitente

sender

String

Nombre del remitente completo

acceptedIssue

String

Estado de aceptación del issue

editableDocs

String

Documentos que hay que editar el código de procedimiento

origen

String

Parámetro que indica el origen del documento

receiverOrgCode

String

Código del organismo del receptor

eventCause

String

Causa del evento del envío

procNum

Long

Codigo de procedimiento del evio

regInNumber

String

numero de registro de entrada

regOutNumber

String

numero de registro de salida

regInDate

Date

fecha de registro de entrada

regOutDate

Date

fecha de registro de salida

regInCsv

String

csv del documento de registro de entrada

regOutCsv

String

csv del documento de registro de salida

 

FindIssueTrayExternal

Método que devuelve una lista de envíos correspondientes de la bandeja de recibidos con filtros avanzados

Signatura

public ResultTrayListExternal findIssueTrayAppExternal(ParamFindTrayExternal paramTraySearch) throws InternalCoreException {

Parámetros de entrada

Parámetro

Tipo

Obligatorio

Descripción

paramTraySearch

ParamFindTrayExternal

SI

Objeto donde están encapsulados los datos para realizar la búsqueda de envíos recibidos

 

Parámetros de salida

Parámetro

Tipo

Descripción

resultTrayList

ResultTrayListExternal

Objeto donde se encuentran encapsulados la lista de envíos correspondientes a la bandeja y su tamaño

 

Excepciones

Tipo de excepción

Descripción

InternalCoreException

Error en una operación del núcleo

 

Ejemplo de invocación

ResultTrayListExternal resultTrayList = new ResultTrayListExternal();
ParamFindTrayExternal paramTraySearch = new ParamFindTrayExternal();

paramTraySearch.setApplicationId("APP_CODE");
// codigo SIU de bandeja consultada (se ha de tener permisos en el admin de BENT)
paramTraySearch.setReceiverOrgCode(orgCode);
// filtro de estados de envios opcional
List<Integer> filterStates = new ArrayList<Integer>();
filterStates.add(BENTCoreConstants.EventType.SEND);
filterStates.add(BENTCoreConstants.EventType.FORWARD);
filterStates.add(BENTCoreConstants.EventType.ACCEPT);
paramTraySearch.setState(filterStates);

// añadir paginacion opcional
paramTraySearch.setFromIndex(1);
paramTraySearch.setToIndex(10);
paramTraySearch.setAscending(false);
 
resultTrayList = issueManager.getiIssueService().findIssueTrayAppExternal(paramTraySearch);

if (resultTrayList.getErrorCode() != null) {
  if (resultTrayList.getErrorCode().equals(ErrorCode.FIND_ISSUE_EXTERNAL_NO_RECEIVER_ORGCODE)) {
    log.error("El parametro receiverOrgCode ha sido pasado nulo o vacio");
  } else if (resultTrayList.getErrorCode().equals(ErrorCode.FIND_ISSUE_EXTERNAL_ORGCODE_NOT_ALLOWED)) {
    log.error("No existen permisos sobre la bandeja consultada para esta aplicación");
  } else if (resultTrayList.getErrorCode().equals(ErrorCode.FIND_ISSUE_EXTERNAL_STATE_INVALID)) {
    log.error("Alguno de los valores indicados en el filtro de estados es incorrecto");
  } else if (resultTrayList.getErrorCode().equals(ErrorCode.FIND_ISSUE_EXTERNAL_PAGIN_PARAMS)) {
    log.error("Los parametros de paginacion no han sido introducidos correctamente");
  }
} else {
  log.info("Consulta realizada con exito. Envios devueltos: " + result.getList().size() + " - total de la consulta: " + result.getSize());
}


ParamFindTrayExternal

La clase ParamFindTrayExternal es la que contiene los parámetros para la obtención de los listados de consulta para aplicaciones externas

 Ver detalles

Parámetro

Tipo

Obligatorio

Descripción

receiverOrgCode

String

SI

codigo de organismo a consultar

state

List<Integer>

NO

filtro de estados de envio

fromIndex

Integer

NO

valor inicial de paginacion (valor minimo 1)

toIndex

Integer

NO

valor final de paginacion

ascending

Boolean

NO

indica la ordenacion ascendente o descendente (por fecha de envio)

 

ResultTrayListExternal

La clase ResultTrayListExternal contiene el resultado de la búsqueda.

 Ver detalles

Parámetro

Tipo

Descripción

list

List<ParamReceivedTrayAdvanced>

Lista que contiene uno o varios objetos ParamReceivedTrayAdvanced

size

int

Número de objetos que contiene la lista

errorCode

String

codigo de error

errorMsg

String

mensaje de error

 

Servicio OrganismManagerService


GetEmailListByOrgCode

Este método del servicio organismManager permite recuperar el listado de los emails de los usuarios dados de alta en BENT en una bandeja de organismo concreta. BENT únicamente almacena los dnis de los usuarios en su base de datos, recuperando el email a través de SIU. Si un usuario implicado en la búsqueda no tuviera un email registrado el servicio simplemente no lo añadirá al listado de resultados.

Signatura

public List<String> getEmailListByOrgCode(ParamOrganismManager paramOrganismManager) throws InternalCoreException

Parámetros de entrada

Parámetro

Tipo

Obligatorio

Descripción

paramOrganismManager

ParamOrganismManager

SI

Objeto donde están encapsulados los datos relativos a la consulta a realizar

Parámetros de salida

Tipo

Descripción

List<String>

Listado de emails

Ejemplo de invocación

ParamOrganismManager paramOrganismManager = new ParamOrganismManager();

// el id de aplicacion se rellena automaticamente si esta configurado el interceptor de autorización de salida, si no se ha de indicar
paramOrganismManager.setApplicationId("SETA");
// indicamos un codigo de organismo
paramOrganismManager.setOrgCode("ORG06670");
 
List<String> result = bentOrganismManagerClient.getEmailListByOrgCode(paramOrganismManager);
 
if (result == null || result.size() == 0) {
  log.info("No se encontraron gestores asociados con el organismo");
} else {
  for (String managerEmail: result) {
    log.info("Encontrado email de gestor: " + managerEmail");
  }
}

 

getOrganismManagerListByOrgCode

Este método del servicio organismManager permite recuperar el listado de gestores asociados en BENT con un código de organismo concreto.

Signatura

public List<ParamOrganismManager> getOrganismManagerListByOrgCode(ParamOrganismManager paramOrganismManager) throws InternalCoreException

Parámetros de entrada

Parámetro

Tipo

Obligatorio

Descripción

paramOrganismManager

ParamOrganismManager

SI

Objeto donde están encapsulados los datos relativos a la consulta a realizar

Parámetros de salida

Tipo

Descripción

List<ParamOrganismManager>

Listado de duplas gestor - organismo

Ejemplo de invocación

ParamOrganismManager paramOrganismManager = new ParamOrganismManager();

// el id de aplicacion se rellena automaticamente si esta configurado el interceptor de autorización de salida, si no se ha de indicar
paramOrganismManager.setApplicationId("AGUAE");
// indicamos un codigo de organismo
paramOrganismManager.setOrgCode("ORG06670");
 
List<ParamOrganismManager> result = bentOrganismManagerClient.getOrganismManagerListByOrgCode(paramOrganismManager);
 
if (result == null || result.size() == 0) {
  log.info("No se encontraron gestores asociados con el organismo");
} else {
  for (ParamOrganismManager manager : result) {
    log.info("Encontrado gestor con dni " + manager.getManagerDni() + " e id de gestor " + manager.getOrganismManagerId() + " en el organismo");
  }
}

 

  • No labels