<?
session_name('portal_absa');
session_start();
require("../../conexion/conectar.php");
require("../../libs/funciones.php");

if(!$TOLERANCIA_COMPENSADO_PAGADO = getINI("../../config.ini","TOLERANCIA_COMPENSADO_PAGADO=")){
	$TOLERANCIA_COMPENSADO_PAGADO =.5;
}

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

$statusPagos="";
for($i=0; $i < count($_POST['status_pago_buscar_nppcfdi']); $i++){
	if($statusPagos == "")
		$statusPagos = "'".$_POST['status_pago_buscar_nppcfdi'][$i]."'";
	else
		$statusPagos .= ",'".$_POST['status_pago_buscar_nppcfdi'][$i]."'";
}

if(strtoupper(trim($_SESSION['usuario_p_prov_absa'])) == "ADMIN"){
	$rfcreceptor = $_REQUEST['RFCReceptor'];
}else{
	$rfcreceptor = $_SESSION['RFC_RECEPTOR_PORTAL'];
}

if(!isset($_REQUEST["uuid"])){
	?><script>$j_6.messager.alert("Error","Faltan parametros","error");</script><?exit;
}

//Extraigo Configuracion General de notificaciones
$notificar_fecha_inicio="";
$qConfig = "select notificar_dias,notificar_despuesde,notificar_repetirdias,notificar_correos,notificar_asunto,notificar_correos_cc,notificar_fecha_inicio,tolerancia_NPvsComplemento,tolerancia_NPvsFactura,tolerancia_FacturaPagada,tolerancia_CompensacionEgreso,tolerancia_tipoCambio from configpagina where rfc_receptor='".$rfcreceptor."' limit 1";
if($rConfig = mysqli_query($conexion->CONEXION,$qConfig)){
	if(mysqli_num_rows($rConfig) > 0){
		$tConfig = mysqli_fetch_assoc($rConfig);
		$notificar_fecha_inicio = $tConfig["notificar_fecha_inicio"];
		$tConfig["tolerancia_NPvsComplemento"] = ((float) $tConfig["tolerancia_NPvsComplemento"] == "")? 0.00 : (float) $tConfig["tolerancia_NPvsComplemento"];
		$tConfig["tolerancia_NPvsFactura"] = ((float) $tConfig["tolerancia_NPvsFactura"] == "")? 0.00 : (float) $tConfig["tolerancia_NPvsFactura"];
		$tConfig["tolerancia_FacturaPagada"] = ((float) $tConfig["tolerancia_FacturaPagada"] == "")? 0.00 : (float) $tConfig["tolerancia_FacturaPagada"];
		$tConfig["tolerancia_CompensacionEgreso"] = ((float) $tConfig["tolerancia_CompensacionEgreso"] == "")? 0.00 : (float) $tConfig["tolerancia_CompensacionEgreso"];
		$tConfig["tolerancia_tipoCambio"] = ((float) $tConfig["tolerancia_tipoCambio"] == "")? 0.00 : (float) $tConfig["tolerancia_tipoCambio"];
	}
}

$tConfig["tolerancia_NPvsComplemento"] = (trim($tConfig["tolerancia_NPvsComplemento"]) == "")? 0 : $tConfig["tolerancia_NPvsComplemento"];
$tConfig["tolerancia_NPvsFactura"] = (trim($tConfig["tolerancia_NPvsFactura"]) == "")? 0 : $tConfig["tolerancia_NPvsFactura"];
$tConfig["tolerancia_FacturaPagada"] = (trim($tConfig["tolerancia_FacturaPagada"]) == "")? 0 : $tConfig["tolerancia_FacturaPagada"];
$tConfig["tolerancia_CompensacionEgreso"] = (trim($tConfig["tolerancia_CompensacionEgreso"]) == "")? 0 : $tConfig["tolerancia_CompensacionEgreso"];
$tConfig["tolerancia_tipoCambio"] = (trim($tConfig["tolerancia_tipoCambio"]) == "")? 0 : $tConfig["tolerancia_tipoCambio"];

$q=generaQuery($_REQUEST["serie"],$_REQUEST["serie"],"I CFDI 3.3",$rfcreceptor,$_REQUEST["folio"],$_REQUEST["folio"],$_REQUEST["fecha_emision_inicio"],$_REQUEST["fecha_emision_final"],$_REQUEST["emisor_nombre"],$_REQUEST["emisor_rfc"]);
// echo $_SESSION['query_count_recibedoce'];
if(!$rCount = mysqli_query($conexion->CONEXION,$_SESSION['query_count_recibedoce'])){
	?><script>$j_6.messager.alert("Error","Ocurrio un error al consultar el numero de registros","error.");</script><?exit;
}
if(mysqli_num_rows($rCount) == 0){
	?><script>$j_6.messager.alert("Aviso","No se encontraron registros","info");</script><?exit;
}
$tCount = mysqli_fetch_assoc($rCount);
$count = $tCount["count"];

$limit = 10;

if(isset($_POST["pagina_actual"])){
	$page = $_REQUEST["pagina_actual"];
}else{
	$page = 1;
}

if( $count >0 ) {
	$total_pages = (integer) ceil($count/$limit);
} else {
	$total_pages = 0;
}
if ($page > $total_pages) $page=$total_pages;
if ($limit<0) $limit = 0;
$start = (integer) $limit*$page - $limit;
if ($start<0) $start = 0;

$q .= " limit $start,$limit";

// echo $q;exit;

?>
<?if(trim($_SESSION["sesion_editar_expediente"]) == "1"){?>
<script>
function cambiaStatusComoPagada(uuid){
	var img = $j_6("#img_"+uuid).attr("src");
	if(img.indexOf("ok.png") != -1){
		$j_6.messager.confirm("Confirmar.","<?=utf8_encode("¿")?>Esta seguro de marcar la factura como no pagada?",function(r){
			if(r){
				$j_6.post("formularios/extras/cambia_status_como_pagada.php",{uuid: uuid,status:0},function(data){
					$j_6("#result").html(data);
				});
			}else{
				return false;
			}
		});
	}else{
		$j_6.messager.confirm("Confirmar.","<?=utf8_encode("¿")?>Esta seguro de marcar el pago como correcto?",function(r){
			if(r){
				$j_6.post("formularios/extras/cambia_status_como_pagada.php",{uuid: uuid,status:1},function(data){
					$j_6("#result").html(data);
				});
			}else{
				return false;
			}
		});
	}
}

emisor_rfc = '<?=$_REQUEST["emisor_rfc"]?>';
emisor_nombre = '<?=$_REQUEST["emisor_nombre"]?>';
RFCReceptor = '<?=$_REQUEST["RFCReceptor"]?>';
<?if(count($_POST["status_pago_buscar_nppcfdi"]) > 0){?>
status_pago_buscar_nppcfdi = new Array('<?=$statusPagos?>');
<?}else{?>
	status_pago_buscar_nppcfdi = new Array();	
<?}?>
fecha_emision_inicio = '<?=$_REQUEST["fecha_emision_inicio"]?>';
fecha_emision_final = '<?=$_REQUEST["fecha_emision_final"]?>';
pagina=<?=$page?>;
totalrows=<?=$count?>;
no_paginas=<?=$total_pages?>;
ban_busca=true;
</script>
<?}?>
<?
/*$completaQueryPagos = "";
if($_REQUEST["serie"] != ""){$completaQueryPagos = " and serie='".$_REQUEST["serie"]."'";}
if($_REQUEST["folio"] != ""){$completaQueryPagos .= " and folio='".$_REQUEST["folio"]."'";}
if($_REQUEST["uuid"] != ""){$completaQueryPagos .= " and uuid='".$_REQUEST["uuid"]."'";}
if($_REQUEST["fecha_emision_inicio"] != ""){$completaQueryPagos .= " and fechadocto > '".$_REQUEST["fecha_emision_inicio"]."'";}
if($_REQUEST["fecha_emision_final"] != ""){$completaQueryPagos .= " and fechadocto < '".$_REQUEST["fecha_emision_final"]."'";}
if($_REQUEST["emisor_nombre"] != ""){$completaQueryPagos .= " and nombreemi like '%".$_REQUEST["emisor_nombre"]."%'";}
if($_REQUEST["emisor_rfc"] != ""){$completaQueryPagos .= " and rfcemisor < '".$_REQUEST["emisor_rfc"]."'";}

if($_SESSION['todo_RFC_p_prov_absa'] == "SI"){
	$complementoQuery="";
	$permisosComplemento=$_SESSION['permisos_p_prov_absa'];
}else{
	$complementoQuery="and rfcEmisor='".$_SESSION['rfc_cliente_p_prov_absa']."'";
}

$qRecibeDoce = "select rfcemisor,serie,folio,uuid,fechaDocto,tipomoneda as moneda,tipocambio as tipocambio,nombreemi,total,marcar_como_pagada,formadepago, 
(select doce.fecha as fecha from pago_documentos_ref p inner join doce ON p.doce_uuid=doce.adicionalA where uuidCFDIRelacionado=recibedoce.uuid and doce.status <>'C' order by fecha desc limit 1)
as FechaNP
from recibedoce where status not in('C','R') and tipodocto='I CFDI 3.3' and  rfc_receptor='$rfcreceptor' $completaQueryPagos $complementoQuery $permisosComplemento";*/



if(!$rRecibeDoce = mysqli_query($conexion->CONEXION,$q)){
	?><script>$j_6.messager.alert("Error","Ocurrio un error al consultar los documentos.","error.");</script><?exit;
}
if(mysqli_num_rows($rRecibeDoce) <= 0){
	?><script>$j_6.messager.alert("Error","No se encontraron documentos.","error.");</script><?exit;
}
while($tRecibeDoce = mysqli_fetch_array($rRecibeDoce,MYSQLI_ASSOC)){
	
	/*if($notificar_fecha_inicio != ""){
		if( str_replace(":","",str_replace(" ","",str_replace("-","",$tRecibeDoce["fechaDocto"]))) < str_replace(":","",str_replace(" ","",str_replace("-","",$notificar_fecha_inicio))) ){
			if(trim($tRecibeDoce["FechaNP"]) != ""){
				if( str_replace(":","",str_replace(" ","",str_replace("-","",$tRecibeDoce["FechaNP"]))) < str_replace(":","",str_replace(" ","",str_replace("-","",$notificar_fecha_inicio))) ){
					continue;
				}
			}else{
				continue;
			}
		}
	}*/
	
	//$montoTotalCompensado = getMontoCompensado($tRecibeDoce["uuid"]);
	$montoTotalCompensado = $tRecibeDoce["totalIngresoCompensado"];
	$sumaPagadoEnPago=0.00;
	$sumaPagadoEnComplemento=0.00;
	$totalAPagarEnPago=0.00;
	$totalAPagarEnComplemento=0.00;
	?><table width="98%" bgcolor="white" style="border: 5px #DDDDDD solid" id="cfdi_<?=$tRecibeDoce["uuid"]?>">
		<tr>
			<th style="background-color: #DDDDDD; text-align: center" colspan="7">I CFDI 3.3</th>
		</tr>
		<!--<tr class="ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all">-->
		<tr style="background-color: #DDDDDD; text-align: center">
			<td>Proveedor</td>
			<td>Serie</td>
			<td>Folio</td>
			<td>UUID</td>
			<td>Total</td>
			<td>Moneda</td>
			<td>TipoCambio</td>
		</tr>
		<!--<tr class="ui-accordion-header ui-helper-reset ui-state-default ui-corner-all ui-accordion-icons">-->
		<tr>
			<!--<td></td>-->
			<td><?=$tRecibeDoce["nombreemi"]?></td>
			<td><?=$tRecibeDoce["serie"]?></td>
			<td><?=$tRecibeDoce["folio"]?></td>
			<td><?=$tRecibeDoce["uuid"]?></td>
			<td><?=$tRecibeDoce["total"]?></td>
			<td><?=$tRecibeDoce["tipoMoneda"]?></td>
			<td><?=$tRecibeDoce["TipoCambio"]?></td>
		</tr>
		<?
			$qMontosAplicados = "select d.serie as Dserie,d.folio as Dfolio,d.adicionalA as Duuid,d.total as Dtotal,d.adicionalB as Dformadepago,pdr.uuidcfdirelacionado,pdr.monto as PDRmontoPago,pdr.numparcialidad as PDRnumparcialidad,pdr.tipocambio as PDRtipocambio,pdr.moneda as PDRmoneda,pdr.MetodoDePago,
			rpdr.tipocambiodr as RPDRtipocambio,rpdr.monedadr as RPDRmoneda,rpdr.imppagado as RPDRimpagado,rpdr.NumParcialidad as RPDRnumparcialidad,
			r.nombreemi,r.serie,r.folio,
			rdp.MonedaP as RDPmoneda,rdp.Monto as RDPmonto,rdp.recibedoce_UUID,rdp.TipoCambioP as RDPtipocambio,rdp.formadepago as RDPformadepago
			from 
			doce d inner join
			pago_documentos_ref pdr ON d.adicionalA=pdr.doce_uuid
			left join recibedoce_pagos_docto_relacionado rpdr 
			ON pdr.doce_uuid = rpdr.doce_uuid and pdr.uuidcfdirelacionado = rpdr.uuidcfdirelacionado and (pdr.numparcialidad = rpdr.numparcialidad or pdr.numparcialidad <> rpdr.numparcialidad)
			left join recibedoce_pagos rdp ON rpdr.recibedoce_pagos_id = rdp.recibedoce_pagos_id 
			left join recibedoce r on rpdr.uuidcfdirelacionado = r.uuid where pdr.uuidCFDIRelacionado='".$tRecibeDoce["uuid"]."' and d.status <> '0'";
			
			if(!$rMontosAplicados = mysqli_query($conexion->CONEXION,$qMontosAplicados)){
				echo mysqli_error($conexion->CONEXION);
				?><script>$j_6.messager.alert("Error","Ocurrio un error al consultar los documentos.","error.");</script><?exit;
			}
			if(mysqli_num_rows($rMontosAplicados) <= 0){
				?>
				<tr>
					<td colspan="7">
						<table width="98%" bgcolor="white" style="border: 2px #DDDDDD solid">
							<tr>
								<th style="background-color: #fcfbe5; text-align: center"><img id="img_<?=$tRecibeDoce["uuid"]?>" src="Imagenes/Attention_A.png"/></th>
							</tr>
						</table>
						<table width="98%" bgcolor="white" style="border: 2px #DDDDDD solid">
							<tr>
								<td>
									<a href="#" id="lbl_<?=$tRecibeDoce["uuid"]?>" onclick="cambiaStatusComoPagada('<?=$tRecibeDoce["uuid"]?>')" >Marcar como pagada.</a>
								</td>
							</tr>
						</table>
					</td>
				</tr>
				</table>
		<?
				continue;
			}
		?>
		<tr>
			<td style="padding: 20px 20px 20px 20px" colspan="6">
				<table width="98%" bgcolor="white" style="border: 2px #DDDDDD solid">
					<tr>
						<th style="background-color: #DDDDDD; text-align: center" colspan="12">PAGOS AL DOCUMENTO</th>
					</tr>
					<tr style="color: #FFFFFF">
						<th style="background-color: #2476af; text-align: center" colspan="7">Pago / I CFDI 3.3</th>
						<th style="background-color: #000000; text-align: center" colspan="5">Complemento / I CFDI 3.3</th>
					</tr>
					<tr style="color: #FFFFFF">
						<td style="background-color: #2476af; text-align: center">Serie</td>
						<td style="background-color: #2476af; text-align: center">Folio</td>
						<!--<td>UUID</td>-->
						<td style="background-color: #2476af; text-align: center">Forma de pago</td>
						<td style="background-color: #2476af; text-align: center">Parcialidad</td>
						<td style="background-color: #2476af; text-align: center">Tipo Cambio</td>
						<td style="background-color: #2476af; text-align: center">Moneda</td>
						<td style="background-color: #2476af; text-align: center">Monto</td>
						<td style="background-color: #000000; text-align: center">Forma de pago</td>
						<td style="background-color: #000000; text-align: center">Parcialidad</td>
						<td style="background-color: #000000; text-align: center">Tipo Cambio</td>
						<td style="background-color: #000000; text-align: center">Moneda</td>
						<td style="background-color: #000000; text-align: center">Monto</td>
					</tr>
	<?
	$con=0;
	$tdEstiloPagoTotal="";
	$banIncorrecto=false;
	$sumaPagadoEnComplemento=0.00;
	$sumaPagadoEnPago=0.00;
	while($tMontosAplicados = mysqli_fetch_array($rMontosAplicados,MYSQLI_ASSOC)){
		
		$sumaPagadoEnComplemento+=$tMontosAplicados["RPDRimpagado"];
		$sumaPagadoEnPago+=$tMontosAplicados["PDRmontoPago"];
		$con++;
		$res = $con%2;
		$trEstilo="";
		if($res == 0)
			$trEstilo = "style='background-color: #999999'";
		
		$tdEstiloMonto = "";
		$tdEstiloTipoCambio = "";
		$tdEstiloMoneda = "";
		$tdEstiloParcialidad = "";
		$tdEstiloFormaDePago = "";
		if((float) $tMontosAplicados["PDRmontoPago"] != (float) $tMontosAplicados["RPDRimpagado"]){
			$diferencia = (float) $tMontosAplicados["PDRmontoPago"] - (float) $tMontosAplicados["RPDRimpagado"];
			if($diferencia < 0){
				$diferencia = $diferencia * -1;
			}
			
			if((float) $diferencia > (float) $tConfig["tolerancia_NPvsComplemento"]){
				$tdEstiloMonto = "style='background-color: red'";
				$banIncorrecto=true;
			}else{
				$tdEstiloMonto = "style='background-color: orange'";
			}
			// $tdEstiloMonto="style='background-color: red'";
			// $banIncorrecto=true;
		}
		if((float) $tMontosAplicados["PDRtipocambio"] != (float) $tMontosAplicados["RPDRtipocambio"]){
			$diferencia = (float) $tMontosAplicados["PDRtipocambio"] - (float) $tMontosAplicados["RPDRtipocambio"];
			if($diferencia < 0){
				$diferencia = $diferencia * -1;
			}
			
			if((float) $diferencia > (float) $tConfig["tolerancia_tipoCambio"]){
				$tdEstiloTipoCambio = "style='background-color: red'";
				$banIncorrecto=true;
			}else{
				$tdEstiloTipoCambio = "style='background-color: orange'";
			}
			// $tdEstiloTipoCambio="style='background-color: red'";
			// $banIncorrecto=true;
			
		}
		if($tMontosAplicados["PDRmoneda"] != $tMontosAplicados["RPDRmoneda"]){
			$tdEstiloMoneda="style='background-color: red'";
			$banIncorrecto=true;
			
		}
		if($tMontosAplicados["PDRnumparcialidad"] != $tMontosAplicados["RPDRnumparcialidad"]){
			$tdEstiloParcialidad="style='background-color: red'";
			$banIncorrecto=true;
		}
		if($tMontosAplicados["Dformadepago"] != $tMontosAplicados["RDPformadepago"]){
			$tdEstiloFormaDePago="style='background-color: red'";
			$banIncorrecto=true;
		}
		?>
					<tr <?=$trEstilo?>>
						<td><?=$tMontosAplicados["Dserie"]?></td>
						<td><?=$tMontosAplicados["Dfolio"]?></td>
						<!--<td><?=$tMontosAplicados["Duuid"]?></td>-->
						<td <?=$tdEstiloFormaDePago?>><?=$tMontosAplicados["Dformadepago"]?></td>
						<td <?=$tdEstiloParcialidad?>><?=$tMontosAplicados["PDRnumparcialidad"]?></td>
						<td <?=$tdEstiloTipoCambio?>><?=$tMontosAplicados["PDRtipocambio"]?></td>
						<td <?=$tdEstiloMoneda?>><?=$tMontosAplicados["PDRmoneda"]?></td>
						<td <?=$tdEstiloMonto?>><?=$tMontosAplicados["PDRmontoPago"]?></td>
						<td <?=$tdEstiloFormaDePago?>><?=$tMontosAplicados["RDPformadepago"]?></td>
						<td <?=$tdEstiloParcialidad?>><?=$tMontosAplicados["RPDRnumparcialidad"]?></td>
						<td <?=$tdEstiloTipoCambio?>><?=$tMontosAplicados["RPDRtipocambio"]?></td>
						<td <?=$tdEstiloMoneda?>><?=$tMontosAplicados["RPDRmoneda"]?></td>
						<td <?=$tdEstiloMonto?>><?=$tMontosAplicados["RPDRimpagado"]?></td>
					</tr>
			
		<?
		
		
	}
	
	//Multiplico por 1000000 para sacar la parte entera y poder comparar enteros, ya que con decimales hay problemas
	$sumaPagadoEnPago1000000 = $sumaPagadoEnPago * 1000000;
	$sumaPagadoEnComplemento1000000 = $sumaPagadoEnComplemento * 1000000;
	$arrSumaPagadoEnPago1000000 = explode(".",$sumaPagadoEnPago1000000);
	$arrSumaPagadoEnComplemento1000000 = explode(".",$sumaPagadoEnComplemento1000000);
	
	// if($sumaPagadoEnPago != $sumaPagadoEnComplemento){
	if($arrSumaPagadoEnPago1000000[0] != $arrSumaPagadoEnComplemento1000000[0]){
		$diferencia = (float) $sumaPagadoEnPago - (float) $sumaPagadoEnComplemento;
		if($diferencia < 0){
			$diferencia = $diferencia * -1;
		}
		
		if((float) $diferencia > (float) $tConfig["tolerancia_NPvsComplemento"]){
			$tdEstiloPagoTotal = "style='text-align: right; background-color: red'";
			$banIncorrecto=true;
		}else{
			$tdEstiloPagoTotal = "style='text-align: right; background-color: orange'";
		}
		// $tdEstiloPagoTotal="style='background-color: red'";
		// $banIncorrecto=true;
	}
	//echo $tRecibeDoce["total"]." - ".$sumaPagadoEnPago." - ".$montoTotalCompensado;
	$totalAPagarEnPago = $tRecibeDoce["total"] - ($sumaPagadoEnPago + $montoTotalCompensado);
	$totalAPagarEnComplemento = $tRecibeDoce["total"] - ($sumaPagadoEnComplemento + $montoTotalCompensado);
	
	if($totalAPagarEnPago > 0){
		if((float) $totalAPagarEnPago > (float) $tConfig["tolerancia_FacturaPagada"]){
			$tdEstiloPagoTotal = "style='text-align: right; background-color: red'";
			$banIncorrecto=true;
		}else{
			$tdEstiloPagoTotal = "style='text-align: right; background-color: orange'";
		}
		// $tdEstiloPagoTotal="style='background-color: red'";
		// $banIncorrecto=true;
	}
	if($totalAPagarEnComplemento > 0){
		if((float) $totalAPagarEnComplemento > (float) $tConfig["tolerancia_FacturaPagada"]){
			$tdEstiloPagoTotal = "style='text-align: right; background-color: red'";
			$banIncorrecto=true;
		}else{
			$tdEstiloPagoTotal = "style='text-align: right; background-color: orange'";
		}
		// $tdEstiloPagoTotal="style='background-color: red'";
		// $banIncorrecto=true;
	}
	?>
					<tr>
						<th style="text-align: right" colspan="5">Total Pagado</th>
						<!--<th colspan="2" <?=$tdEstiloPagoTotal?>><?=$sumaPagadoEnPago?></th>-->
						<th colspan="2" <?=$tdEstiloPagoTotal?>><?=$tRecibeDoce["totalPagoDocumentosRef"]?></th>
						<th style="text-align: right" colspan="4">Total Pagado</th>
						<th colspan="2" <?=$tdEstiloPagoTotal?>><?=$tRecibeDoce["ImpPagadoComplemento"]?></th>
						<!--<th colspan="2" <?=$tdEstiloPagoTotal?>><?=$sumaPagadoEnComplemento?></th>-->
					</tr>
					<tr>
						<th style="text-align: right" colspan="5">Total Compensado</th>
						<!--<th style="text-align: right" colspan="2"><?=$montoTotalCompensado?></th>-->
						<th style="text-align: right" colspan="2"><?=$tRecibeDoce["totalIngresoCompensado"]?></th>
						<th style="text-align: right" colspan="4"></th>
						<th style="text-align: right" colspan="2"></th>
					</tr>
					<tr>
						<?if($totalAPagarEnPago < 0){$totalAPagarEnPago = $totalAPagarEnPago*-1;}?>
						<?if($totalAPagarEnComplemento < 0){$totalAPagarEnComplemento = $totalAPagarEnComplemento*-1;}?>
						<th style="text-align: right" colspan="5">Total a Pagar</th>
						<th style="text-align: right" colspan="2"><?=number_format($totalAPagarEnPago,2,".","")?></th>
						<th style="text-align: right" colspan="4">Total a Pagar</th>
						<th style="text-align: right" colspan="2"><?=number_format($totalAPagarEnComplemento,2,".","")?></th>
					</tr>
				</table>
			</td>
			<?if($banIncorrecto == true){?>
				<td>
					<?if($tRecibeDoce["marcar_como_pagada"] == "0"){?>
						<table width="98%" bgcolor="white" style="border: 2px #DDDDDD solid">
							<tr>
								<th style="background-color: #fcfbe5; text-align: center"><img id="img_<?=$tRecibeDoce["uuid"]?>" src="Imagenes/Attention_A.png"/></th>
							</tr>
							<tr>
								<td>
									<a href="#" id="lbl_<?=$tRecibeDoce["uuid"]?>" onclick="cambiaStatusComoPagada('<?=$tRecibeDoce["uuid"]?>')" >Marcar como pagada.</a>
								</td>
							</tr>
						</table>
					<?}else{?>
						<table width="98%" bgcolor="white" style="border: 2px #DDDDDD solid">
							<tr>
								<th style="background-color: #fcfbe5; text-align: center"><img id="img_<?=$tRecibeDoce["uuid"]?>" src="Imagenes/ok.png"/></th>
							</tr>
							<tr>
								<td>
									<a href="#" id="lbl_<?=$tRecibeDoce["uuid"]?>" onclick="cambiaStatusComoPagada('<?=$tRecibeDoce["uuid"]?>')" >Marcar como NO pagada.</a>
								</td>
							</tr>
						</table>
					<?}?>
				</td>
			<?}else{?>
				<td>
					<table width="98%" bgcolor="white" style="border: 2px #DDDDDD solid">
						<tr>
							<th style="background-color: #fcfbe5; text-align: center"><img src="Imagenes/ok.png"/></th>
						</tr>
					</table>
				</td>
			<?}?>
		</tr>
	</table><?
}

function generaQuery($serieI,$serieF,$doc,$rfcReceptor,$folioI,$folioF,$fechaI,$fechaF,$busca_nombre,$busca_rfc){
global $conexion,$notificar_fecha_inicio,$tConfig;

if(trim($notificar_fecha_inicio) == "" || $notificar_fecha_inicio=="0000-00-00 00:00:00"){
	$notificar_fecha_inicio = "2018-01-01 00:00:00";
}
	if($_SESSION['todo_RFC_p_prov_absa'] == "SI"){
		$complementoQuery="";
		$permisosComplemento=$_SESSION['permisos_p_prov_absa'];
	}else{
		$complementoQuery=" rfcEmisor='".$_SESSION['rfc_cliente_p_prov_absa']."'";
	}

	
	$rfcQuery = "";
	if($rfcReceptor != ""){
		$rfcQuery="rfc_receptor='$rfcReceptor'";
	}
	
	
	/*if(trim($_REQUEST['status']) == ""){
		$filtroStatusPagoComplemento = " Having statusNP in(0,1,4) or statusPCFDI in(0,1,4)";
	}elseif(trim($_REQUEST['status']) == "FALTANTEPAGO"){
		$filtroStatusPagoComplemento = " Having statusNP in(0,1) or statusPCFDI in(0,1)";
	}elseif(trim($_REQUEST['status']) == "YAPAGADO"){
		$filtroStatusPagoComplemento = " Having statusNP = 4 and statusPCFDI = 4 or marcar_como_pagada = 1";
	}*/
	
	// ------------- INICIA STATUS PAGO ------------------
		
		
		$filtroStatusPagoComplemento="";
		if(isset($_POST['status_pago_buscar_nppcfdi'])){
            $filtroStatusPagoComplemento=" Having ";
            for($i=0; $i < count($_POST['status_pago_buscar_nppcfdi']); $i++){
                if(trim($_POST['status_pago_buscar_nppcfdi'][$i]) != ""){
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "0"){
					   //$filtroStatusPagoComplemento.= " (totalPagoDocumentosRef = 0 or totalPagoDocumentosRef is null)";
					   $filtroStatusPagoComplemento.= " statusNP = 0";
				   }
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "1"){
					   if($filtroStatusPagoComplemento != " Having "){
							// $filtroStatusPagoComplemento.= " or totalPagoDocumentosRef > 0";
							$filtroStatusPagoComplemento.= " or statusNP = 1";
					   }else{
						   // $filtroStatusPagoComplemento.= "totalPagoDocumentosRef > 0";
						   $filtroStatusPagoComplemento.= "statusNP = 1";
					   }
				   }
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "2"){
					   if($filtroStatusPagoComplemento != " Having "){
							// $filtroStatusPagoComplemento.= " or totalPago = total";
							$filtroStatusPagoComplemento.= " or statusNP = 4";
					   }else{
						   // $filtroStatusPagoComplemento.= "totalPago = total";
						   $filtroStatusPagoComplemento.= "statusNP = 4";
					   }
				   }
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "3"){
					   if($filtroStatusPagoComplemento != " Having "){
							// $filtroStatusPagoComplemento.= " or totalPago > total";
							$filtroStatusPagoComplemento.= " or statusNP = 2";
					   }else{
						   // $filtroStatusPagoComplemento.= "totalPago > total";
						   $filtroStatusPagoComplemento.= "statusNP = 2";
					   }
				   }
				   //---------------------------------
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "4"){
					   if($filtroStatusPagoComplemento != " Having "){
							// $filtroStatusPagoComplemento.= " or (ImpPagadoComplemento = 0 or ImpPagadoComplemento is null)";
							$filtroStatusPagoComplemento.= " or statusPCFDI = 0";
					   }else{
						   // $filtroStatusPagoComplemento.= "(ImpPagadoComplemento = 0 or ImpPagadoComplemento is null)";
						   $filtroStatusPagoComplemento.= "statusPCFDI = 0";
					   }
				   }
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "5"){
					   if($filtroStatusPagoComplemento != " Having "){
							// $filtroStatusPagoComplemento.= " or ImpPagadoComplemento > 0";
							$filtroStatusPagoComplemento.= " or statusPCFDI = 1";
					   }else{
						   // $filtroStatusPagoComplemento.= "ImpPagadoComplemento > 0";
						   $filtroStatusPagoComplemento.= "statusPCFDI = 1";
					   }
				   }
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "6"){
					   if($filtroStatusPagoComplemento != " Having "){
							// $filtroStatusPagoComplemento.= " or impPagadoComplemento = total";
							$filtroStatusPagoComplemento.= " or statusPCFDI = 4";
					   }else{
						   // $filtroStatusPagoComplemento.= "impPagadoComplemento = total";
						   $filtroStatusPagoComplemento.= "statusPCFDI = 4";
					   }
				   }
                   if($_POST['status_pago_buscar_nppcfdi'][$i] == "7"){
					   if($filtroStatusPagoComplemento != " Having "){
							// $filtroStatusPagoComplemento.= " or impPagadoComplemento > total";
							$filtroStatusPagoComplemento.= " or statusPCFDI = 2";
					   }else{
						   // $filtroStatusPagoComplemento.= "impPagadoComplemento > total";
						   $filtroStatusPagoComplemento.= "statusPCFDI = 2";
					   }
				   }
				   if($_POST['status_pago_buscar_nppcfdi'][$i] == "8"){
					   if($filtroStatusPagoComplemento != " Having "){
							$filtroStatusPagoComplemento.= " or statusNP = 7";
					   }else{
						   $filtroStatusPagoComplemento.= "statusNP = 7";
					   }
				   }
				   if($_POST['status_pago_buscar_nppcfdi'][$i] == "9"){
					   if($filtroStatusPagoComplemento != " Having "){
							$filtroStatusPagoComplemento.= " or statusNP = 5";
					   }else{
						   $filtroStatusPagoComplemento.= "statusNP = 5";
					   }
				   }
				   if($_POST['status_pago_buscar_nppcfdi'][$i] == "10"){
					   if($filtroStatusPagoComplemento != " Having "){
							$filtroStatusPagoComplemento.= " or statusNP = 6";
					   }else{
						   $filtroStatusPagoComplemento.= "statusNP = 6";
					   }
				   }
                }
            }
            
            if(trim($filtroStatusPago) != "")
                $filtroStatusPago.=" )";
        }
		// --------------- TERMINA STATUS PAGO ---------------
				   
        
	$comRFCRECEPTOR="";
	if(trim($_SESSION["RES_RFC_REFERENCIA"]) == "SI"){
		if(trim(strtoupper($_SESSION['usuario_p_prov_absa'])) != "ADMIN"){
			//$comRFCRECEPTOR="rfc_receptor='".$_SESSION['sesion_ref_rfc_receptor']."' and";
			//$comRFCRECEPTOR="rfc_receptor in ('".str_replace(",","','",$_SESSION['sesion_ref_rfc_receptor'])."') and";
			$comRFCRECEPTOR="rfc_receptor='".$_SESSION['RFC_RECEPTOR_PORTAL']."'";
		}
	}
	
	$comSerie="";
	$comFecha="";
	
	if($fechaI != ""){
		$comFecha = "fechaDocto >= '$fechaI 00:00:00'";
	}
	if($fechaF != ""){
		if($comFecha != ""){$comFecha.=" and ";}
		$comFecha .= "fechaDocto <= '$fechaF 23:59:59'";
	}
	if(trim($_REQUEST["uuid"]) != ""){
		$qUUID = "";
		if(trim($_REQUEST["uuid"]) != ""){
			$qUUID="uuid like '%".trim($_REQUEST["uuid"])."%'";
		}
	}
	if(trim($_REQUEST["serie"]) != ""){
		$comSerie = "serie='".$_REQUEST["serie"]."'";
	}	
	if(trim($_REQUEST["folio"]) != ""){
		$comFolio = "folio='".$_REQUEST["serie"]."'";
	}
	
	
	$comBuscaNombre = "";
	if($busca_nombre != ""){
		$comBuscaNombre = " and (nombreemi like '%$busca_nombre%' or rfcemisor like '%$busca_nombre%')";
	}
		
		$where = "where tipodocto='I CFDI 3.3'";
		
		$where .= $comBuscaNombre;
		if($rfcQuery != ""){if($where != ""){$rfcQuery = " and ".$rfcQuery;}}
		$where .=$rfcQuery;
		if($complementoQuery != ""){if($where != ""){$complementoQuery = " and ".$complementoQuery;}}
		$where .=$complementoQuery;
		if($comSerie != ""){if($where != ""){$comSerie = " and ".$comSerie;}}
		$where .=$comSerie;
		if($comFolio != ""){if($where != ""){$comFolio = " and ".$comFolio;}}
		$where .=$comFolio;
		if($comRFCRECEPTOR != ""){if($where != ""){$comRFCRECEPTOR = " and ".$comRFCRECEPTOR;}}
		$where .=$comRFCRECEPTOR;
		if($comFecha != ""){if($where != ""){$comFecha = " and ".$comFecha;}}
		$where .=$comFecha;
		if($permisosComplemento != ""){if($where == ""){$permisosComplemento = str_replace("or ","",str_replace("and ","",$permisosComplemento));}}
		$where .= $permisosComplemento;
		if($qUUID != ""){if($where != ""){$qUUID = " and ".$qUUID;}}
		$where .=$qUUID;
		
		
		
		$generaQuery="select *,
		if(length(MetodoDePago) > 3,99,getStatusNP(tipoComprobante,MetodoDePago,numReferenciasPagoDocumentosRef,vigenciaPUE,SoloFechaNP,totalPagoDocumentosRef,totalIngresoCompensado,fechaDocto,'$notificar_fecha_inicio',total,FechaNP,".$tConfig["tolerancia_FacturaPagada"].",marcar_como_pagada)) as statusNP,
		if(length(MetodoDePago) > 3,99,getStatusPCFDI(tipoComprobante,MetodoDePago,impPagadoComplemento,fechaDocto,'$notificar_fecha_inicio',total,".$tConfig["tolerancia_FacturaPagada"].",marcar_como_pagada)) as statusPCFDI
		from (select * from view_recibedocepagos
		$where) as tmp $filtroStatusPagoComplemento";
		
		$_SESSION['query_count_recibedoce']="select count(*) as count from (select *,
		if(length(MetodoDePago) > 3,99,getStatusNP(tipoComprobante,MetodoDePago,numReferenciasPagoDocumentosRef,vigenciaPUE,SoloFechaNP,totalPagoDocumentosRef,totalIngresoCompensado,fechaDocto,'$notificar_fecha_inicio',total,FechaNP,".$tConfig["tolerancia_FacturaPagada"].",marcar_como_pagada)) as statusNP,
		if(length(MetodoDePago) > 3,99,getStatusPCFDI(tipoComprobante,MetodoDePago,impPagadoComplemento,fechaDocto,'$notificar_fecha_inicio',total,".$tConfig["tolerancia_FacturaPagada"].",marcar_como_pagada)) as statusPCFDI
		
		from (select * from view_recibedocepagos
		$where) as tmp $filtroStatusPagoComplemento) as tmp2";
		
	
		// echo $_SESSION['query_count_recibedoce'];exit;
          // echo $generaQuery;exit;
        //echo $_SESSION['query_count_recibedoce'];exit;
	return $generaQuery;
}

?>











