<?
set_time_limit (3600 );
//define('SF_ROOT_DIR', "C:\\wamp\\www\\credisol");
define('SF_ROOT_DIR', "/home/credunion/public_html/credisol/");

require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'config_core_compile.php');
require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'cache'.DIRECTORY_SEPARATOR.'config_autoload.php');
require_once(SF_ROOT_DIR.DIRECTORY_SEPARATOR.'config'.DIRECTORY_SEPARATOR.'config.php');

$con = Conexion::getConexion();
$link = $con;


$fecha = date('Y-m-d');
//$fecha = '2014-09-01';

function sumaPagos($link,$IdPrestamo,$RangoI,$RangoF){
	global $database;
	$sql = "SELECT Sum(MontoPago) as Monto
			FROM `cr_pago`
			WHERE IdPrestamo = '".$IdPrestamo."'
			AND TipoPago = '1'
			AND (FechaPago >= '$RangoI' AND FechaPago < '$RangoF' )
			";
	//echo $sql;
	$result = mysql_db_query($database['db'], $sql, $link);
	$num_rows = mysql_num_rows($result);
	
	if($num_rows>0){
	  while ($o_valor = mysql_fetch_object($result)) {
		  	
	  		return $o_valor-> Monto;
	  	
		}
	}
	return 0;
}

function diasContabilizados($fecha_i,$fecha_f){
	$dias	= (strtotime($fecha_i)-strtotime($fecha_f))/86400;
	$dias 	= abs($dias); $dias = floor($dias);		
	return $dias+1;
}



//consulta del rango segun la semana
$fecha =  date('Y-m-d', strtotime($fecha ." +7 days"));

$sql = "SELECT *
		FROM `cr_semanashabiles`
		WHERE Rango2 = '$fecha'
		";
echo $sql."<br>";				
$result = mysql_db_query($database['db'], $sql, $link);
$num_rows = mysql_num_rows($result);

if($num_rows>0){
  while ($o_valor = mysql_fetch_object($result)) {
	  	
  		$Rango1	= $o_valor->Rango1;
  		$Rango2	= $o_valor->Rango2;
  		$IdSemana	= $o_valor->Semana;
  	
	}
}
/*
$Rango1	= '2015-03-02';
$Rango2	= '2015-03-09';
$IdSemana	= 250;*/


echo $Rango1;
echo "-------";
echo $Rango2;
echo "-------";
echo "<br>";

if(!$Rango1 && !$Rango2) exit;

//Buscar colaboradores que entran para el calculo

$sql = "SELECT IdSucursal,Descripcion
			FROM `cr_sucursal`
			WHERE Eliminado = '0'
				
			";
	
$resultfsuc = mysql_db_query($database['db'], $sql, $link);

$num_rowsfsuc = mysql_num_rows($resultfsuc);
if($num_rowsfsuc > 0){
 	while ($o_valorfsuc = mysql_fetch_object($resultfsuc)) {
		$IdSucursal 			= $o_valorfsuc->IdSucursal;
		$DescripcionSucursal	= $o_valorfsuc->Descripcion;
		
		$a_sucursalMaster[$IdSucursal] = $DescripcionSucursal;
		
		//Mercados que tiene la sucursal
		$sql = " SELECT sm.IdSucursal,m.IdMercado, Descripcion
				 FROM cr_sucursal_mercado sm
				 LEFT JOIN cr_mercado m on sm.IdMercado = m.IdMercado
				 WHERE 1 AND IdSucursal='".$o_valorfsuc->IdSucursal."' and Eliminado='0'";
		
		$resultfmer = mysql_db_query($database['db'], $sql, $link);
		$num_rowsfmer = mysql_num_rows($resultfmer);
		if($num_rowsfmer > 0){
		 	
		 while ($o_valorfmer = mysql_fetch_object($resultfmer)) {
			
		 	$IdMercado = $o_valorfmer->IdMercado;
		 	$MercadoDescripcion = $o_valorfmer->Descripcion;
		 	
		 	$a_MercadoMaster[$IdMercado] = $MercadoDescripcion;
		 	
		 	$a_MercadoSucursalRel[$IdMercado] = $IdSucursal;
		 	
		 	
		 	//Repesentantes que tiene el mercado 
			$sql = " SELECT cr_mercado_representante.IdMercado,cr_colaborador.IdColaborador,concat(	ApellidoPaterno,' ',ApellidoMaterno,', ',Nombres) as Nombre
					 FROM `cr_mercado_representante`
					 LEFT JOIN cr_colaborador on cr_mercado_representante.IdColaborador = cr_colaborador.IdColaborador
					 WHERE 1 AND cr_mercado_representante.IdMercado='".$IdMercado."' AND Eliminado = '0'";
			
			$resultfrep = mysql_db_query($database['db'], $sql, $link);
			$num_rowsfrep = mysql_num_rows($resultfrep);
			if($num_rowsfrep > 0){
			 while ($o_valorfrep = mysql_fetch_object($resultfrep)) {
			 	$a_colaborador[] = $o_valorfrep->IdColaborador;
			 	$a_colaboradorMaster[$o_valorfrep->IdColaborador] = $o_valorfrep->Nombre;
				
			 }
			} 
		 }
		}
 	}
 }
 asort($a_colaborador);
 echo $s_idcolaboradores = implode(',',$a_colaborador);
 echo "<pre>";
 print_r($a_colaborador);
 echo "</pre>";


/*
 AND FechaVencimiento < '".$Rango2."'
			  AND FechaVencimiento >= '".$Rango1."'
*/

//Computo todos los prestamos pendientes

$sql = "SELECT cr_cliente.IdMercado,cr_prestamo.IdPrestamo,cr_prestamo.FechaInicio,cr_prestamo.FechaVencimiento,cr_prestamo.PeriodicidadPago,cr_prestamo.MontoPrestado,cr_prestamo.MontoTotal,cr_prestamo.CuotaPago,cr_prestamo.IdColaborador,cr_prestamo.SaldoPrestamo,cr_prestamo.MoraAcumulada
		FROM `cr_prestamo` 
		LEFT JOIN cr_cliente on cr_cliente.Idcliente = cr_prestamo.Idcliente
		WHERE cr_prestamo.Estado 		= 'P'
			  AND cr_prestamo.Eliminado = '0'
			  AND cr_prestamo.IdColaborador in (".$s_idcolaboradores.")
			";
$resulprestamo = mysql_db_query($database['db'], $sql, $link);
$num_rowsprestamo = mysql_num_rows($resulprestamo);
echo "Nro de prestamos::".$num_rowsprestamo."<br>";
if($num_rowsprestamo > 0){
	while ($o_valorpre = mysql_fetch_object($resulprestamo)) {
		$FechaInicio	 	= $o_valorpre->FechaInicio;
		$FechaVencimiento 	= $o_valorpre->FechaVencimiento;
		$PeriodicidadPago 	= $o_valorpre->PeriodicidadPago;
		$MontoPrestado	 	= $o_valorpre->MontoPrestado;
		$MontoTotal		 	= $o_valorpre->MontoTotal;
		$IdPrestamo 		= $o_valorpre->IdPrestamo;
		$CuotaPago	 		= $o_valorpre->CuotaPago;
		$SaldoPrestamo 		= $o_valorpre->SaldoPrestamo;
		$MoraAcumulada 		= $o_valorpre->MoraAcumulada;
		$MoraAcumulada 		= $o_valorpre->MoraAcumulada;
		$IdColaborador 		= $o_valorpre->IdColaborador;
		$IdMercado	 		= $o_valorpre->IdMercado;
		
		
			
		if($FechaVencimiento > $Rango2){
			$sql = "SELECT sum(saldocuota) as saldocuota,count(*) as numeroCuotas
					FROM `cr_cuota` 
					WHERE cr_cuota.estado 		= 'P'
					AND cr_cuota.fecha <= '".$Rango2."'
						and idprestamo = '".$IdPrestamo."'
						";
			$resulcuota= mysql_db_query($database['db'], $sql, $link);
			$num_rowscuotas = mysql_num_rows($resulcuota);
			$saldocuota = 0;
			if($num_rowscuotas > 0 ){
				while ($o_valorpa = mysql_fetch_object($resulcuota))) {
					$saldocuota	 	= $o_valorpa->saldocuota;
					$numeroCuotas 	= $o_valorpa->numeroCuotas;
				}
			}
		
			$suma_proyectado[$IdMercado."-".$IdColaborador]['Montopendiente1'] += $saldocuota;	
			$suma_proyectado[$IdMercado."-".$IdColaborador]['NroPendientes1'] ++;		
			$suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamos'] = $suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamos'].$IdPrestamo.",";	
			$suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamosPendientes'] .= $IdPrestamo.",";
						
			echo "<br>Caso 1 :  Prestamo Pendiente que falta mucho tiempo para su vencimiento ".$IdPrestamo."<br>";
			
			echo "Suma de pagos proyectado: ($dias_diferencia) ** $FechaF ** $FechaI ::Numero Cuotas".$numeroCuotas."* Saldo Cuotas".$saldocuota."<br>";
			
		//Caso 2 :: Calculo de los prestamos que estan en un rango que la FF de los prestamos pendientes de ese colaborador
		//Fecha de Vencimiento >= Lunes && Fecha de Vencimiento < Domingo
		}elseif($FechaVencimiento >= $Rango1 && $FechaVencimiento <= $Rango2){
			$FechaI = $Rango1;
			
			$sql = "SELECT sum(saldocuota) as saldocuota,count(*) as numeroCuotas
					FROM `cr_cuota` 
					WHERE cr_cuota.estado 		= 'P'
					AND cr_cuota.fecha <= '".$Rango2."'
						and idprestamo = '".$IdPrestamo."'
						";
			$resulcuota= mysql_db_query($database['db'], $sql, $link);
			$num_rowscuotas = mysql_num_rows($resulcuota);
			$saldocuota = 0;
			if($num_rowscuotas > 0 ){
				while ($o_valorpa = mysql_fetch_object($resulcuota))) {
					$saldocuota	 	= $o_valorpa->saldocuota;
					$numeroCuotas 	= $o_valorpa->numeroCuotas;
				}
			}
		
			
			echo "<br>Caso 2: Prestamo Pendiente que falta con ultima semana para su vencimiento ".$IdPrestamo."<br>";
			
			echo "Suma de pagos proyectado $FechaI $FechaF ::".$numeroCuotas."*".$CuotaPago."  ->".($numeroCuotas*$CuotaPago)."<br>";
			$suma_proyectado[$IdMercado."-".$IdColaborador]['Montopendiente2'] += $saldocuota;	
			$suma_proyectado[$IdMercado."-".$IdColaborador]['NroPendientes2'] ++;
			$suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamos'] = $suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamos'].$IdPrestamo.",";	
			$suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamosPendientes'] .= $IdPrestamo.",";			
			
		//Caso 3 :: Calculo de los prestamos que estan en un rango que la FF de los prestamos pendientes de ese colaborador
		//Fecha de Vencimiento >= Lunes && Fecha de Vencimiento < Domingo
		}elseif($FechaVencimiento < $Rango1){
			$sql = "SELECT sum(saldocuota) as saldocuota,count(*) as numeroCuotas
					FROM `cr_cuota` 
					WHERE cr_cuota.estado 		= 'P'
					AND cr_cuota.fecha <= '".$Rango1."'
						and idprestamo = '".$IdPrestamo."'
						";
			$resulcuota= mysql_db_query($database['db'], $sql, $link);
			$num_rowscuotas = mysql_num_rows($resulcuota);
			$saldocuota = 0;
			if($num_rowscuotas > 0 ){
				while ($o_valorpa = mysql_fetch_object($resulcuota))) {
					$saldocuota	 	= $o_valorpa->saldocuota;
					$numeroCuotas 	= $o_valorpa->numeroCuotas;
				}
			}
		
			$suma_proyectado[$IdMercado."-".$IdColaborador]['Montovencidos'] += $saldocuota;			
			$suma_proyectado[$IdMercado."-".$IdColaborador]['NroVencidos'] ++;	
			$suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamos'] = $suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamos'].$IdPrestamo.",";	
			$suma_proyectado[$IdMercado."-".$IdColaborador]['IdsPrestamosVencidos'] .= $IdPrestamo.",";	
			
					
			echo "<br>Caso 3: Prestamo Pendiente que es moroso, ya  esta vencido".$IdPrestamo."<br>";
			
			echo "Suma de pagos proyectado $FechaVencimiento::".($SaldoPrestamo )."<br>";
		}
		
		$cadena_prestamos_calculo .= $IdPrestamo.",";
		
			
		
		
		
	}
	
	// Insertar el resumen del proyectado key : Mercado-Colaborador
	if(is_array($suma_proyectado)){
		$cadena_prestamos_calculo = substr($cadena_prestamos_calculo,0,strlen($cadena_prestamos_calculo)-1);
		foreach ($suma_proyectado as $key => $proyectado){
			$a_mercado_colaborador = explode('-',$key);
			echo "<pre>";
			print_r($a_mercado_colaborador);
			echo "</pre>";
			$idMercado 		= $a_mercado_colaborador[0];
			$nombreMercado 	= mb_strtolower($a_MercadoMaster[$a_mercado_colaborador[0]]);
			
			$IdColaborador 		= $a_mercado_colaborador[1];
			$NombreColaborador 	= $a_colaboradorMaster[$a_mercado_colaborador[1]];
			
			$IdSucursal = $a_MercadoSucursalRel[$idMercado];
			$NombreSucursal = $a_sucursalMaster[$IdSucursal];
			
			echo $NombreSucursal."<br>";
			echo $nombreMercado."<br>";
			echo $NombreColaborador."<br>";
			 
			
			$sql_insert_resumen = "
								REPLACE INTO cr_resumen_proyectado (IdSucursal,IdMercado,IdColaborador,IdSemana,FechaInicio,FechaFinal,NombreSucursal,NombreMercado,NombreColaborador,MontoVencidos,MontoPendientes1,MontoPendientes2,NroVencidos,NroPendientes1,NroPendientes2,IdsPrestamos,IdsPrestamosPendientes,IdsPrestamosVencidos,FechaRegistro) 
									VALUES 
								($IdSucursal,$idMercado,$IdColaborador, $IdSemana,'".$Rango1."','".$Rango2."','".$NombreSucursal."','".$nombreMercado."','".$NombreColaborador."','".$proyectado['Montovencidos']."','".$proyectado['Montopendiente1']."','".$proyectado['Montopendiente2']."','".$proyectado['NroVencidos']."','".$proyectado['NroPendientes1']."','".$proyectado['NroPendientes2']."','".substr($proyectado['IdsPrestamos'],0,strlen($proyectado['IdsPrestamos'])-1)."','".substr($proyectado['IdsPrestamosPendientes'],0,strlen($proyectado['IdsPrestamosPendientes'])-1)."','".substr($proyectado['IdsPrestamosVencidos'],0,strlen($proyectado['IdsPrestamosVencidos'])-1)."','".date('Y-m-d H:i:s')."');";
			
			echo $sql_insert_resumen."<br>";
			
			$result_prestamo = mysql_db_query($database['db'], $sql_insert_resumen, $link);
			
		}
	}
	
	
	
}

echo "<pre>";
print_r($suma_proyectado);
echo "</pre>";

exit('Termino :: '.$cadena_prestamos_calculo);

