<?php
	ViewResponse::getInstance()->setMethodAjax();

	use_helper('UtilFunctions');


	$o_ObjectBean = new PrestamoBean();
	
	//COLOCAR CAMPOS DE LA CABECERA DEL LISTADO  
	
	if($cboMercado     		!=""){ $o_ObjectBean->setIdMercado($cboMercado);}
	if($cboColaborador     	!=""){ 
		$o_ObjectBean->setIdColaboradorPrestamo($cboColaborador);
	}else{
		$cboColaborador = myUser::getUser()->getIdColaborador();
		if(myUser::getUser()->getRoleId() == "sys.gen" || myUser::getUser()->getRoleId() == "sys.res" || myUser::getUser()->getRoleId() == "sys.sup"|| myUser::getUser()->getRoleId() == "sys.view"){
			if(myUser::getUser()->getRoleId() == "sys.gen" ) $permitir_ts = 1;
		}else{
			$o_ObjectBean->setIdColaboradorPrestamo(myUser::getUser()->getIdColaborador());
		}
	}
	
	if($FechaInicial  !=""){ $o_ObjectBean->setFechaInicio($FechaInicial); }
	
	$o_ObjectBean->setEstado('P');
	$o_ObjectBean->setFlagReporte('2');
	
	$o_class = new PrestamoBL();
	$a_ObjectBean = $o_class->busquedaPrestamo($o_ObjectBean);
	/*****************************************/
	
	
	
	
	
	
	if( myUser::getUser()->getRoleId() == "sys.gen" || myUser::getUser()->getRoleId() == "sys.res" || myUser::getUser()->getRoleId() == "sys.sup"){
		
		$o_MercadoRepresentanteBean = new MercadoRepresentanteBean();              
		$o_MercadoRepresentanteBean->setIdMercado($cboMercado);
		$o_MercadoRepresentanteBL = new MercadoRepresentanteDP($o_MercadoRepresentanteBean);  
		$a_o_MercadoR = $o_MercadoRepresentanteBL->select();


		foreach ($a_o_MercadoR as $key => $o_MercadoR){
			$idColaborador = $o_MercadoR->getIdColaborador();
		}
	}else{
		if(myUser::getUser()->getIdColaborador()) $idColaborador  = myUser::getUser()->getIdColaborador();
		else $idColaborador  = $cboColaborador;
		
	}
	
	$o_ColaboradorBean = new ColaboradorBean();
	$o_ColaboradorBean->setIdColaborador($idColaborador);
	$o_ColaboradorBL = new ColaboradorBL();
	$a_o_Colaborador = $o_ColaboradorBL->busquedaColaborador($o_ColaboradorBean);
	
	foreach ($a_o_Colaborador as $key => $o_Colaborador){
		$NombreRepresentante = utf8_decode($o_Colaborador->getNombreCompleto());
		
	}
	
	/////////////////////////////////////////////////////////////////////////////
	$o_sucursalmercadoBean = new SucursalMercadoBean();
	$o_sucursalmercadoBean->setIdMercado($cboMercado);
	
	$o_sucursalmercadoDP = new SucursalMercadoDP($o_sucursalmercadoBean);
	$a_o_sucursalmercadoDP = $o_sucursalmercadoDP->select();
	
	foreach ($a_o_sucursalmercadoDP as $key => $o_sucursalmercado){
		$IdSucursal = $o_sucursalmercado->getIdSucursal();
	}
	
	if(!$fechaBalanceAbierto){
		$o_BalanceDiaNew = new BalanceDiaBean();
		$o_BalanceDiaNew->setIdSucursal($IdSucursal); 
		
		
		$o_BalanceDiaNewDP 		= new BalanceDiaDP($o_BalanceDiaNew);
		$fechaBalanceAbierto  	= $o_BalanceDiaNewDP->ObtenerDiaAbierto();
	}
	//////////////////////////////////////////////////////////////////////////////////////
	
	
	$o_MercadoBean = new MercadoBean();
	$o_MercadoBean->setIdMercado($cboMercado);
	$o_MercadoBL = new MercadoBL();
	$a_o_Mercado = $o_MercadoBL->busquedaMercado($o_MercadoBean);
	
	foreach ($a_o_Mercado as $key => $o_Mercado){
		$NombreMercado = utf8_encode(ucwords($o_Mercado->getDescripcion()));
	}
	
	
	$str = 'Mercado:'.ucwords($NombreMercado).'   *Representante :'.ucwords(utf8_encode($NombreRepresentante)).' Fecha:'.$fechaBalanceAbierto;
	
	
	
	
	
	
	foreach ($a_ObjectBean as $iKey => $o_objBean){
	  $sumaTotalSaldo += $o_objBean->getSaldoPrestamo();
	   $fecha_tope = date('Y-m-d',strtotime($o_objBean->getFechaVencimiento().' +7 day'));
	   // if($o_objBean->getEstado() == 'P' && $o_objBean->getFechaVencimiento() < date('Y-m-d')){ 
	   
	   if($o_objBean->getFlagReporte() == '1'){
			$sumaMoroso += $o_objBean->getSaldoPrestamo();
	   }else{
	   
			if($fecha_tope <= $fechaBalanceAbierto){
				$a_prestamosId_PM[] =  $o_valor_pvm->IdPrestamo;
				$sumaMoroso += $o_objBean->getSaldoPrestamo();
			}else{
				//echo $o_valor_p->IdPrestamo."--><br>";
				if($o_objBean->getFechaVencimiento() < $fechaBalanceAbierto){
					$a_prestamosId_PV[] =  $o_valor_pvm->IdPrestamo;
					$sumaVencido += $o_objBean->getSaldoPrestamo();
				}
			}
		}
	   		
	  	//$sumaVencido += $o_objBean->getSaldoPrestamo();
	  
	}
	
	ob_start();
	if(count($a_ObjectBean)>0){
	//for($i=1;$i<50;$i++){	
	reset($a_ObjectBean);
	$fecha_fin = date("Y-m-d");
	$fecha_fin = $fechaBalanceAbierto;
	$fecha_ini = date('Y-m-d',strtotime($fecha_fin.' -28 day'));;
	?>
	<table width="100%" border="0" cellpadding="0" cellspacing="0" >
		<tr>
		   	
		    <td align="center" style="border: 1px solid black;" width="3%">Cliente</td>
		    <td align="center" style="border: 1px solid black;" width="2%">CR</td>
		    <td align="center" style="border: 1px solid black;" width="4%">M.Tot.</td>
		    <td align="center" style="border: 1px solid black;" width="4%">Saldo</td>
		    
		    
		    <?php 
			$fecha_ini_a = $fecha_fin;
			while($fecha_ini_a >= $fecha_ini){
				$dia = date('N',strtotime($fecha_ini_a));
				if($dia == 7){
					$color="#FF0000";
				}else{
					$color="#000";
				}
				?>
				<td width="3%" align="center" style="border: 1px solid black;color:<?php echo $color;?>"><?php echo date('d/m',strtotime($fecha_ini_a))?></td>
				<?php
				$fecha_ini_a = date('Y-m-d',strtotime($fecha_ini_a.' -1 day'));
			}
			?>
		</tr>
	  <?php
	  
	  foreach ($a_ObjectBean as $iKey => $o_objBean){
		$a_pagos = null;   
		$fechaven = "";	
		$vencido = "";	
		$moroso = "";	
		$estadoO = "";
		 
	    $fecha_tope = date('Y-m-d',strtotime($o_objBean->getFechaVencimiento().' +7 day'));
	  	  
		if($o_objBean->getFechaVencimiento() >= $fechaBalanceAbierto){
			if($o_objBean->getFlagReporte() == '1'){
				$estadoO = "M";
			}
		}elseif($fecha_tope <= $fechaBalanceAbierto){
			$estadoO = "M";
		}else{
			$estadoO = "V";
		}
		
		if($estadoO  == "V"){
			$stye="color:#800080";
		  }elseif($estadoO  == "M"){
			$stye="color:#ff0000";
		  }else{
			$stye="color:#000000";
		  }
		$where = " and fechaPago <= '".$fecha_fin."'
					and fechaPago >= '".$fecha_ini."'";
		$con = Conexion::getConexion();
	    $sql = "SELECT * 
	            FROM cr_pago
	            WHERE   Idprestamo = '".$o_objBean->getIdPrestamo()."' ".
	    		$where;
	  	
	    $result = mysql_db_query(Conexion::getNameDb(), $sql, $con);
	    $num_rows = mysql_num_rows($result);
	    
	    ?>
	    <tr>
	    	
	    	<td style="border: 1px solid black;<?php echo $stye;?>" align="center"><?php echo $o_objBean->getIdCliente()?></td>
	    	<td style="border: 1px solid black;" align="center"><?php echo $o_objBean->getObjectCliente()->getFlagCentralRiesgo()?></td>
	    	<td style="border: 1px solid black;" align="center"><?php echo $o_objBean->getMontoTotal()?></td>
	    	<td style="border: 1px solid black;" align="center"><?php echo $o_objBean->getSaldoPrestamo()?></td>
	    	
	    	
				<?php
				//echo $sql."<br>";
				//echo $o_objBean->getIdPrestamo().",<br>";
			    if($num_rows>0){
			      while ($o_valor = mysql_fetch_object($result)) {
					$a_pagos[$o_valor->FechaPago] = $o_valor->MontoPago; 	      
			      }
			    }
				//print_r($a_pagos);
				?>
			
			<?php 
			$fecha_ini_a = $fecha_fin;
			while($fecha_ini_a >= $fecha_ini){
				if(is_array($a_pagos) && array_key_exists($fecha_ini_a,$a_pagos)){ $pago = $a_pagos[$fecha_ini_a]; }else $pago = "-";
				?>
				<td style="border: 1px solid black;<?php if($pago == "0") echo "color:#F00"?>" align="center"><?php echo $pago;?></td>
				<?php
				$fecha_ini_a = date('Y-m-d',strtotime($fecha_ini_a.' -1 day'));
			}
			?>
			<td>
			</td>	
		</tr>
		
		<?php
		
		
	  	  
		  
	  	  if($o_objBean->getOrigen() == 'R'){
	  	  	$origen ='N';
	  	  }elseif($o_objBean->getOrigen() == 'F'){
	  	  	$origen ='R';
	  	  }
	  	  $amortizacion = $o_objBean->getMontoTotal() - $o_objBean->getSaldoPrestamo();
	      
	      if($o_objBean->getIdCliente()){
	      	$o_ClienteBean = new ClienteBean();
	      	$o_ClienteBean->setIdCliente($o_objBean->getIdCliente());
	      	$o_ClienteDP = new ClienteDP($o_ClienteBean);
	      	$a_o_ClienteDP = $o_ClienteDP->select();
	      	foreach ($a_o_ClienteDP as $Key => $o_objCliente){
				$celular = trim($o_objCliente->getCelular());
				if($celular) $telefono = $celular;
	      		else $telefono = $o_objCliente->getTelefono();
	      		$IdTipoNegocio = $o_objCliente->getIdTipoNegocio();
				$OtroTipoNegocio = $o_objCliente->getOtroTipoNegocio();
				if($OtroTipoNegocio){
					$DescripcionNegocio = $OtroTipoNegocio; 
	      		}elseif($IdTipoNegocio){
	      			$o_TipoNegocioBean = new TipoNegocioBean();
	      			$o_TipoNegocioBean->setIdTipoNegocio($IdTipoNegocio);
			      	$o_TipoNegocioDP = new TipoNegocioDP($o_TipoNegocioBean);
			      	$a_o_TipoNegocioDP = $o_TipoNegocioDP->select();
			      	foreach ($a_o_TipoNegocioDP as $Keytn => $o_TipoNegocioDP){
			      		$DescripcionNegocio = $o_TipoNegocioDP->getDescripcion();
			      	}
	      		}
	      	}
			
	      }
	      
	  } 
	  ?>
	  </table>
	  <?php 
	}  
	ob_implicit_flush(0);
	$tbl .= ob_get_clean();
	
	//echo $tbl;  
	
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example 005');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');

//$pdf->SetHeaderData("ca_logo.jpg", 50, "Resumen","");



// set font
$pdf->SetFont('times', '', 8);
// set header and footer fonts
$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));

// set default monospaced font
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);

$pdf->SetAuthor('');
$pdf->SetTitle('Reporte de Pagos');
$pdf->SetSubject('TCPDF Tutorial');

// set margins
//echo PDF_MARGIN_FOOTER;
$pdf->SetMargins(1, 18, 1);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(5);

$str = 'Mercado:'.ucwords($NombreMercado).'   *Representante :'.ucwords(utf8_encode($NombreRepresentante)).' Fecha:'.$fechaBalanceAbierto;
	
// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, "Reporte de Pagos", $str."",array(0,51,153),array(0,0,0));

// set auto page breaks
$pdf->SetAutoPageBreak(TRUE, 5);

// add a page
$pdf->AddPage('L', 'A4');

$tbl .= "<html>";
$tbl .= "<body>";
$tbl .= ob_get_clean();
$tbl .= "</body>";
$tbl .= "</html>";
//echo $tbl;
$pdf->writeHTML($tbl, true, false, false, false, '');


$pdf->Output();
	
	
?>