<?
require "../../conexion/conectar.php";
require("../../libs/funciones.php");

$conexion = new CONDB();
$conexion->conectar();

$query="select uuid, ArchivoXML, rutaXML_P, fechaRecibido from recibedoce rd inner join receptor r on rd.rfc_receptor = r.rfc inner join tdoctos_r t on r.idReceptor = t.idReceptor and rd.tipoDocto = t.tipoDocto
where rd.fechaDocto > '2019-01-01 00:00:00'";

if($result = mysqli_query($conexion->CONEXION, $query)){
	if(mysqli_num_rows($result) > 0){
		while($tmp=mysqli_fetch_assoc($result)){
			$rutaArchivo = $tmp["rutaXML_P"]."/".substr($tmp["fechaRecibido"],0,4)."/".substr($tmp["fechaRecibido"],5,2)."/".$tmp["ArchivoXML"];
			if(file_exists($rutaArchivo)){
				$xml = simplexml_load_string(file_get_contents($rutaArchivo));

				$prefijo = $xml->getNamespaces(true);
				$xml->registerXPathNamespace("cfdi",$prefijo["cfdi"]);
				$xml->registerXPathNamespace("tfd",$prefijo["tfd"]);

				$xRegimenFiscalEmisor = $xml->xpath("//cfdi:Comprobante//cfdi:Emisor[@RegimenFiscal]");
				$RegimenFiscalEmisor = $xRegimenFiscalEmisor[0]["RegimenFiscal"];
				// echo $RegimenFiscalEmisor;exit;
				if($RegimenFiscalEmisor != ""){
					$qUpdate = "update recibedoce set RegimenFiscalEmisor = '".$RegimenFiscalEmisor."' where uuid='".$tmp["uuid"]."'";
					if(!mysqli_query($conexion->CONEXION, $qUpdate)){
						writeLog("sincronizaRegimenFiscalEmisorCFDI","Error update: ".mysqli_error($conexion->CONEXION),1,1);
					}else{
						writeLog("sincronizaRegimenFiscalEmisorCFDI","Update: ".$tmp["uuid"],0,1);
					}
				}else{
					writeLog("sincronizaRegimenFiscalEmisorCFDI"," Error: ".$rutaArchivo." sin RegimenFiscal",0,1);
				}
			}else{
				writeLog("sincronizaRegimenFiscalEmisorCFDI"," Error: ".$rutaArchivo." no existe",0,1);
			}
			echo $rutaArchivo."<br>";
		}
	}else{
		writeLog("sincronizaRegimenFiscalEmisorCFDI"," Error: No se encontraron registros",1,1);
	}
}else{
	writeLog("sincronizaRegimenFiscalEmisorCFDI"," Error: ".mysqli_error($conexion->CONEXION),1,0);
}

function writeLog($nombreArchivo, $mensaje, $log, $debug){
	$logArchivo = $nombreArchivo."_".date("Ymd").".log";
	$debugArchivo = $nombreArchivo."_".date("Ymd").".debug";
	if($log == 1){
		if(file_exists($logArchivo)){$fp = fopen($logArchivo,"a+");}else{$fp = fopen($logArchivo,"w+");}
		$fecha = date("Y-m-d H:i:s");
		fwrite($fp,"\r\n".$fecha." -> ".$mensaje);
		fclose($fp);
	}
	if($debug == 1){
		if(file_exists($debugArchivo)){$fp = fopen($debugArchivo,"a+");}else{$fp = fopen($debugArchivo,"w+");}
		$fecha = date("Y-m-d H:i:s");
		fwrite($fp,"\r\n".$fecha." -> ".$mensaje);
		fclose($fp);
	}
}

?>
