<?php namespace App\Http\Controllers;

use App\Custom\SQLConnection;
use App\Custom\Misc;

use Illuminate\Support\Facades\Response;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Request;

class ICController extends Controller  {

	
	public function obtenerIC(){
		$apikey = 'C824D668799B10EE';
		$secciones = ['brief','bancos'];
		$cuit = '20335754655';
		return view('front_ic/index')->with(compact('apikey','secciones','cuit'));
		/*$token_id_usuario 	 = MainController::obtenerParametrosInformeComercial();
		$token_por_secciones = Misc::obtenerTokenSeccion('contables');
		//$token_por_secciones 	= json_decode(Misc::decrypt($token_por_secciones));
		$menu = Misc::obtenerPermisosNavigator();
		//valido si el usuario tiene el permiso correspondiente para acceder a la sección solicitada.
			
			$task_id = Request::Input('task_id');
		$user_id 		= Session::get("usuario")->user_id;
			$valido =  Misc::restriccionPermiso('BALANCE');
			if(!$valido && !$task_id){ return redirect('/menu'); }
			$cuit = Request::Input('cuit');
			$nombre_persona = Request::Input('nombre_persona');
			$anios= 50;
			$visible = 1;
			//$balances = SQLConnection::backendBalancesContables($cuit,$anios,$visible,$task_id);
		$balances = SQLConnection::backendStoreProcedure('backend_balances_contables',array(null,$cuit,$anios,$visible,$task_id,$user_id),"select");
			self::$monedas  = SQLConnection::obtenerMonedas();
			$monedas = self::$monedas;
			$ruta_archivo = ENV('RUTA_ARCHIVO_PDF').'/balances/'.$cuit; 
			$balances2 = [];
			if ($task_id != null && $task_id != 0 && isset($menu['BALANCE']))
			{
				//$balances2 = SQLConnection::backendBalancesContables($cuit,$anios,$visible,'');
				$balances2 = SQLConnection::backendStoreProcedure('backend_balances_contables',array(null,$cuit,$anios,$visible,'',$user_id),"select");
			}*/
			//return view('produccion/balances')->with(compact('balances','balances2','anios','visible','monedas','ruta_archivo','menu','cuit','nombre_persona','token_por_secciones','token_id_usuario','task_id','user_id'));
	}

	/**
	 * Metodo que genera la vista del PDF del
	 * informe comercial para el
	 * producto DataCleaning con IC según
	 * las especificaciones del apikey
	 * @access public
	 */
	public function obtenerICContraparte(){
		if ( isset($_POST['cuit']) && isset($_POST['cliente']) && isset($_POST['contraparte']) ){
			$cliente = Request::input('cliente');
			$cuit = Request::input('cuit');
			$contraparte = Request::input('cuit');
			//
			$cuit = 30695542476; //30695542476
			//
			$api_config = SQLConnection::backendStoreProcedure('apikey_cliente_producto',array($cliente,'112'),'selectOne');
			$status = 0;
			$ic_config = NULL;
			//
			if ( is_null($api_config) ){
				// no hay apikey
				$status = 1;
			} else {
				$vigencia_apikey = new \DateTime($api_config->vigencia);
				if ( (new \DateTime()) > $vigencia_apikey ){
					$status = 2;
				} else {
				$ic_config = new \stdClass;
				$ic_config->score_ic = ( $api_config->score_ic == 1 );
				$ic_config->formales = ( $api_config->formales == 1 );
				$ic_config->fiscales = ( $api_config->fiscales == 1 );
				$ic_config->comerciales = ( $api_config->comerciales == 1 );
				$ic_config->contables = ( $api_config->contables == 1 );
				$ic_config->relaciones = ( $api_config->relaciones == 1 );
				$ic_config->relaciones_homonimos = ( $api_config->relaciones_homonimos == 1 );
				$ic_config->legales = ( $api_config->legales == 1 );
				$ic_config->legales_homonimos = ( $api_config->legales_homonimos == 1 );
				$ic_config->bancos_y_cheques = ( $api_config->bancos_y_cheques == 1 );
				$ic_config->comex = ( $api_config->comex == 1 );
				}
			}
			//$html = Misc::CURLCall(env('API_IC_HTML'),http_build_query(['apikey' => env('APIKEY_API_BRIEF'),'cuit' => $cuit,'secciones' => $secciones]));
			//
			return view('front_ic/ic',compact('cuit','cliente','contraparte','status','ic_config'));
		}
	}

	public function grabarICContraparte(){
		if ( isset($_POST['html']) && isset($_POST['contraparte']) && isset($_POST['cliente']) ){
			$cliente = Request::input('cliente');
			$contraparte = Request::input('cuit');
			$html = Request::input('html');
			//
			
		}
		//
		return Response::JSON(['error' => 1,'mensaje' => 'Los datos recibidos son inválidos.']);
	}

}

