<?php
//Obtener Conexion
$con = Conexion::getConexion();

//Obtener la sucursal





if($idAdministrador && $NombreAdministrador && $NombreSucursal && $IdSucursal){
	
	//Consultar si ese domingo en que tope superior se encuentra en semanas habiles
	
	
	$sql = "
  				SELECT 	Rango1,Rango2,Periodo,Semana
  				FROM 	cr_semanashabiles
  				WHERE   Rango2 ='".$fechaBalanceAbierto."'
  				
  				";
	
	$result = mysql_db_query(Conexion::getNameDb(), $sql, $con);
  	
  	if($result){
  		if(mysql_num_rows($result) > 0 ){
			while ($row = mysql_fetch_array($result)){
		  		$Rango1 = $row['Rango1'];
		  		$Rango2 = $row['Rango2'];
		  		$Periodo = $row['Periodo'];
		  		$Semana = $row['Semana'];
		  	}
  		}
   }
	
   //consultar todos los representantes que tienen ese padre
	
	$sql = "
  				SELECT 	IdColaborador,concat(ApellidoPaterno,' ',ApellidoMaterno,', ',Nombres) as NombreColaborador
  				FROM 	cr_colaborador
  				WHERE   IdPadre ='".$idAdministrador."'
  						and IdRol = 'sys.ope'
  						
  						and eliminado = '0'
  					
  				";
  
  	
  	$result = mysql_db_query(Conexion::getNameDb(), $sql, $con);
  	
  	if($result){
  		if(mysql_num_rows($result) > 0 ){
			while ($row = mysql_fetch_array($result)){
		  		//por cada representante debe hacer el calculo por el rango que envia la semana
		  		
		  		$IdColaborador 		= $row['IdColaborador'];
		  		$NombreColaborador 	= $row['NombreColaborador'];
		  		
		  		//Total de Prestamos Nuevo y Cancelados en el Rango de Fechas-----------------------
				$sql = "SELECT 	Estado,count(*) as cantidad
		  				FROM 	cr_prestamo
		  				WHERE   FechaInicio >= '".$Rango1."'
		  						and FechaInicio <= '".$Rango2."'
		  						and IdColaborador = '".$IdColaborador."'
		  						and Origen = 'R'
		  						and eliminado = '0'
		  						and Estado = 'P'
		  						GROUP BY Estado
  				";
				$NPrestamosP = '0';
				$NPrestamosC = '0';
				$CapiltalTrabajoTotalR = '0';
				$CapiltalTrabajoTotalF = '0';
				$SaldoPendiente = '0';
				$CapitalCancelado = '0';
				
				$result2 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
				if($result2){
			  		if(mysql_num_rows($result2) > 0 ){
						while ($row = mysql_fetch_array($result2)){
							if($row['Estado'] == "P"){
								$NPrestamosP = $row['cantidad'];
							}
							
							
						}
			  		}
				}
				
				$sql = "SELECT 	Estado,count(*) as cantidad
		  				FROM 	cr_prestamo
		  				WHERE   FechaCancelacion >= '".$Rango1."'
		  						and FechaCancelacion <= '".$Rango2."'
		  						and IdColaborador = '".$IdColaborador."'
		  						and Origen = 'R'
		  						and eliminado = '0'
		  						and Estado = 'C'
		  						GROUP BY Estado
  				";
				$result2 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
				if($result2){
			  		if(mysql_num_rows($result2) > 0 ){
						while ($row = mysql_fetch_array($result2)){
							
							if($row['Estado'] == "C"){
								$NPrestamosC = $row['cantidad'];
							}
							
						}
			  		}
				}
				//-------------------------------------------------------------------------------------
				
				//Total Capital (Saldo de todos los prestamos que tiene pendiente)-----------------------
				$sql = "SELECT 	Origen ,sum(SaldoPrestamo) as CapiltalTrabajoTotal
		  				FROM 	cr_prestamo
		  				WHERE   IdColaborador = '".$IdColaborador."'
		  						and eliminado = '0'
		  						and estado = 'P'
		  				GROUP BY Origen 
  				";
				$result3 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
				if($result3){
			  		if(mysql_num_rows($result3) > 0 ){
						while ($row = mysql_fetch_array($result3)){
							if($row['Origen'] == 'R' ){
								$CapiltalTrabajoTotalR = $row['CapiltalTrabajoTotal'];							
							}
							if($row['Origen'] == 'F' ){
								$CapiltalTrabajoTotalF = $row['CapiltalTrabajoTotal'];							
							}
						}
			  		}
				}
				//-------------------------------------------------------------------------------------
				
				//Total (Saldo de todos los prestamos EN EL RANGO)-----------------------
				$sql = "SELECT 	sum(SaldoPrestamo) as SaldoPendiente
		  				FROM 	cr_prestamo
		  				WHERE   FechaInicio >= '".$Rango1."'
		  						and FechaInicio <= '".$Rango2."'
		  						and IdColaborador = '".$IdColaborador."'
		  						and Origen = 'R'
		  						and eliminado = '0'
		  						and estado = 'P'
		  				
  				";
				$result4 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
				if($result4){
			  		if(mysql_num_rows($result4) > 0 ){
						while ($row4 = mysql_fetch_array($result4)){
							$SaldoPendiente = $row4['SaldoPendiente'];							
						}
			  		}
				}
				
		
				//-------------------------------------------------------------------------------------
				
				//Total (MontoTotal de todos los prestamos CANCELADOs sin que fueran renovados EN EL RANGO)-----------------------
				$sql = "SELECT 	sum(MontoTotal) as SaldoPendiente
		  				FROM 	cr_prestamo
		  				WHERE   FechaCancelacion >= '".$Rango1."'
		  						and FechaCancelacion <= '".$Rango2."'
		  						and IdColaborador = '".$IdColaborador."'
		  						and Origen = 'R'
		  						and eliminado = '0'
		  						and estado = 'C'
		  						and IdPrestamo not in (
		  							select IdPrestamoReferencia 
		  							from cr_prestamo
		  							where  Origen = 'F'
		  									and eliminado = '0'					
		  						
		  						)
		  				
  				";
				$result55 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
				if($result55){
			  		if(mysql_num_rows($result55) > 0 ){
						while ($row55 = mysql_fetch_array($result55)){
							$CapitalCancelado = $row55['CapitalCancelado'];							
						}
			  		}
				}
				
				//-------------------------------------------------------------------------------------
				
				//PagoTeoricoSemPendiente -- PagoTeoricoSemCancelado --  PagoRealPendiente-- PagoRealCancelado-------------------
				$PagoTeoricoSemCancelado = '0';
				$PagoTeoricoSemPendiente = '0';
				$PagoRealPendiente = '0';
				$PagoRealCancelado = '0';
				$sql = "SELECT 	pr.IdPrestamo as IdPrestamo,CuotaPago,pr.Estado,pr.PeriodicidadPago as PeriodicidadPago, FechaInicio ,FechaVencimiento
		  				FROM 	cr_prestamo pr
		  				left join cr_pago pa on pr.IdPrestamo = pa.IdPrestamo
		  				WHERE   FechaPago >= '".$Rango1."'
		  						and FechaPago < '".$Rango2."'
		  						and pr.IdColaborador = '".$IdColaborador."'
		  						and pr.eliminado = '0'
		  				group by pr.IdPrestamo
		  						
		  						
		  				
  				";
				$result5 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
				if($result5){
			  		if(mysql_num_rows($result5) > 0 ){
						while ($row5 = mysql_fetch_array($result5)){
							$IdPrestamo = $row5['IdPrestamo'];							
							$CuotaPago 	= $row5['CuotaPago'];							
							$Estado 	= $row5['Estado'];							
							$FechaVencimiento   = $row5['FechaVencimiento'];
							$PeriodicidadPago   = $row5['PeriodicidadPago'];
							$sql = "SELECT 	count(*) as NumeroPagos, sum(MontoPago) as montoPago
					  				FROM 	cr_pago pa
					  				WHERE   FechaPago >= '".$Rango1."'
					  						and FechaPago < '".$Rango2."'
					  						and IdPrestamo = '".$IdPrestamo."'
					  						and eliminado = '0'
					  							  				
			  				";
							
							$result6 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
							if($result6){
						  		if(mysql_num_rows($result6) > 0 ){
									while ($row6 = mysql_fetch_array($result6)){
										$NumeroPagos = $row6['NumeroPagos'];
										$montoPago   = $row6['montoPago'];
										
										if($Estado == "C"){
											$diferencia_dias = 0;
											if($Rango1 <= $FechaVencimiento && $Rango2 >= $FechaVencimiento){
												$diferencia_dias = round((( strtotime($FechaVencimiento) - strtotime($Rango1))/ 86400), 0 );

											}
											$PagoTeoricoSemCancelado += round($diferencia_dias*$CuotaPago,2);
											$PagoRealCancelado		 += $montoPago;
											
										}
										if($Estado == "P"){
											if($PeriodicidadPago == "D"){
												if($Rango1 <= $FechaVencimiento && $Rango2 >= $FechaVencimiento){
													$diferencia_dias = round((( strtotime($FechaVencimiento) - strtotime($Rango1))/ 86400), 0 );
													
												}else{
													$diferencia_dias = 6;
												}
											}
											$PagoTeoricoSemPendiente += round($diferencia_dias*$CuotaPago,2);
											$PagoRealPendiente 		 += $montoPago;
										}
										
									}
						  		}
							}
						}
							
			  		}
				}
				
				//-------------------------------------------------------------------------------------
				
				
				//Grabacion por cad representante
									
				$sqlGra = "INSERT INTO `cr_resumen_semanal` (
									`Sucursal` ,
									`NombreSucursal` ,
									`Periodo` ,
									`Semana` ,
									`IdRepresentante` ,
									`NombreRepresentante` ,
									`IdAdministrador` ,
									`NombreAdministrador` ,
									`FInicio` ,
									`FFin` ,
									`NPrestamosP` ,
									`NPrestamosC` ,
									`CapiltalTrabajoTotalR` ,
									`CapiltalTrabajoTotalF` ,
									`SaldoPendiente` ,
									`CapitalCancelado` ,
									`PagoTeoricoSemPendiente` ,
									`PagoTeoricoSemCancelado` ,
									`PagoRealPendiente` ,
									`PagoRealCancelado` ,
									`FechaRegistro` ,
									`UsuarioRegistro` 
									)
									VALUES (
									'$IdSucursal', 
									'$NombreSucursal', 
									'$Periodo', 
									'$Semana', 
									'$IdColaborador', 
									'$NombreColaborador',
									'$idAdministrador', 
									'$NombreAdministrador', 
									'$Rango1', 
									'$Rango2', 
									'$NPrestamosP', 
									'$NPrestamosC', 
									'".round($CapiltalTrabajoTotalR,2)."', 
									'".round($CapiltalTrabajoTotalF,2)."', 
									'".round($SaldoPendiente,2)."', 
									'".round($CapitalCancelado,2)."', 
									'".round($PagoTeoricoSemPendiente,2)."', 
									'".round($PagoTeoricoSemCancelado,2)."', 
									'".round($PagoRealPendiente,2)."', 
									'".round($PagoRealCancelado,2)."', 
									now(),
									'".myUser::getUser()->getUserId()."'
									);";
				
				$result6 = mysql_db_query(Conexion::getNameDb(), $sqlGra, $con);


				
		  	}
		  	
		  	
		  	
  		}
   }
	
}




?>