Solicitud Validacion - ReconoSERID/SDK-ReconoSERID-Android GitHub Wiki
+ Nuevo Solicitud Validación - SDK 3.1.0
** Solicitud Validación Estado**
Método
fun getRequestValidation(
requestValidationIn: RequestValidationIn,
listener: CallbackRequestValidation
)
Estructura de Entrada (RequestValidationIn)
Parámetro JSON | Nombre Kotlin | Tipo | Requerido | Descripción | Valor por Defecto |
---|---|---|---|---|---|
infCandidato/InfCandidato | infCandidato |
String? | No | Información del candidato | "" |
asesor/Asesor | asesor |
String? | No | ID/Nombre del asesor | "" |
celular/Celular | celular |
String? | No | Número de celular | "" |
ciudadanoData/CiudadanoData | ciudadanoData |
CiudadanoData? | No | Datos completos del ciudadano | CiudadanoData() |
clave/Clave | clave |
String? | Sí | Clave de validación | "" |
consultaFuentes/ConsultaFuentes | consultaFuentes |
Boolean? | No | Si consulta fuentes externas | false |
email/Email | email |
String? | No | Correo electrónico | "" |
guidConv/GuidConv | guidConv |
String? | No | GUID del convenio | "" |
numDoc/NumDoc | numDoc |
String? | Sí | Número de documento | "" |
prefCelular/PrefCelular | prefCelular |
String? | No | Prefijo telefónico | "" |
procesoWhatsapp/ProcesoWhatsapp | procesoWhatsapp |
Boolean? | No | Si usa WhatsApp | false |
sede/Sede | sede |
String? | No | Sede/Ubicación | "" |
tipoDoc/TipoDoc | tipoDoc |
String? | Sí | Tipo documento (CC, CE, etc) | "" |
tipoValidacion/TipoValidacion | tipoValidacion |
Int? | Sí | Tipo de validación requerida | 0 |
usuario/Usuario | usuario |
String? | Sí | Usuario solicitante | "" |
tipoProceso/TipoProceso | processType |
Int? | No | Tipo de proceso | 0 |
Callback (CallbackRequestValidation)
interface CallbackRequestValidation {
fun onSuccess(response: **RequestValidationOut**)
fun onError(error: **RespuestaTransaccion**)
}
Respuesta Exitosa (RequestValidationOut)
- validationId: String - ID de la validación generada
- status: Int - Estado de la solicitud
- respuestaTransaccion: RespuestaTransaccion - Metadatos de la operación
Respuesta de Error (RespuestaTransaccion)
- esExitosa: Boolean - false cuando falla
- errorEntransaccion: List - Lista de errores
Ejemplo de Uso
val request = RequestValidationIn(
tipoDoc = "CC",
numDoc = "123456789",
clave = "VAL2023",
tipoValidacion = 1,
usuario = "agent_01",
ciudadanoData = CiudadanoData(
nombres = "Juan",
apellidos = "Pérez"
),
celular = "3001234567",
consultaFuentes = true
)
ServicesOlimpia.getInstance().getRequestValidation(request, object : CallbackRequestValidation {
override fun onSuccess(response: RequestValidationOut) {
// Manejar respuesta exitosa
val validationId = response.validationId
}
override fun onError(error: RespuestaTransaccion) {
error.errorEntransaccion.firstOrNull()?.let {
Log.e("ValidationError", "${it.codigo}: ${it.descripcion}")
}
}
})
Notas Técnicas 1.Campos Obligatorios:
- Mínimo requerido: clave, numDoc, tipoDoc, tipoValidacion, usuario
- Anterior - Solicitud Validación- SDK <3.0.3
** Solicitud Validación **
Método para generar o actualizar una solicitud de validación
#!java
public void onGetRequestValidation(@NotNull RequestValidationIn requestValidationIn, @NotNull CallbackRequestValidation listener)
#!Kotlin
fun onGetRequestValidation(requestValidationIn : RequestValidationIn, listener: CallbackRequestValidation)
Parametros de entrada
Parámetros
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
requestValidationIn | RequestValidationIn | SI | Es una objeto que contiene los datos de la solicitud de la validación |
CallbackRequestValidation | Callback | SI | Retorna un RequestValidationOut y RespuestaTransaccion |
Parámetros RequestValidationIn
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
infCandidato | String | SI | Información de la compañia asociada, debe ir así: "{"company":"companyName"}", |
asesor | String | SI | Nombre del asesor que se entregó con las credenciales del convenio |
celular | String | SI | Es donde llegara el link de validación de acuerdo a la opción seleccionada en tipo de parámetro |
ciudadanoData | Objeto | Opcional | Este Objeto es opcional y se utiliza para actualizar los nombres, apellidos y fechas de los tipos de documento con los que no se cuente con la posibilidad de traer esa data |
clave | String | SI | Clave del asesor que se entregó con las credenciales del convenio |
consultaFuentes | Boolean | SI | Consulta en las fuentes de la BD |
String | SI | Es donde llegara el link de validación de acuerdo a la opción seleccionada en tipo de parámetro | |
guidConv | String | SI | Identificador del convenio |
numDoc | String | SI | Número de documento del ciudadano al que se realiza la validación |
prefCelular | String | SI | Prefijo del país del solicitante (ej: Colombia = 57, España = 34, USA = 1) |
procesoWhatsapp | Boolean | SI | Solicitud que notifica al WhatsApp |
sede | String | SI | Código de sede que se entregó con las credenciales del convenio |
tipoDoc | String | SI | Tipo de documento del ciudadano al que se realiza la validación( CURP – Credencial para votar (INE), PPM - Pasaporte, CC - Cédula de ciudadanía o cédula digital, CE - cédula de extranjería, etc ) |
tipoValidacion | Integer | SI | Notificación al ciudadano (1: Ninguno, 2: Correo, 3: SMS, 4: Ambos) |
usuario | String | SI | Nombre del asesor que se entregó con las credenciales del convenio |
Parámetros CiudadanoData
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
fechaExpDoc | String | SI | Fecha de expedición del documento |
fechaNac | String | SI | Fecha de nacimiento del solicitante |
primerApellido | String | SI | Primer apellido del solicitante |
primerNombre | String | SI | Primer nombre del solicitante |
segundoApellido | String | SI | Segundo apellido del solicitante |
segundoNombre | String | SI | Segundo nombre del solicitante |
#!java
public RequestValidationIn( String infCandidato, //Información de la compañia asociada, debe ir así: "{\"company\":\"companyName\"}"
String asesor
String celular
CiudadanoData ciudadanoData,
String clave,
boolean consultaFuentes,
String email,
String guidConv,
String numDoc,
String prefCelular,
boolean procesoWhatsapp,
String sede,
String tipoDoc,
String tipoValidacion,
String usuario)
#!Kotlin
fun RequestValidationIn( infCandidato : String, //Información de la compañia asociada, debe ir así: "{\"company\":\"companyName\"}"
asesor : String,
celular : String,
ciudadanoData : CiudadanoData,
clave : String,
consultaFuentes : Boolean,
email : String,
guidConv : String,
numDoc : String,
prefCelular : String,
procesoWhatsapp : Boolean,
sede : String,
tipoDoc : String,
tipoValidacion : Int,
usuario : String)
y devuelve:
Parámetro | Tipo | Descripción |
---|---|---|
RequestValidationOut | Object | Objeto que contiene la información de la consulta |
RespuestaTransaccion | Object | Objeto que describe si el servicio fue o no consultado |
Parámetros RequestValidationOut
Parámetro | Tipo | Descripción |
---|---|---|
code | Integer | Código asociado a la consulta del servicio |
codeName | String | Descripción asociada a la consulta del servicio |
data | Object | Objeto que contiene la solicitud del ciudadano |
DataError | Object | Objeto que describe si el servicio fue o no consultado correctamente |
Parámetros Data
Parámetro | Tipo | Descripción |
---|---|---|
esExitosa | Boolean | Identificador que indica si la solicitud fue exitosa o no |
errorEntransaccion | Object | Objeto que contiene la descripción del fallo en el servicio en caso de que la solicitud no sea exitosa |
estadoProceso | Integer | Devuelve 1- si es enrolamiento y 2 – si es validación |
guidCiudadano | String | Devuelve el ciudadano creado |
procesoConvenioGuid | String | Identificador del proceso |
url | String | Ruta de para la validación |
Parámetros ErrorEntransaccion
Parámetro | Tipo | Descripción |
---|---|---|
codigo | String | Código asociado al error presentado |
descripcion | String | Descripción asociada al error presentado |
#!java
public RequestValidationOut( int code, //Código asociado a la consulta del servicio
String codeName, //Descripción asociada a la consulta del servicio
Data data) //Objeto que contiene la solicitud del ciudadano
DataError dataError) //Objeto que describe si el servicio fue o no consultado correctamente
#!Kotlin
fun RequestValidationOut(code: Integer, //Código asociado a la consulta del servicio
codeName: String, //Descripción asociada a la consulta del servicio
data: Data) //Objeto que contiene la solicitud del ciudadano
dataError: DataError) //Objeto que describe si el servicio fue o no consultado correctamente
Ej:
#!java
#!java
RequestValidationIn requestValidationIn = new RequestValidationIn();
requestValidationIn.setInfCandidato("{\"company\":\"companyName\"}"{\"company\":\"companyName\"}"); //Información de la compañia asociada, debe ir así:
requestValidationIn.setAsesor("asesor");
requestValidationIn.setCelular("celular");
requestValidationIn.setCiudadanoData(CiudadanoData()); //Se crea el objeto vacío, ya que es opcional
requestValidationIn.setClave("clave");
requestValidationIn.setConsultaFuentes(true);
requestValidationIn.setEmail("email");
requestValidationIn.setGuidConv("guidConv");
requestValidationIn.setNumDoc("numDoc");
requestValidationIn.setPrefCelular("prefCelular");
requestValidationIn.setProcesoWhatsapp(true);
requestValidationIn.setSede("sede");
requestValidationIn.setTipoDoc("tipoDoc");
requestValidationIn.setTipoValidacion(1);
requestValidationIn.setUsuario("usuario");
ServicesOlimpia.getInstance().getRequestValidation(requestValidationIn, new OlimpiaInterface.CallbackRequestValidation() {
@Override
public void onSuccess(RequestValidationOut requestValidationOut) {
//Implementación
}
@Override
public void onError(RespuestaTransaccion transactionResponse) {
//Implementación
}
});
#!Kotlin
val requestValidationIn = RequestValidationIn()
requestValidationIn.infCandidato("{\"company\":\"companyName\"}"{\"company\":\"companyName\"}") //Información de la compañia asociada, debe ir así:
requestValidationIn.asesor("asesor")
requestValidationIn.celular("celular")
requestValidationIn.ciudadanoData(CiudadanoData()) //Se crea el objeto vacío, ya que es opcional
requestValidationIn.clave("clave")
requestValidationIn.consultaFuentes(true)
requestValidationIn.email("email")
requestValidationIn.guidConv("guidConv")
requestValidationIn.numDoc("numDoc")
requestValidationIn.prefCelular("prefCelular")
requestValidationIn.procesoWhatsapp(true)
requestValidationIn.sede("sede")
requestValidationIn.tipoDoc("tipoDoc")
requestValidationIn.tipoValidacion(1)
requestValidationIn.usuario("usuario")
ServicesOlimpia.getInstance()
.getRequestValidation(requestValidationIn, object : CallbackRequestValidation {
override fun onSuccess(requestValidationOut: RequestValidationOut) {
// Implementación
}
override fun onError(respuestaTransaccion: RespuestaTransaccion) {
// Implementación
}
})