<?php
/**
 * Clase DP para CrUtilidadDP
 *
 * @package    
 * @subpackage CrUtilidadDP
 * @author     Willy
 * @version    SVN:: CrUtilidadDP.class.php,v 1.1 2016-11-11 13:29:46 william.taype Exp $
 */
class CrUtilidadDP extends BaseCrUtilidadDP
{
	
	public function saveUtilidad($fecha)
  {
  	  
       echo $fecha."##****************++++++++++++++++++###<br>";
      $con = Conexion::getConexion();
      
     
      ///////   Seleccionar el pivot sumado la fecha version fijada en 1 temporalmente /////////
      $sql = "SELECT cr_sucursal.IdSucursal, cr_sucursal.Descripcion as NombreSucursal,  cr_mercado.IdMercado , cr_mercado.Descripcion as NombreMercado ,  cr_colaborador.IdColaborador , concat(cr_colaborador.ApellidoPaterno,' ',cr_colaborador.ApellidoMaterno,', ',cr_colaborador.Nombres) as NombreRepresentante 
       		  FROM cr_sucursal
       		  INNER JOIN  cr_sucursal_mercado 	on cr_sucursal.idSucursal = cr_sucursal_mercado.idSucursal
       		  INNER JOIN  cr_mercado 			on cr_mercado.idMercado = cr_sucursal_mercado.idMercado
       		  INNER JOIN  cr_mercado_representante	on cr_mercado.idMercado = cr_mercado_representante.idMercado
       		  INNER JOIN  cr_colaborador	on cr_colaborador.idColaborador = cr_mercado_representante.idColaborador
       		  WHERE cr_sucursal.eliminado = '0'
       		  		and  cr_mercado.eliminado = '0'  
       		  		and  cr_colaborador.eliminado = '0'  
       		  		and  cr_colaborador.idRol = 'sys.ope'
       		  		";
      
    
      $result = mysql_db_query(Conexion::getNameDb(), $sql, $con);
      echo $sql;
      echo "<br><br><br><br><br><br>ddddd";
      $num_rows = mysql_num_rows($result);
      echo $num_rows;
      if($num_rows>0){
        while ($o_valorS = mysql_fetch_object($result)) {
        	echo "---";
        	//Pivot
        	$IdSucursal 		= $o_valorS->IdSucursal;
        	$IdMercado 			= $o_valorS->IdMercado;
        	$IdColaborador		= $o_valorS->IdColaborador;
        	$NombreSucursal		= $o_valorS->NombreSucursal;
        	$NombreMercado		= $o_valorS->NombreMercado;
     
        	$NombreRepresentante= $o_valorS->NombreRepresentante;
        	
        	
        	$this->guardarSucursalMercado($IdSucursal,$IdMercado);
        	$this->guardarMercadoRepresentante($IdMercado,$IdColaborador);
        	$this->guardarPrestamosCancelados($fecha,$IdSucursal,$IdMercado,$IdColaborador,$NombreSucursal,$NombreMercado);
        	
        	
        }
      }
         
      return count($a_tmp)>0?$a_tmp:null;
  }
  
  public function  guardarSucursalMercado($IdSucursal,$IdMercado){
  	
  	$con = Conexion::getConexion(); 
  
  	$sql = "REPLACE INTO  cr_utilidad_suc_mer
					(idSucursal, idMercado)
				VALUES
					('".$IdSucursal."','".$IdMercado."') 
				";
  	echo "--------<br>";
  	echo $sql."--------<br>";
  	echo "--------<br>";
	$result2 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
	$id = mysql_insert_id($con); 
	echo $id."****";
       
	return $id;
		
  }
  
  public function  guardarMercadoRepresentante($IdMercado,$IdColaborador){
  	
  	$con = Conexion::getConexion(); 
  
  	$sql = "REPLACE INTO  cr_utilidad_mer_rep
					(IdMercado, IdColaborador)
				VALUES
					('".$IdMercado."','".$IdColaborador."') 
				";
  	echo "--------<br>";
  	echo $sql."--------<br>";
  	echo "--------<br>";
	$result2 = mysql_db_query(Conexion::getNameDb(), $sql, $con);
	$id = mysql_insert_id($con); 
	echo $id."****";
       
	return $id;
		
  }
  
  public function  guardarPrestamosCancelados($fecha,$IdSucursal,$IdMercado,$IdColaborador,$NombreSucursal,$NombreMercado){
  	
  	$con = Conexion::getConexion(); 
  
  	$sql = "SELECT cr_mercado.descripcion,cr_cliente.NombreCompleto,concat(cr_colaborador.ApellidoPaterno,' ',cr_colaborador.ApellidoMaterno,', ',cr_colaborador.Nombres) as NombreRepresentante,cr_prestamo.IdColaborador,cr_prestamo.idPrestamo,cr_prestamo.Origen,cr_prestamo.IdPrestamoReferencia,cr_prestamo.IdCliente,cr_cliente.NombreCompleto as Cliente,MontoTotal,MontoPrestado,InteresMonto,GastoAdministrativo,cr_prestamo.FechaInicio,fechaCancelacion,cr_prestamo.FechaVencimiento
			FROM cr_prestamo
			LEFT JOIN cr_cliente on cr_cliente.idcliente = cr_prestamo.idcliente
			left join cr_mercado on cr_cliente.idmercado = cr_mercado.idmercado
			left join cr_colaborador on cr_prestamo.IdColaborador = cr_colaborador.IdColaborador
			where SaldoPrestamo = 0 
				and fechaCancelacion is not null 
				and fechaCancelacion like '$fecha%' 
				and cr_cliente.idmercado = '$IdMercado' 
				and cr_prestamo.IdColaborador = '$IdColaborador' 
				and cr_prestamo.Estado ='C'
				
			order by 1 
			";
	echo $sql;
	echo "<br>";
	$result = mysql_db_query(Conexion::getNameDb(), $sql, $con);     	
        	
	echo $sql;
	echo "<br><br><br><br><br><br>ddddd";
	$num_rows = mysql_num_rows($result);
	echo $num_rows;
	if($num_rows>0){
		while ($o_valorS = mysql_fetch_object($result)) {
        	$idPrestamo			= $o_valorS->idPrestamo;
        	$MontoTotal			= $o_valorS->MontoTotal;
        	$InteresMonto		= $o_valorS->InteresMonto;
        	$GastoAdministrativo= $o_valorS->GastoAdministrativo;
        	$FechaInicio		= $o_valorS->FechaInicio;
        	$fechaCancelacion=	 $o_valorS->fechaCancelacion;
        	$FechaVencimiento	= $o_valorS->FechaVencimiento;
        	$MontoPrestado		= $o_valorS->MontoPrestado;
        	
        	$NombreRepresentante= $o_valorS->NombreRepresentante;
        	$IdCliente			= $o_valorS->IdCliente;
        	$Cliente			= $o_valorS->Cliente;
        	$GastoAdministrativo= $o_valorS->GastoAdministrativo;
        	$Origen				= $o_valorS->Origen;
        	
        	//Buscar el Prestamo de Referencia
        	if($Origen == "F"){
        		$IdPrestamoReferencia= $o_valorS->IdPrestamoReferencia;
        		
        		while ($IdPrestamoReferencia > 0){
        		
	        		$sql = "SELECT cr_prestamo.idPrestamo,cr_prestamo.IdPrestamoReferencia,cr_prestamo.SaldoPrestamo,MontoTotal,InteresMonto,InteresMonto,MontoPrestado,GastoAdministrativo
							FROM cr_prestamo
							where 1 = 1 
								and cr_prestamo.idPrestamo = '$IdPrestamoReferencia' 							
								and cr_prestamo.Estado ='C'
								
							order by 1 
							";
					echo $sql;
					echo "<br>";
					$resultF = mysql_db_query(Conexion::getNameDb(), $sql, $con);     	
				        	
					echo $sql;
					echo "<br><br><br><br><br><br>ddddd";
					$num_rowsF = mysql_num_rows($resultF);
					echo $num_rowsF;
					if($num_rowsF >0){
						while ($o_valorSF = mysql_fetch_object($resultF)) {
							$IdPrestamoReferencia	= $o_valorSF->IdPrestamoReferencia;
							$n_MontoTotal				= $o_valorSF->MontoTotal;
							$n_SaldoPrestamo			= $o_valorSF->SaldoPrestamo;
							$InteresMonto				+= $o_valorSF->InteresMonto;
							$n_Amortizo 				= $n_MontoTotal - $n_SaldoPrestamo;
							$MontoTotal					+= $n_Amortizo;
							$MontoPrestado				= $o_valorSF->MontoPrestado;
							$GastoAdministrativo		+= $o_valorSF->GastoAdministrativo;
						}
					}
					
	        		
	        	}	
        		$Ganancia = $MontoTotal - $MontoPrestado + $GastoAdministrativo;
        	}else{
        		$Ganancia = $InteresMonto + $GastoAdministrativo;
        	}
        	
        	$sql = "UPDATE  cr_prestamo
					SET FlagContUtilidad='1' 
					where IdPrestamo = '".$idPrestamo."'";
			echo $sql;
			echo "<br>";
			echo "<br>";
			echo "<br>";
			mysql_db_query(Conexion::getNameDb(), $sql, $con);   
        	
        	$sql = "REPLACE INTO  cr_utilidad
				(
				idSucursal, idMercado, IdRepresentante,  IdPrestamo, Origen,
				AnioCancelacion,PeriodoCancelacion,FechaCancelacion, FechaInicio, FechaVencimiento, IdCliente,
				MontoTotal,Utilidad, Ganancia, Sucursal, Mercado, Representante, Cliente,
				GastoAdministrativo,FechaRegistro
				)
			VALUES
				(
				'".$IdSucursal."','".$IdMercado."','".$IdColaborador."','".$idPrestamo."','".$Origen."',
				'".$fecha."','".$fecha."','".$fecha."','".$FechaInicio."','".$FechaVencimiento."','".$IdCliente."',
				'".$MontoTotal."','".$InteresMonto."','".($Ganancia)."','".$NombreSucursal."','".$NombreMercado."','".$NombreRepresentante."',
				'".$Cliente."','".$GastoAdministrativo."','".date('Y-m-d H:i:s')."') 
			";
			echo "*********** ->".$sql;
			
			echo "<br>";
			echo "<br>";
			echo "<br>";
			mysql_db_query(Conexion::getNameDb(), $sql, $con);  

			
			 	
		}
	}
		
  }
}