<?php
namespace App\Controller;
use App\Crud\Controller\crudPlainController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\HttpFoundation\Response;
use App\Entity\Recluta;
use App\Entity\ReclutaProceso;
use App\Entity\NmclDominioLocalizacion;
use App\Enum\CausaNoIdoneoEnum;
class RegistrantesController extends crudPlainController
{
protected $procesoActivo = null;
public function verificaCodigoDactilarAction()
{
$data = $this->request->get('dactilar');
//En $data viene
//$data['cedula']
//$data['captcha']
//$data['codigoDactilar']
//$data['fechaExpedicionCedula']
$data['ok']=true;
$session = $this->session;
$captchaCodigo = trim($data['captcha']);
//validar CAPTCHA
if (false/*strcasecmp($captchaCodigo, $session->get('captcha_codigo')) != 0*/)
{
$data['ok']=false;
$data['msg']='Código de verificación incorrecto';
}
else
{
//BEGIN CONSULTAR SERVICIO WEB REGISTRO CIVIL/
if($this->verificaCodigoDactilar($data)){
$data['ok']=true;
}else{
$data['ok']=false;
$data['msg']=$this->translator->trans('noidoneo.causa.codigoDactilar');
}
}
unset($data['captcha']);
unset($data['codigoDactilar']);
unset($data['fechaExpedicionCedula']);
$data = new Response(json_encode($data));
$data->headers->set('Content-Type', 'application/json');
return $data;
}
protected function verificaCodigoDactilar(&$data)
{
/*** BEGIN CONSULTAR SERVICIO WEB REGISTRO CIVIL ***/
$codigoDactilar=$data['codigoDactilar'];
$identificacion=$data['cedula'];
$this->logger->info("**********codigoDactilar".$codigoDactilar);
$data['ok']=true; //se pudo comunicar con el ws
$data['idoneo']=true; //los datos del código dactilar son correctos
$data['dactilarRegCivil'] = [
'individualDactilar'=>'',
'sexo' => '',
'fechaDefuncion' => '',
'instruccion' => '',
'nacionaidad' => '',
];
// return true; //WILLY Usar esta linea para probar sin usar los servicios
/*** END CONSULTAR SERVICIO WEB REGISTRO CIVIL ***/
//$data['estudios'][]=array('anno'=>2013, 'institucion'=>'Colegio XXX', 'titulo'=>'Ingenieron mecánico');
/*** END CONSULTAR SERVICIO WEB MIN EDUCACION ***/
$ws_dinardap=$this->getParameter('ws_dinardap_v2');
$cliente = new \SoapClient($ws_dinardap,array('login' => 'oPRadrDIMo', 'password' => 'dfj4R%3Qt/'));
$this->logger->info('********* REVISA CODIGO DACTILAR: '.$identificacion);
try
{
//$this->logger->info('********* ingresa: '. $identificacion);
$parametros=array(
'parametros'=>array(
array(
'nombre' => 'codigoPaquete',
'valor' => 1959
),
array(
'nombre' => 'identificacion',
'valor' => $identificacion
)
)
);
$this->logger->info('********* envia: '. json_encode($parametros));
$result = $cliente->__soapCall("consultar", array($parametros));
//$result = $cliente->consultar($parametros);
$this->logger->info('LAST REQUEST: ' . $cliente->__getLastRequest());
$this->logger->info('LAST RESPONSE: ' . $cliente->__getLastResponse());
$this->logger->info('*********RESULTADO: '.json_encode($result));
if($result->paquete && $result->paquete->entidades->entidad)
{
$filas=$result->paquete->entidades->entidad->filas;
foreach ($filas as $fila) {
foreach ($fila->columnas as $columna) {
foreach ($columna as $item){
switch ($item->campo){
case 'individualDactilar':
$data['dactilarRegCivil']['individualDactilar'] = $item->valor;
//$codigoRegCvil= $item->valor;
break;
case 'sexo':
if ($item->valor == 'HOMBRE')
{
$data['dactilarRegCivil']['sexo'] = 'Masculino';
$data['sexo']='Masculino';
}
else
if ($item->valor == 'MUJER')
{
$data['dactilarRegCivil']['sexo'] = 'Femenino';
$data['sexo']='Femenino';
}
else
{
$data['dactilarRegCivil']['sexo'] = 'Otro';
}
// $sexoRegCivil= $item->valor;
break;
case 'fechaDefuncion':
$data['dactilarRegCivil']['fechaDefuncion'] = $item->valor;
break;
case 'instruccion':
$data['dactilarRegCivil']['instruccion'] = $item->valor;
break;
case 'nacionalidad':
$data['dactilarRegCivil']['nacionalidad'] = $item->valor;
break;
}
}
}
}
}
else
{
$data['msg']=$this->translator->trans('noidoneo.causa.network.registrocivil');
$data['ok']=false;
}
}catch (\SoapFault $e)
{
$this->logger->info('********* ERROR OBTENER CODIGO DACTILAR V2: '. json_encode($e));
$data['msg']= $e->faultstring;
$data['ok']=false;
}
if ($data['ok']) //se pudo comunicar con el ws
{
$data['idoneo'] = ($data['dactilarRegCivil']['individualDactilar']==$codigoDactilar);
if (!$data['idoneo'])
{
$data['msg']=$this->translator->trans('noidoneo.causa.codigoDactilar');
return false;
}
$data['idoneo'] = !$data['dactilarRegCivil']['fechaDefuncion'];
if (!$data['idoneo'])
{
$data['msg']=$this->translator->trans('noidoneo.causa.defuncion');
return false;
}
}
else
{
$data['msg']=$this->translator->trans('noidoneo.causa.network.registrocivil');
return false;
}
return true;
}
protected function callPolice($identificacion, &$data, $comunicate=true)
{
if (!$comunicate)
{
return;
}
$ws_dinardap=$this->getParameter('ws_dinardap');
$cliente = new \SoapClient($ws_dinardap,array('login' => 'oPRadrDIMo', 'password' => 'dfj4R%3Qt/'));
$result = $cliente->__soapCall(
"getFichaGeneral", array(array(
'codigoPaquete' => 83,
'numeroIdentificacion' => $identificacion
))
);
if($result->return->instituciones)
{
$data['ok']=true; //se pudo comunicar con el ws
$data['idoneo']=true; //encontró a una persona con la identidad indicada
$datos='[{"campo":"alertaMigratoria","codigo":"278","valor":"NO"},{"campo":"antecedentes","codigo":"276","valor":"NO"},{"campo":"impedimentoSalida","codigo":"277","valor":"NO"},{"campo":"ordenCaptura","codigo":"275","valor":"NO"}]';
$datos = json_decode($datos);
$datos=$result->return->instituciones->datosPrincipales->registros;
// $this->logger->info('*********RESULTADO DATOS PRINCIPALES: '.json_encode($result->return->instituciones->datosPrincipales->registros));
foreach ($datos as $dato){
switch ($dato->campo){
case 'antecedentes':
if($dato->valor!='NO'){
$data['antecedente'] = 1; //Antecedentes penales
$data['idoneo']=false;
}
break;
case 'impedimentoSalida':
if($dato->valor!='NO'){
$data['antecedente'] = 2; //Impedimento de salida del país
$data['idoneo']=false;
}
break;
case 'alertaMigratoria':
if($dato->valor!='NO'){
$data['antecedente'] = 3; //Alerta migratoria
$data['idoneo']=false;
}
break;
case 'ordenCaptura':
if($dato->valor=='NO' or $dato->valor=='No existe en la Base de Datos de la Policia Nacional' or $dato->valor==''){
$data['antecedente'] = 0;
$data['idoneo']=true;
}else{
$data['antecedente'] = 4; //Orden de Captura
$data['idoneo']=false;
}
break;
}
}
}
else
{
$data['msg']=$this->translator->trans('noidoneo.causa.network.policia');
$data['ok']=false;
}
}
protected function callMinEducacion($identificacion, &$data, $comunicate=true)
{
if (!$comunicate)
{
$data['estudios'][]=array('institucion'=>'No Disponible', 'titulo'=>'No Disponible');
return;
}
try
{
$ws_dinardap=$this->getParameter('ws_dinardap_v2');
$clienteFoto = new \SoapClient($ws_dinardap,array('login' => 'oPRadrDIMo', 'password' => 'dfj4R%3Qt/'));
$this->logger->info('********* DESCARGA FOTO '.$identificacion);
//$this->logger->info('********* ingresa: '. $identificacion);
$parametros=array('parametros'=>array(array('nombre' => 'codigoPaquete','valor' => 1970),array('nombre' => 'identificacion','valor' => $identificacion)));
$this->logger->info('********* envia: '. json_encode($parametros));
$result = $clienteFoto->__soapCall("consultar", array($parametros));
$this->logger->info('*********RESULTADO: '.json_encode($result));
$foto='';
if($result->paquete){
if($result->paquete->entidades->entidad){
$filas=$result->paquete->entidades->entidad->filas;
foreach ($filas as $fila) {
foreach ($fila->columnas as $columna) {
foreach ($columna as $item){
switch ($item->campo){
case 'especialidad':
$especialidad= $item->valor;
break;
case 'titulo':
$titulo= $item->valor;
break;
}
}
}
}
$data['estudios'][]=array('institucion'=>$especialidad, 'titulo'=>$titulo);
}
}
$ws_dinardap=$this->getParameter('ws_dinardap');
$cliente = new \SoapClient($ws_dinardap,array('login' => 'oPRadrDIMo', 'password' => 'dfj4R%3Qt/'));
$this->logger->info('********* INSTITUCIONES: ');
$this->logger->info('********* ingresa: '. $identificacion);
$result = $cliente->__soapCall(
"getFichaGeneral", array(array(
'codigoPaquete' => 85,
'numeroIdentificacion' => $identificacion
))
);
$this->logger->info('LAST REQUEST: ' . $cliente->__getLastRequest());
$this->logger->info('LAST RESPONSE: ' . $cliente->__getLastResponse());
$this->logger->info('*********RESULTADO: '.$identificacion.' - - '.json_encode($result));
if($result->return->instituciones){
$data['ok']=true; //se pudo comunicar con el ws
// $data['idoneo']=true; //encontró a una persona con la identidad indicada
//$this->logger->info('*********RESULTADO INSTITUCIONES: '.json_encode($result->return->instituciones));
//$this->logger->info('*********RESULTADO DATOS PRINCIPALES: '.$identificacion.' - - '.json_encode($result->return->instituciones->detalle->items));
//$registros= '[{"campo":"cedula","codigo":"619","valor":"1714148002"},{"campo":"nombre","codigo":"620","valor":"CHAMBA VOZMEDIANO HUGO ALEXANDER"},{"campo":"institucion","codigo":"621","valor":"INSTITUTO NACIONAL MEJIA"},{"campo":"titulo","codigo":"622","valor":"CIENCIAS"},{"campo":"espcialidad","codigo":"623","valor":"F\u00cdSICO MATEM\u00c1TICAS"}]';
//$registros= json_decode($registros);
if(isset($result->return->instituciones->detalle->items->nombre)){
$especialidad=$result->return->instituciones->detalle->items->nombre;
foreach ($result->return->instituciones->detalle->items->registros as $registro){
//$this->logger->info('*********RESULTADO $REGISTRO: '.json_encode($registro));
switch ($registro->campo){
case 'nombreTitulo':
$titulo= $registro->valor;
break;
}
}
$data['estudios'][]=array('institucion'=>$especialidad, 'titulo'=>$titulo);
}else{
$detalles=$result->return->instituciones->detalle->items;
$institucion='';
$titulo='';
$especialidad='';
foreach ($detalles as $detalle){
//$this->logger->info('*********RESULTADO Detalle: '.$identificacion.' - - '.json_encode($detalle));
if(isset($detalle->nombre)){
$especialidad=$detalle->nombre;
foreach ($detalle->registros as $registro){
//$this->logger->info('*********RESULTADO $REGISTRO: '.json_encode($registro));
switch ($registro->campo){
case 'nombreTitulo':
$titulo= $registro->valor;
break;
}
}
$data['estudios'][]=array('institucion'=>$especialidad, 'titulo'=>$titulo);
}
}
}
}else{
$data['msg']=$this->translator->trans('noidoneo.causa.network.educacion');
$data['ok']=false;
}
}catch (\SoapFault $e)
{
$this->logger->info('********* ERROR VALIDAR ESTUDIOS: '. json_encode($e));
$data['msg']= $e->faultstring;
$data['ok']=true;
}
}
protected function calculaEdad ($fechaActual, $fechaNacimiento) {
$fecha_de_nacimiento = $fechaNacimiento;
$fecha_actual = $fechaActual;
//$fecha_actual = date ("2006-03-05"); //para pruebas
//$this->logger->info("Hoy es".$fecha_actual);
//$this->logger->info("Naciste:".$fecha_de_nacimiento);
// separamos en partes las fechas
$array_nacimiento = explode ( "/", $fecha_de_nacimiento );
$array_actual = explode ( "/", $fecha_actual );
$anos = $array_actual[2] - $array_nacimiento[2]; // calculamos años
$meses = $array_actual[1] - $array_nacimiento[1]; // calculamos meses
$dias = $array_actual[0] - $array_nacimiento[0]; // calculamos días
//ajuste de posible negativo en $días
if ($dias < 0)
{
--$meses;
//ahora hay que sumar a $dias los dias que tiene el mes anterior de la fecha actual
switch ($array_actual[1]) {
case 1: $dias_mes_anterior=31; break;
case 2: $dias_mes_anterior=31; break;
case 3:
if($this->bisiesto($array_actual[2]))
{
$dias_mes_anterior=29; break;
} else {
$dias_mes_anterior=28; break;
}
case 4: $dias_mes_anterior=31; break;
case 5: $dias_mes_anterior=30; break;
case 6: $dias_mes_anterior=31; break;
case 7: $dias_mes_anterior=30; break;
case 8: $dias_mes_anterior=31; break;
case 9: $dias_mes_anterior=31; break;
case 10: $dias_mes_anterior=30; break;
case 11: $dias_mes_anterior=31; break;
case 12: $dias_mes_anterior=30; break;
}
$dias=$dias + $dias_mes_anterior;
}
//ajuste de posible negativo en $meses
if ($meses < 0)
{
--$anos;
$meses=$meses + 12;
}
//$this->logger->info("años:".$anos);
//$this->logger->info("meses:".$meses);
//$this->logger->info("dias:".$dias);
return $anos.'/'.$meses.'/'.$dias;
}
protected function bisiesto($anio_actual){
$bisiesto=false;
//probamos si el mes de febrero del año actual tiene 29 días
if (checkdate(2,29,$anio_actual))
{
$bisiesto=true;
}
return $bisiesto;
}
protected function verificaIdentidad(&$data, $identificacion, $fechaAcual)
{
$em = $this ->em;
/*** BEGIN CONSULTAR SERVICIO WEB REGISTRO CIVIL ***/
$this->logger->info('/***********REQUEST verifica identidad');
try {
$ws_dinardap=$this->getParameter('ws_dinardap');
$cliente = new \SoapClient($ws_dinardap,array('login' => 'oPRadrDIMo', 'password' => 'dfj4R%3Qt/'));
$result = $cliente->__soapCall(
"getFichaGeneral", array(array(
'codigoPaquete' => 82,
'numeroIdentificacion' => $identificacion
))
);
if($result->return->instituciones)
{
$data['ok']=true; //se pudo comunicar con el ws
$datos=$result->return->instituciones->datosPrincipales->registros;
//$datos= '[{"campo":"cedula","codigo":"1","valor":"1714148002"},{"campo":"nombre","codigo":"2","valor":"CHAMBA VOZMEDIANO HUGO ALEXANDER"},{"campo":"condicionCiudadano","codigo":"4","valor":"CIUDADANO"},{"campo":"fechaNacimiento","codigo":"5","valor":"02\/01\/1997"},{"campo":"lugarNacimiento","codigo":"6","valor":"PICHINCHA\/QUITO\/SANTA BARBARA"},{"campo":"nacionalidad","codigo":"7","valor":"ECUATORIANA"},{"campo":"estadoCivil","codigo":"8","valor":"CASADO"},{"campo":"domicilio","codigo":"15","valor":"PICHINCHA\/QUITO\/LA MAGDALENA"},{"campo":"callesDomicilio","codigo":"16","valor":"HUAYNAPALCON 007"},{"campo":"numeroCasa","codigo":"17","valor":"0"},{"campo":"fechaDefuncion","codigo":"20","valor":""}]';
//$datos= json_decode($datos);
$this->logger->info('*********RESULTADO DATOS PRINCIPALES: '.json_encode($result->return->instituciones->datosPrincipales->registros));
foreach ($datos as $dato)
{
switch ($dato->campo)
{
case 'cedula':
$data['cedula']=$dato->valor;
break;
case 'nombre':
$data['nombres']=$dato->valor;
$data['apellidoP']='';
$data['apellidoM']='';
break;
case 'fechaNacimiento':
$data['fechaNacimiento']=$dato->valor;
$fechaNacimiento= $data['fechaNacimiento'];
$edad=$this->calculaEdad(date_format($fechaAcual,'d/m/Y'), $fechaNacimiento);
//$this->logger->info("******EDAD:".$edad);
$array_edad = explode( "/",$edad );
$data['edad']=$array_edad[0];
$data['edadString']=$array_edad[0].' años '.$array_edad[1].' meses '.$array_edad[2].' días';
// $data['edad']=21;
//$data['fechaNacimiento']='01/01/2000';
break;
case 'sexo':
if ($dato->valor == 'HOMBRE')
$data['sexo'] = 'Masculino';
else
$data['sexo'] = 'Femenino';
break;
case 'estadoCivil':
$data['estadoCivil']=$dato->valor;
break;
case 'nacionalidad':
$data['paisNacimiento']=$dato->valor;
break;
case 'lugarNacimiento':
$data['lugarNacimientoStr']=$dato->valor;
$array_lugar = explode ( "/", $dato->valor );
//$data['parroquiaNacimiento']=$array_lugar[2];
if(isset($array_lugar[2])){
$parroquia = $em->getRepository('App\\Entity\\NmclDominioLocalizacion')
->createQueryBuilder('r')
->leftJoin('r.nivelLocalizacion','nivel')
->leftJoin('nivel.localizacion','localizacion')
->leftJoin('r.dominioPadre','dominioPadre')
->where('localizacion.id=1')
->andWhere('nivel.nivel=4')
->andWhere('upper(r.valor)=:VALOR')
->setParameter('VALOR',strtoupper($array_lugar[2]))
->andWhere('upper(dominioPadre.valor)=:VALOR2')
->setParameter('VALOR2',strtoupper($array_lugar[1]))
->getQuery()->getOneOrNullResult();
if($parroquia){
$data['parroquiaNacimiento']=$parroquia;
$data['cantonNacimiento']=$data['parroquiaNacimiento']->getDominioPadre();
$data['provinciaNacimiento']=$data['cantonNacimiento']->getDominioPadre();
$data['regionNacimiento']=$data['provinciaNacimiento']->getDominioPadre();
$data['parroquiaNacimiento']=$data['parroquiaNacimiento']->__toString();
$data['cantonNacimiento']=$data['cantonNacimiento']->__toString();
$data['provinciaNacimiento']=$data['provinciaNacimiento']->__toString();
$data['regionNacimiento']=$data['regionNacimiento']->__toString();
}
else{
$data['parroquiaNacimiento']='';
$data['cantonNacimiento']='';
$data['provinciaNacimiento']='';
$data['regionNacimiento']='';
}
} else{
$data['parroquiaNacimiento']='';
$data['cantonNacimiento']='';
$data['provinciaNacimiento']='';
$data['regionNacimiento']='';
}
break;
case 'domicilio':
$data['domicilio']=$dato->valor;
break;
case 'callesDomicilio':
$data['callesDomicilio']=$dato->valor;
break;
case 'numeroCasa':
$data['numeroCasa']=$dato->valor;
break;
case 'fechaDefuncion':
$data['fechaDefuncion']=$dato->valor;
break;
}
}
$this->obtieneSexoNacionalidad($data);
$data['idoneo'] = (isset($data['cedula']) && $data['cedula']==$identificacion); //encontró a una persona con la identidad indicada
if (!$data['idoneo'])
{
$data['causaRechazo'] = CausaNoIdoneoEnum::IDENTIDAD;
$data['msg']=$this->translator->trans('noidoneo.causa.identidad');
return false;
}
$data['idoneo'] = !isset($data['fechaDefuncion']) || !$data['fechaDefuncion'];
if (!$data['idoneo'])
{
$data['causaRechazo'] = CausaNoIdoneoEnum::DEFUNCION;
$data['msg']=$this->translator->trans('noidoneo.causa.defuncion');
return false;
}
$data['idoneo'] = $data['paisNacimiento'] == 'ECUATORIANA';
if (!$data['idoneo'])
{
$data['causaRechazo'] = CausaNoIdoneoEnum::EXTRANJERO;
$data['msg']=$this->translator->trans('noidoneo.causa.extranjero');
return false;
}
$this->getFoto($identificacion, $data);
if (!$data['ok'])
{
return false;
}
return true;
}
else
{
$data['ok']=false; //se pudo comunicar con el ws
$data['idoneo']=false; //encontró a una persona con la identidad indicada
$data['msg']=$this->translator->trans('noidoneo.causa.network.registrocivil');
return false;
}
}
catch (\SoapFault $e)
{
$this->logger->info('********* ERROR VALIDAR IDENTIDAD: '. json_encode($e));
$data['msg']= $e->faultstring;
$data['ok']=false; //se pudo comunicar con el ws
$data['idoneo']=false; //encontró a una persona con la identidad indicada
return false;
}
/*** END CONSULTAR SERVICIO WEB REGISTRO CIVIL ***/
}
protected function obtieneSexoNacionalidad(&$data)
{
/*** BEGIN CONSULTAR SERVICIO WEB REGISTRO CIVIL ***/
$identificacion=$data['cedula'];
$this->logger->info("**********cedula".$identificacion);
$data['ok']=true; //se pudo comunicar con el ws
$data['idoneo']=true; //los datos del código dactilar son correctos
/*$data [
'individualDactilar'=>'',
'sexo' => '',
'fechaDefuncion' => '',
'instruccion' => '',
'nacionaidad' => '',
]; */
// return true; //WILLY Usar esta linea para probar sin usar los servicios
/*** END CONSULTAR SERVICIO WEB REGISTRO CIVIL ***/
//$data['estudios'][]=array('anno'=>2013, 'institucion'=>'Colegio XXX', 'titulo'=>'Ingenieron mecánico');
/*** END CONSULTAR SERVICIO WEB MIN EDUCACION ***/
$ws_dinardap=$this->getParameter('ws_dinardap_v2');
$cliente = new \SoapClient($ws_dinardap,array('login' => 'oPRadrDIMo', 'password' => 'dfj4R%3Qt/'));
$this->logger->info('********* REVISA CODIGO DACTILAR: '.$identificacion);
try
{
//$this->logger->info('********* ingresa: '. $identificacion);
$parametros=array(
'parametros'=>array(
array(
'nombre' => 'codigoPaquete',
'valor' => 1959
),
array(
'nombre' => 'identificacion',
'valor' => $identificacion
)
)
);
$this->logger->info('********* envia: '. json_encode($parametros));
$result = $cliente->__soapCall("consultar", array($parametros));
//$result = $cliente->consultar($parametros);
$this->logger->info('LAST REQUEST: ' . $cliente->__getLastRequest());
$this->logger->info('LAST RESPONSE: ' . $cliente->__getLastResponse());
$this->logger->info('*********RESULTADO: '.json_encode($result));
if($result->paquete && $result->paquete->entidades->entidad)
{
$filas=$result->paquete->entidades->entidad->filas;
foreach ($filas as $fila) {
foreach ($fila->columnas as $columna) {
foreach ($columna as $item){
switch ($item->campo){
case 'individualDactilar':
$data['individualDactilar'] = $item->valor;
//$codigoRegCvil= $item->valor;
break;
case 'sexo':
if ($item->valor == 'HOMBRE')
{
$data['sexo']='Masculino';
}
else
if ($item->valor == 'MUJER')
{
$data['sexo']='Femenino';
}
else
{
$data['sexo'] = 'Otro';
}
// $sexoRegCivil= $item->valor;
break;
case 'fechaDefuncion':
$data['fechaDefuncion'] = $item->valor;
break;
case 'instruccion':
$data['instruccion'] = $item->valor;
break;
case 'nacionalidad':
$data['nacionalidad'] = $item->valor;
break;
}
}
}
}
}
else
{
$data['msg']=$this->translator->trans('noidoneo.causa.network.registrocivil');
$data['ok']=false;
}
}catch (\SoapFault $e)
{
$this->logger->info('********* ERROR OBTENER CODIGO DACTILAR V2: '. json_encode($e));
$data['msg']= $e->faultstring;
$data['ok']=false;
}
if ($data['ok']) //se pudo comunicar con el ws
{
return true;
}
else
{
$data['msg']=$this->translator->trans('noidoneo.causa.network.registrocivil');
return false;
}
return true;
}
protected function getFoto($identificacion, &$data)
{
/***OBTIENE FOTO******/
$ws_dinardap=$this->getParameter('ws_dinardap_v2');
$clienteFoto = new \SoapClient($ws_dinardap,array('login' => 'oPRadrDIMo', 'password' => 'dfj4R%3Qt/'));
$this->logger->info('********* DESCARGA FOTO '.$identificacion);
//$this->logger->info('********* ingresa: '. $identificacion);
$parametros=array('parametros'=>array(array('nombre' => 'codigoPaquete','valor' => 1961),array('nombre' => 'identificacion','valor' => $identificacion)));
$this->logger->info('********* envia: '. json_encode($parametros));
$result = $clienteFoto->__soapCall("consultar", array($parametros));
//$result = $clienteFoto->consultar($parametros);
//$this->logger->info('LAST REQUEST: ' . $clienteFoto->__getLastRequest());
//$this->logger->info('LAST RESPONSE: ' . $cliente->__getLastResponse());
$this->logger->info('*********RESULTADO: '.json_encode($result));
$data['fotoCedula']='';
if($result->paquete){
if($result->paquete->entidades->entidad){
$filas=$result->paquete->entidades->entidad->filas;
foreach ($filas as $fila) {
foreach ($fila->columnas as $columna) {
foreach ($columna as $item){
switch ($item->campo){
case 'foto':
$data['fotoCedula'] = $item->valor;
break;
}
}
}
}
}
}
else{
$data['msg']=$this->translator->trans('noidoneo.causa.registrocivilFoto');
$data['ok']=false;
return false;
}
/***FIN OBTIENE FOTO******/
return true;
}
}