<?php namespace App\Http\Controllers;

use App\Custom\SQLConnection;
use App\Http\Controllers\MainController;
use App\Http\Controllers\AFIPController;
use App\Http\Controllers\ApiControllerV1;
use App\Custom\Misc;
use Request;
use Session;
use stdClass;
use DateTime;
use DB;
class CameController extends Controller {

  public static function listarCircuitoCerrado(){
    $identificacion  = Request::Input('Cuil');
    $resp = SQLConnection::backendStoreProcedure('circuito_cerrado_listar', array($identificacion));
    return json_encode($resp);
  }
 
  public static function agregarCircuitoCerrado(){
    $id_externo      = Request::Input('UsuarioId');
    $identificacion  = Request::Input('Cuil');
    $importe_total   = Request::Input('ImporteTotal');
    $cantidad_cuotas = Request::Input('CantidadCuotas');
    $nombre          = Request::Input('Nombre');
    $caracter        = Request::Input('Caracter');
    $notas           = Request::Input('Notas');

    $usuario        = Session::get('usuario');
    $user_id        = $usuario->user_id;
    //$p_ip = $_SERVER['REMOTE_ADDR'];
    //SQLConnection::backendStoreProcedure('consumir_servicio_externo', array($user_id,$identificacion,56,$p_ip,$id_externo), true);
    $producto       = $usuario->producto ?? 56;
    ApiControllerV1::consumir_servicio($identificacion,$producto,$id_externo); 

    $resp = SQLConnection::backendStoreProcedure('circuito_cerrado_agregar', array($id_externo,$identificacion,$importe_total,$cantidad_cuotas,$nombre,$caracter,$notas
), true);

    if($resp->respuesta == 'ok'){
        return json_encode([
            'Status'=>'OK','StatusCode'=>0
        ]);
    }else{
        return json_encode([
            'Status'=>'ERROR','StatusCode'=>1
        ]);
    }
  }

  public static function eliminarCircuitoCerrado(){
    $id                 = Request::Input('IdCircuitoCerrado');
    $id_externo         = Request::Input('UsuarioId');
    $identificacion     = Request::Input('Cuil');
    $usuario        = Session::get('usuario');
    $user_id        = $usuario->user_id;
    //$p_ip = $_SERVER['REMOTE_ADDR'];
    //SQLConnection::backendStoreProcedure('consumir_servicio_externo', array($user_id,$identificacion,56,$p_ip,$id_externo), true);
    $producto       = $usuario->producto ?? 56;
    ApiControllerV1::consumir_servicio($identificacion,$producto,$id_externo); 

    $resp = SQLConnection::backendStoreProcedure('circuito_cerrado_eliminar', array($id,$id_externo,$identificacion));
    return json_encode([
      'Status'=>'OK','StatusCode'=>0
      ]);
  }
  public static function modificarCircuitoCerrado(){
    $id                 = Request::Input('IdCircuitoCerrado');
    $id_externo         = Request::Input('UsuarioId');
    $morosidad          = Request::Input('Morosidad');
    $resp = SQLConnection::backendStoreProcedure('circuito_cerrado_morosidad', array($id,$morosidad,$id_externo));
    return json_encode([
      'Status'=>'OK','StatusCode'=>0
    ]);
  } 
  
  public static function pedirInforme(){
    $usuario         = Request::Input('UsuarioId');
    $clave           = Request::Input('Clave');
    $cuit            = Request::Input('Cuil');
    $tipo            = Request::Input('TipoInforme');
    $apikey          = Request::Input('apikey');
    $fisica_juridica = Misc::tipoPersona($cuit); 

    $data = ApiControllerV1::ObtenerInformeComercialCompleto($cuit,$apikey);
    $data = json_decode($data);
    $circuito_cerrado = [];
    $circuito_cerrado = json_decode(self::listarCircuitoCerrado($cuit));
    foreach ($circuito_cerrado as $key => $value) {
        if($value->morosidad == 1){
            $data->score->valor = 0;
        }
    }

//dd($data); 
    $InformeFull = new stdClass(); 

// Afectaciones : No sabemos que es 
    $InformeFull->Afectaciones  = []; 
    /*
    $InformeFull->Afectaciones[0] = new stdClass();
    $InformeFull->Afectaciones[0]->PersonaAtrasoClienteNombre = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoClienteid = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoCondicion = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoCuotas = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoFechaPago = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoFechaafe = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoImporte = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoImporteCuota = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoMotivo = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoMotivoDescripcion = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoNumeroCredito = ''; 
    $InformeFull->Afectaciones[0]->PersonaAtrasoSerie = ''; 
    */
    
    $InformeFull->Boletin       = '';
    $color_score = 'V';
    if($data->score->valor <= 50){
        $color_score = 'R';
    }else if($data->score->valor > 50 && $data->score->valor <= 65){
        $color_score = 'A';
    }
    $InformeFull->ColorScore    = $color_score;
    $InformeFull->ColorSemaforo = $color_score; 
    $InformeFull->DatosEscudo   = ''; 

    $InformeFull->Domicilios  = [];
    if(!empty($data->formales->domicilios)){
        foreach ($data->formales->domicilios as $key => $value) {
                $InformeFull->Domicilios[$key] = new stdClass(); 
                $InformeFull->Domicilios[$key]->PersonaDomiciliosCP         = $value->cp ?? ''; 
                $InformeFull->Domicilios[$key]->PersonaDomiciliosCalle      = $value->domicilio ?? ''; 
                $InformeFull->Domicilios[$key]->PersonaDomiciliosFecha      = ''; 
                $InformeFull->Domicilios[$key]->PersonaDomiciliosId         = ''; 
                $InformeFull->Domicilios[$key]->PersonaDomiciliosLocalidad  =  $value->localidad ?? ''; 
                $InformeFull->Domicilios[$key]->PersonaDomiciliosNumero     = ''; 
                $InformeFull->Domicilios[$key]->PersonaDomiciliosProvincia  = $value->provincia ?? ''; 
                $InformeFull->Domicilios[$key]->PersonaDomicliosLocalidadID = ''; 
        }
    }

    $InformeFull->GuiaTelefono      = []; 
    $InformeFull->mas_info          = []; 
    $InformeFull->claes             = []; 
    $InformeFull->empleados         = []; 
    $InformeFull->HistoriaLaboral   = []; 
    $InformeFull->InformeId         = '0';
    $InformeFull->mas_info          = $data->formales->mas_info ?? ''; 
    $InformeFull->empleados         = $data->formales->empleados ?? ''; 
    $InformeFull->claes             = $data->formales->claes ?? ''; 

    $InformeFull->InformeSDT = new stdClass(); 

// ART --> No lo tenemos 
    $InformeFull->InformeSDT->circuito_cerrado = [];
    if(!empty($circuito_cerrado)){
        $InformeFull->InformeSDT->circuito_cerrado = $circuito_cerrado;
    }
    $InformeFull->InformeSDT->ART = []; 
    /*
    $InformeFull->InformeSDT->ART[0] = new stdClass(); 
    $InformeFull->InformeSDT->ART[0]->PersonaArtId = ''; 
    $InformeFull->InformeSDT->ART[0]->PersonaArtDescripcion = ''; 
    */

// Aportes 

    $InformeFull->InformeSDT->Aporte = []; 
    if(!empty($data->fiscales->aportes)){
        foreach ($data->fiscales->aportes as $key => $value) {
                $InformeFull->InformeSDT->Aporte[$key] = new stdClass(); 
                $InformeFull->InformeSDT->Aporte[$key]->PersonaAporteEmpleador = $value->nombre_empleador ?? '';
                $InformeFull->InformeSDT->Aporte[$key]->PersonaAportePeriodo = $value->periodo ?? '';
                $InformeFull->InformeSDT->Aporte[$key]->PersonaAporteIncDeclaracionJurada = $value->ddjj ?? '';
                $InformeFull->InformeSDT->Aporte[$key]->PersonaAporteSeguridadSocial = $value->aportes_ss ?? '';
                $InformeFull->InformeSDT->Aporte[$key]->PersonaAporteObraSocial =  $value->aportes_os ?? '';
                $InformeFull->InformeSDT->Aporte[$key]->PersonaAporteContribucionObraSocial = $value->contr_patronal ?? '';
        }
    }

// BCRA
    $periodo = ''; 
    if (isset($data->periodos->bancos))
        {
        $periodo = $data->periodos->bancos;
        } 
    $InformeFull->InformeSDT->BCRA = []; 
    $i = 0; 
    if(!empty($data->bancos)){
        foreach ($data->bancos as $key => $value) {
            if ($value->periodo == $periodo)
                {
                $InformeFull->InformeSDT->BCRA[$i] = new stdClass(); 
                $InformeFull->InformeSDT->BCRA[$i]->PersonaBcraID            = ''; 
                $InformeFull->InformeSDT->BCRA[$i]->PersonaBcraEntidad       = $value->nombre_entidad ?? ''; 
                $InformeFull->InformeSDT->BCRA[$i]->PersonaBcraPeriodo       = $value->periodo ?? ''; 
                $InformeFull->InformeSDT->BCRA[$i]->PersonaBcraSituacion     = $value->situacion ?? ''; 
                $InformeFull->InformeSDT->BCRA[$i]->PersonaBcraMonto         = $value->monto ?? ''; 
                $InformeFull->InformeSDT->BCRA[$i]->PersonaBcraDiasAtraso    = $value->dias_atraso ?? ''; 
                $InformeFull->InformeSDT->BCRA[$i]->PersonaBcraObservaciones = ''; 
                $i += 1; 
                unset($data->bancos[$key]); 
                }
            }
    }

// BCRA - Historico

    $InformeFull->InformeSDT->BcraHistorico = []; 
    $i = 0; 
    if(!empty($data->bancos)){
        foreach ($data->bancos as $key => $value) {
            $InformeFull->InformeSDT->BcraHistorico[$i] = new stdClass(); 
            $InformeFull->InformeSDT->BcraHistorico[$i]->PersonaBCRAHistoricoSituacion = $value->situacion ?? ''; 
            $InformeFull->InformeSDT->BcraHistorico[$i]->PersonaBcraHistoricoIdEntidad = $value->nombre_entidad ?? ''; 
            $InformeFull->InformeSDT->BcraHistorico[$i]->PersonaBcraHistoricoMonto     = $value->monto ?? ''; 
            $InformeFull->InformeSDT->BcraHistorico[$i]->PersonaBcraHistoricoPeriodo   = $value->periodo ?? ''; 
            $i += 1; 
            }
    }

// Cheques
    $InformeFull->InformeSDT->Cheque  = []; 
    $i = 0; 
    if(!empty($data->cheques)) {
        foreach ($data->cheques as $key => $value) {
            $InformeFull->InformeSDT->Cheque[$i] = new stdClass(); 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeID = ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeNumero = $value->nro_cheque ?? '';
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeFechaRechazo = $value->fecha_rechazo ?? ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeImporte = $value->importe ?? ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeCausa = $value->causa ?? ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeFechaPago = $value->fecha_levantamiento ?? ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeFechaPagoMulta = $value->fecha_pago ?? ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeRevision = ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeProcesoJudicial =''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeTipo = $value->tipo  ?? ''; 
            $InformeFull->InformeSDT->Cheque[$i]->PersonaChequeDenominacion = $value->nombre_persona_relacionado ?? ''; 
            $i += 1;
        }
    }

//  Empleador 
    $InformeFull->InformeSDT->Empleador = []; 
    if(!empty($data->formales->empleado_de)) {
        foreach ($data->formales->empleado_de as $key => $value) {
            $InformeFull->InformeSDT->Empleador[$key] = new stdClass(); 
            $InformeFull->InformeSDT->Empleador[$key]->PersonaEmpleadorBeneficio      = '';   
            $InformeFull->InformeSDT->Empleador[$key]->PersonaEmpleadorCuit           = $value->cuit_empleador ?? ''; 
            $InformeFull->InformeSDT->Empleador[$key]->PersonaEmpleadorID             = '';
            $InformeFull->InformeSDT->Empleador[$key]->PersonaEmpleadorSituacion      = ''; 
            $InformeFull->InformeSDT->Empleador[$key]->PersonaEmpleadorUltPeriodoLiq  = '';
        }
    } 
    

    if (isset($data->error))
    {
        $InformeFull->ErrorCodigo   = '1'; 
        $InformeFull->ErrorMensaje  = $data->error; 
    }
    else 
    {
        $InformeFull->ErrorCodigo   = '0'; 
        $InformeFull->ErrorMensaje  = 'PERSONA ENCONTRADA';
    }

// Familia
     $InformeFull->InformeSDT->Familia = []; 

// Incripcion 
    $InformeFull->InformeSDT->Incripcion = [];
    $InformeFull->InformeSDT->comex = $data->comex;
    $InformeFull->InformeSDT->legales = $data->legales;
    $InformeFull->InformeSDT->expedientes_arba = $data->fiscales->arba;
    $InformeFull->InformeSDT->apocrifas = $data->fiscales->facturas_apocrifas;
    
    $i = 0; 
     if(!empty($data->fiscales->inscripciones)) {
        foreach ($data->fiscales->inscripciones as $key => $value) {
            if (isset($value->fecha_contrato_social))
            {
            $InformeFull->InformeSDT->Incripcion[$i] = new stdClass(); 
            $InformeFull->InformeSDT->Incripcion[$i]->PersonaIncripcionDescripcion = 'Fecha de Contrato Social: ' . $value->fecha_contrato_social; 
            $InformeFull->InformeSDT->Incripcion[$i]->PersonaIncripcionID = $i+1; 
            $i += 1; 
            }
        }
    }
    
    if(!empty($data->fiscales->clae)) {
        foreach ($data->fiscales->clae as $key => $value) {
            $InformeFull->InformeSDT->Incripcion[$i] = new stdClass(); 
            $InformeFull->InformeSDT->Incripcion[$i]->PersonaIncripcionDescripcion =  'Actividad: ' . $value->cod_clae . ' - ' . $value->descripcion; 
            $InformeFull->InformeSDT->Incripcion[$i]->PersonaIncripcionID = $i+1; 
            $i += 1; 
         }
    }

    if(!empty($data->fiscales->impuestos)) {
        foreach ($data->fiscales->impuestos as $key => $value) { 
            $InformeFull->InformeSDT->Incripcion[$i] = new stdClass(); 
            $InformeFull->InformeSDT->Incripcion[$i]->PersonaIncripcionDescripcion = 'Impuesto: ' .  $value->codigo_impuesto . ' - ' .
                                                                                      $value->nombre_impuesto . ' - ' .
                                                                                      'Periodo: ' . $value->fecha_inscripcion .  ' - ' . 
                                                                                      'Estado: ' . $value->estado; 
            $InformeFull->InformeSDT->Incripcion[$i]->PersonaIncripcionID = $i+1; 
            $i += 1; 
         }
    }

     
// Negativa ?? --> No sabemos que es
    $InformeFull->InformeSDT->Negativa = []; 
    /* 
    $InformeFull->InformeSDT->Negativa[0] = new stdClass(); 
    $InformeFull->InformeSDT->Negativa[0]->PersonaNegativaID = ''; 
    $InformeFull->InformeSDT->Negativa[0]->PersonaNegativaDescripcion = ''; 
    */

// Obra Social --> No lo tenemos

    $InformeFull->InformeSDT->ObraSocial = []; 
    /*
    $InformeFull->InformeSDT->ObraSocial[0]->PersonaCuil = ''; 
    $InformeFull->InformeSDT->ObraSocial[0]->PersonaEdad = ''; 
    $InformeFull->InformeSDT->ObraSocial[0]->PersonaFechaNacimiento = ''; 
    $InformeFull->InformeSDT->ObraSocial[0]->PersonaNombre = ''; 
    $InformeFull->InformeSDT->ObraSocial[0]->PersonaScore = ''; 
    $InformeFull->InformeSDT->ObraSocial[0]->PersonaSexo = ''; 
    */

    $InformeFull->InformeSDT->PersonaCuil            = $data->formales->identificacion ?? ''; 
    $InformeFull->InformeSDT->PersonaEdad            = (isset($data->formales->edad)) ? (string)$data->formales->edad : ''; 
    $InformeFull->InformeSDT->PersonaFechaNacimiento = $data->formales->fecha_nacimiento ?? ''; 
    $InformeFull->InformeSDT->PersonaNombre          = $data->formales->nombre  ?? ''; 
    $InformeFull->InformeSDT->PersonaScore           = $data->score->valor ?? ''; 
    $InformeFull->InformeSDT->PersonaSexo            = $data->formales->sexo ?? '';

// Es el archivo de Inscripciones que se descarga en la carpeta fuentes todos los sabados 
    $InformeFull->InformeSDT->Tributaria = []; 
    /*
    $InformeFull->InformeSDT->Tributaria[0] = new stdClass(); 
    $InformeFull->InformeSDT->Tributaria[0]->PersonaTributariaActividad = ''; 
    $InformeFull->InformeSDT->Tributaria[0]->PersonaTributariaEmpleador = ''; 
    $InformeFull->InformeSDT->Tributaria[0]->PersonaTributariaGanancias = ''; 
    $InformeFull->InformeSDT->Tributaria[0]->PersonaTributariaIntegrante = ''; 
    $InformeFull->InformeSDT->Tributaria[0]->PersonaTributariaIva = ''; 
    $InformeFull->InformeSDT->Tributaria[0]->PersonaTributariaMonotributo = ''; 
    */
    $InformeFull->InformeSDT->Informes = []; 
    /*
    $InformeFull->InformeSDT->Informes[0]->ClienteId = ''; 
    $InformeFull->InformeSDT->Informes[0]->ClienteNombre = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeCaracter = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeCuotas = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeEstado = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeFecha = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeFechaAcuerdo = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeId = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeImporte = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeImporteCuota = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeNumeroCredito = ''; 
    $InformeFull->InformeSDT->Informes[0]->InformeTipoRechazoId = ''; 
    $InformeFull->InformeSDT->Informes[0]->TipoRechazoDescripcion = ''; 
    */
    $InformeFull->InformeSDT->InformesInstitutos = []; 

    $InformeFull->InformeSDT->Marcas = $data->comerciales->marcas ?? ''; 
    $InformeFull->InformeSDT->PersonaAnioNacimiento = $data->formales->anio_nacimiento ?? '';
    $InformeFull->InformeSDT->PersonaDocumentoEjemplar = $data->formales->ejemplar ?? ''; // falta 
    $InformeFull->InformeSDT->PersonaNacionalidad = $data->formales->nacionalidad ?? ''; // falta
    $InformeFull->InformeSDT->PersonaProfesion = $data->formales->profesion ?? ''; 
    $InformeFull->InformeSDT->PersonaSueldo = '0'; 
    $InformeFull->InformeSDT->Resultado = ''; 
    $InformeFull->InformeSDT->ResultadoDescripcion = ''; 

    $InformeFull->Sociedades = new stdClass(); 
    $InformeFull->Sociedades->SociedadesSDT = new stdClass(); 
    $InformeFull->Sociedades->SociedadesSDT->Asamblea = []; 
    $InformeFull->Sociedades->SociedadesSDT->Balance = []; 
    
    if(!empty($data->balances)) {
        foreach ($data->balances as $key => $value) {
            $InformeFull->Sociedades->SociedadesSDT->Balance[$key] = new stdClass(); 
            $InformeFull->Sociedades->SociedadesSDT->Balance[$key]->SociedadBalanceCapital    = $value->capsoc ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Balance[$key]->SociedadBalanceFechPres   = '';
            $InformeFull->Sociedades->SociedadesSDT->Balance[$key]->SociedadBalanceFecha      = $value->fecha_balance ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Balance[$key]->SociedadBalanceId         = $value->id_balance ?? '';
        }
    } 
    

    $InformeFull->Sociedades->SociedadesSDT->Fisica = []; 
 
    if($fisica_juridica == 'J'){
        $i = 0;
        foreach ($data->relaciones->socios as $key => $value) {
            if(Misc::tipoPersona($value->cuit) == 'F'){
                $InformeFull->Sociedades->SociedadesSDT->Fisica[$i] = new stdClass(); 
                $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->PersonaCuil      = $value->cuit ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->PersonaNombre    = $value->nombre_persona ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->SociedadRazonSoc =  $data->formales->nombre  ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->TipoAdmDesc      = $value->cargo ?? '';
                $i = $i+1;
            }
        }
        foreach ($data->relaciones->participaciones as $key => $value) {
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i] = new stdClass(); 
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->PersonaCuil      = $value->cuit_socio ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->PersonaNombre    = $value->nombre_socio ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->SociedadRazonSoc =  $value->razon_social_sociedad  ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->TipoAdmDesc      = $value->cargo ?? '';
            $i = $i+1;
        }
        foreach ($data->relaciones->vinculaciones as $key => $value) {
            if(Misc::tipoPersona($value->cuit) == 'F'){
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i] = new stdClass(); 
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->PersonaCuil      = $value->cuit ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->PersonaNombre    = $value->nombre_persona ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->SociedadRazonSoc =  $data->formales->nombre   ?? '';
            $InformeFull->Sociedades->SociedadesSDT->Fisica[$i]->TipoAdmDesc      = $value->detalle ?? '';
            $i = $i+1;
            }
        }
        
    }

     $n = 0;
    $InformeFull->Sociedades->SociedadesSDT->Juridica = []; 
        foreach ($data->relaciones->socios as $key => $value) {
            if(Misc::tipoPersona($value->cuit) == 'J'){
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n] = new stdClass(); 
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->SociedadCuit      = $value->cuit ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->Sociedad          = $value->nombre_persona ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->SociedadDomCalle  = $value->dom_calle ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->SociedadDomNro    = $value->dom_numero ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->TipoSocDesc       = $value->cargo ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->Detalle            = $value->detalle ?? '';
                 $n = $n+1;
            }
        }

        $n = 0;
        foreach ($data->relaciones->vinculaciones as $key => $value) {
            if(Misc::tipoPersona($value->cuit) == 'J'){
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n] = new stdClass(); 
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->SociedadCuit      = $value->cuit ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->Sociedad          = $value->nombre_persona ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->SociedadDomCalle  = $value->dom_calle ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->SociedadDomNro    = $value->dom_numero ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->TipoSocDesc       = $value->cargo ?? '';
                $InformeFull->Sociedades->SociedadesSDT->Juridica[$n]->Detalle           = $value->detalle ?? '';
                 $n = $n+1;
            }
        }
      
      

    $InformeFull->Status = ''; 
    $InformeFull->StatusCode = '0'; 

    return json_encode($InformeFull); 

    }
    
}


