<?php

/*
  Created on : Mayo 26, 2019, 01:14:34 PM
  Author     : Gabriel Hernandez Gonzalez
 */
 	if(!isset($_SESSION)) session_start();
	
	require_once "../core/core_classes.php";
	require_once "../config.php";
	$user = json_decode($_SESSION['user']);

	switch (filter_input(INPUT_POST, 'tipoOperacion')) {

		case 'guardar':
		
			$pNidEmpresa = $user->nidEmpresa;
			$pNombre = filter_input(INPUT_POST, 'pNombre');
			$pPatente = filter_input(INPUT_POST, 'pPatente');
			$pToken = filter_input(INPUT_POST, 'pToken');			
			$vRfc = filter_input(INPUT_POST, 'vRfc');
			$vDomicilio = filter_input(INPUT_POST, 'vDomicilio');							
			$vNoExterior = filter_input(INPUT_POST, 'vNoExterior');
			$vNoInterior = filter_input(INPUT_POST, 'vNoInterior');
			$vCp = filter_input(INPUT_POST, 'vCp');
			$vTelefono = filter_input(INPUT_POST, 'vTelefono');			
			$vFechaCorte = filter_input(INPUT_POST, 'vFechaCorte');
			$vUsoCfdi = filter_input(INPUT_POST, 'vUsoCfdi');
			$vMetodoPago = filter_input(INPUT_POST, 'vMetodoPago');
			$vFormaPago = filter_input(INPUT_POST, 'vFormaPago');
			$vClavePais = filter_input(INPUT_POST, 'vClavePais');
			$vIdTrip = filter_input(INPUT_POST, 'vIdTrip');
			$vClaveEstado = filter_input(INPUT_POST, 'vClaveEstado');
			$vClaveMunicipio = filter_input(INPUT_POST, 'vClaveMunicipio');
			$vClaveLocalidad = filter_input(INPUT_POST, 'vClaveLocalidad');
			$vClaveColonia = filter_input(INPUT_POST, 'vClaveColonia');
			$vCorreo = filter_input(INPUT_POST, 'vCorreo');
			
			// get settings
			$stmt = $conn->prepare("call clientes_insertar($pNidEmpresa,'$vRfc','$pNombre','$pPatente','$pToken','$vDomicilio','$vNoExterior','$vNoInterior','$vTelefono','$vCp',$vClavePais,'$vClaveEstado','$vClaveMunicipio','$vClaveLocalidad','$vClaveColonia','$vIdTrip',$vFormaPago,$vMetodoPago,$vUsoCfdi,$vFechaCorte,'$vCorreo')");
			$stmt->execute();			
						
			$row = $stmt->fetch(PDO::FETCH_ASSOC);
			$transaccion = $row['Transaccion'];
			$mensaje = $row['Mensaje'];
			
			$response = new root_response;
			$response->transaccion = $transaccion;
			$response->mensaje = $mensaje;
			
			echo json_encode($response);
			
			break;
			
		case 'actualizar':

			$pNidEmpresa = $user->nidEmpresa;
			$pNid = filter_input(INPUT_POST, 'pNid');
			$pNombre = filter_input(INPUT_POST, 'pNombre');
			$pPatente = filter_input(INPUT_POST, 'pPatente');
			$pToken = filter_input(INPUT_POST, 'pToken');			
			$vRfc = filter_input(INPUT_POST, 'vRfc');
			$vDomicilio = filter_input(INPUT_POST, 'vDomicilio');							
			$vNoExterior = filter_input(INPUT_POST, 'vNoExterior');
			$vNoInterior = filter_input(INPUT_POST, 'vNoInterior');
			$vCp = filter_input(INPUT_POST, 'vCp');
			$vTelefono = filter_input(INPUT_POST, 'vTelefono');			
			$vFechaCorte = filter_input(INPUT_POST, 'vFechaCorte');
			$vUsoCfdi = filter_input(INPUT_POST, 'vUsoCfdi');
			$vMetodoPago = filter_input(INPUT_POST, 'vMetodoPago');
			$vFormaPago = filter_input(INPUT_POST, 'vFormaPago');
			$vClavePais = filter_input(INPUT_POST, 'vClavePais');
			$vIdTrip = filter_input(INPUT_POST, 'vIdTrip');
			$vClaveEstado = filter_input(INPUT_POST, 'vClaveEstado');
			$vClaveMunicipio = filter_input(INPUT_POST, 'vClaveMunicipio');
			$vClaveLocalidad = filter_input(INPUT_POST, 'vClaveLocalidad');
			$vClaveColonia = filter_input(INPUT_POST, 'vClaveColonia');
			$vCorreo = filter_input(INPUT_POST, 'vCorreo');
			
			// get settings
			$stmt = $conn->prepare("call clientes_actualizar($pNid,$pNidEmpresa,'$vRfc','$pNombre','$pPatente','$pToken','$vDomicilio','$vNoExterior','$vNoInterior','$vTelefono','$vCp',$vClavePais,'$vClaveEstado','$vClaveMunicipio','$vClaveLocalidad','$vClaveColonia','$vIdTrip',$vFormaPago,$vMetodoPago,$vUsoCfdi,'$vFechaCorte','$vCorreo')");
			$stmt->execute();			
						
			$row = $stmt->fetch(PDO::FETCH_ASSOC);
			$transaccion = $row['Transaccion'];
			$mensaje = $row['Mensaje'];
			
			$response = new root_response;
			$response->transaccion = $transaccion;
			$response->mensaje = $mensaje;
			
			echo json_encode($response);
			
			break;
			
		case 'eliminar':

			$pNidEmpresa = $user->nidEmpresa;
			$pNid = filter_input(INPUT_POST, 'pNid');
			$pActivo = filter_input(INPUT_POST, 'pEstado');
			
			// get settings
			$stmt = $conn->prepare("call clientes_estado($pNid,$pNidEmpresa,$pActivo)");
			$stmt->execute();			
						
			$row = $stmt->fetch(PDO::FETCH_ASSOC);
			$transaccion = $row['Transaccion'];
			$mensaje = $row['Mensaje'];
			
			$response = new root_response;
			$response->transaccion = $transaccion;
			$response->mensaje = $mensaje;
			
			echo json_encode($response);
			
			break;			
		case 'consultaXestado':

			$pNidEmpresa = $user->nidEmpresa;
		
			// get settings
			$stmt = $conn->prepare("call clientes_consulta($pNidEmpresa)");
			$stmt->execute();	

			$response = new root_response;
			while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
			{ 
				$respuesta = new core_cliente();
				$respuesta->nid= $row["Id"];
				$respuesta->razonsocial= $row["Nombre"]; 
				$respuesta->patente= $row["Patente"];
				$respuesta->token= $row["Token"];				
				$respuesta->rfc= $row["RFC"];
				$respuesta->domicilio= $row["Domicilio"];	
				$respuesta->exterior= $row["No_Exterior"];
				$respuesta->interior= $row["No_Interior"];	
				$respuesta->telefono= $row["Telefono"];
				$respuesta->cp= $row["CodigoPostal"];
				$respuesta->fechaCorte= $row["FechaCorte"];
				$respuesta->usoCfdi= $row["claveUsoCFDI"];
				$respuesta->metodoPago= $row["claveMetodopago"];
				$respuesta->formaPago= $row["cveformapago"];
				$respuesta->clavePais= $row["Pais"];
				$respuesta->idTrip= $row["NumRegIdTrib"];
				$respuesta->claveEstado= $row["Entidad"];
				$respuesta->claveMunicipio= $row["Municipio"];
				$respuesta->claveLocalidad= $row["Localidad"];
				$respuesta->claveColonia= $row["Colonia"];
			
				$response->datos[] = $respuesta;				
			};
						
			$response->transaccion = "1";
			$response->mensaje = "Ok";
			
			echo json_encode($response);
			
			break;
			
		case 'consultaXnid':

			$pNidEmpresa = $user->nidEmpresa;
			$pNid = filter_input(INPUT_POST, 'pNid');
		
			// get settings
			$stmt = $conn->prepare("call clientes_consultaxId($pNid,$pNidEmpresa)");
			$stmt->execute();	

			$response = new root_response;
			while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
			{ 
				$respuesta = new core_cliente();
				$respuesta->nid = $row["Id"];
				$respuesta->nombre = $row["Nombre"];
				$respuesta->patente = $row["Patente"];
				$respuesta->token = $row["Token"];
				$respuesta->rfc= $row["RFC"];
				$respuesta->domicilio= $row["Domicilio"];	
				$respuesta->exterior= $row["No_Exterior"];
				$respuesta->interior= $row["No_Interior"];	
				$respuesta->telefono= $row["Telefono"];
				$respuesta->cp= $row["CodigoPostal"];
				$respuesta->fechaCorte= $row["FechaCorte"];
				$respuesta->usoCfdi= $row["idUsoCFDI"];
				$respuesta->metodoPago= $row["idMetodopago"];
				$respuesta->formaPago= $row["idFormapago"];
				$respuesta->clavePais= $row["Pais"];
				$respuesta->idTrip= $row["NumRegIdTrib"];
				$respuesta->claveEstado= $row["Entidad"];
				$respuesta->claveMunicipio= $row["Municipio"];
				$respuesta->claveLocalidad= $row["Localidad"];
				$respuesta->claveColonia= $row["Colonia"];
				$respuesta->correo =  $row["Correo"];
				
				$response->datos[] = $respuesta;				
			};
						
			$response->transaccion = "1";
			$response->mensaje = "Ok";
			
			echo json_encode($response);
			
			break;

		case 'consultaCatalogoPaises':
			
				// get settings
				$stmt = $conn->prepare("call setivera_facturacion.pais_consultas()");
				$stmt->execute();	
	
				$response = new root_response;
				while($row = $stmt->fetch(PDO::FETCH_ASSOC)) 
				{ 
					$respuesta = new core_paises();
					$respuesta->nid = $row["CvePais"];
					$respuesta->nombre = $row["NomPais"];

					$response->datos[] = $respuesta;				
				};
							
				$response->transaccion = "1";
				$response->mensaje = "Ok";
				
				echo json_encode($response);
				
				break;				
			
		default:
			echo json_encode(system_get_message(SISTEMA_PARAMETRO_NO_RECONOCIDO));
			break;
	}
        
?>
