<?PHP
session_start();
if ($_SESSION['estado'] != "ON")
		{
		?>
		<script>
			parent.location.href = '../index.php';
		</script>
		<? 
		exit();
		}
$id_empresa = $_SESSION['ss_empresa'];
$id_user = $_SESSION['ss_user'];

include("../conex.php");
/**************** Datos Empresa ****************** seleccionar cual empresa  es el ingreso  en ssesion******/
	$sql_empresa = "SELECT * FROM empresa WHERE id=$id_empresa;";
	$res_empresa = mysql_query($sql_empresa,$enlace);
	
		$empresa_rut=mysql_result($res_empresa, 0, "rut_empresa");
		$empresa_rut = str_replace('.', '', $empresa_rut);
		$empresa_rut_representante=mysql_result($res_empresa, 0, "rut_representante");
		$empresa_rut_representante = str_replace('.', '', $empresa_rut_representante);
		
		$sitio_empresa=mysql_result($res_empresa, 0, "sitio_empresa");
        $ip_empresa=mysql_result($res_empresa, 0, "ip_empresa");
		$numero_resolucion=mysql_result($res_empresa,  0, "numero_resolucion");
        $fecha_resolucion=mysql_result($res_empresa,  0, "fecha_resolucion");
		$certificacion=mysql_result($res_empresa, 0, "certificacion");
		 $fecha_certificacion=mysql_result($res_empresa, 0, "fecha_certificacion");

	 $ambiente="PRODUCCION";
	if($certificacion=='SI') { $ambiente="CERTIFICACION"; $fecha_resolucion=$fecha_certificacion; $numero_resolucion=0;}
		
	
		
//*********************************************************************************************************
$fecha=$_POST["txtfecha"];                        // mcc    28.11.14
$dia = substr ($fecha, 0, 2);
$mes = substr ($fecha, 3, 2);
$ano = substr ($fecha, 6, 4);

$periodo_tributario=$ano."-".$mes;

$fecha = $fecha[6]."".$fecha[7]."".$fecha[8]."".$fecha[9]."-".$fecha[3]."".$fecha[4]."-".$fecha[0]."".$fecha[1];

/*************  Consulta envio *******************/
    $sql_libro = "SELECT * FROM envio_libro_sii  WHERE empresa=$id_empresa and trackid>'0' AND periodo_tributario='$periodo_tributario' AND tipo_libro='COMPRA'";
	
	$res_libro = mysql_query($sql_libro,$enlace);
	$row=0;
	while (mysql_fetch_object ($res_libro))
		{		
		$row+=1;
		}
if ($row>0 && $cod_reenvio=='')
 {
?>
	<script language="javascript">
		alert("Libro de COMPRA ya fue enviado anteriormente");
		window.top.open('','_parent','');
		window.top.close();
	</script>
<?
exit();
}
 /**************** graba envio_libro_sii ******************/
 
 $fecha_hoy = date(Y)."/".date(m)."/".date(d);
  $libro="MENSUAL"; 
	if ($cod_reenvio!='')    $libro="RECTIFICA"; 
 
  $sql_libro = "INSERT INTO envio_libro_sii (trackid, tipo_libro, periodo_tributario, fecha_envio, empresa, tipo_envio, cod_rectifica) VALUES('1', 'COMPRA', '$periodo_tributario', '$fecha_hoy', '$id_empresa', '$libro', '$cod_reenvio')";
 if (mysql_query($sql_libro,$enlace)) 
		{
		$sultimo_id = mysql_insert_id($enlace);
		}
 
 //echo($sultimo_id);
 

		
		
//***************************************************************************************
$fecha=$_POST["txtfecha"];                        // mcc    28.11.14
$dia = substr ($fecha, 0, 2);
$mes = substr ($fecha, 3, 2);
$ano = substr ($fecha, 6, 4);

$fecha = $fecha[6]."".$fecha[7]."".$fecha[8]."".$fecha[9]."-".$fecha[3]."".$fecha[4]."-".$fecha[0]."".$fecha[1];
 
  
//****  genera XML   LIBRO COMPRA*******

$xml=new DomDocument("1.0", "UTF-8");
 $raiz=$xml->createElement("EnvioLibro");
 $raiz=$xml->appendChild($raiz); 
 $raiz->setAttribute("ID", "EnvioLibr-".$ano."-".$mes);
 
  /*--Caratula -------------------------*/
    $Caratula=$xml->createElement("Caratula");
    $Caratula=$raiz->appendChild($Caratula); 

    $RutEmisorLibro=$xml->createElement("RutEmisorLibro", $empresa_rut);
    $RutEmisorLibro=$Caratula->appendChild($RutEmisorLibro); 

	$RutEnvia=$xml->createElement("RutEnvia", $empresa_rut_representante);
    $RutEnvia=$Caratula->appendChild($RutEnvia); 
	
	$PeriodoTributario=$xml->createElement("PeriodoTributario",$ano."-".$mes);
    $PeriodoTributario=$Caratula->appendChild($PeriodoTributario); 
	
    $FchResol=$xml->createElement("FchResol",$fecha_resolucion);
    $FchResol=$Caratula->appendChild($FchResol); 
	
	$NroResol=$xml->createElement("NroResol",$numero_resolucion);
    $NroResol=$Caratula->appendChild($NroResol); 
	
	$TipoOperacion=$xml->createElement("TipoOperacion","COMPRA");
    $TipoOperacion=$Caratula->appendChild($TipoOperacion); 
	
	$TipoLibro=$xml->createElement("TipoLibro", $libro);
    $TipoLibro=$Caratula->appendChild($TipoLibro);
	 
    $TipoEnvio=$xml->createElement("TipoEnvio","TOTAL");
    $TipoEnvio=$Caratula->appendChild($TipoEnvio); 
	
	if ($cod_reenvio!='')
	  {      
	$CodAutRec=$xml->createElement("CodAutRec",$cod_reenvio);
    $CodAutRec=$Caratula->appendChild($CodAutRec);	
	  }	
	/*
	$FolioNotificacion=$xml->createElement("FolioNotificacion","1");
    $FolioNotificacion=$Caratula->appendChild($FolioNotificacion); 

 /*--Resumen Periodo----------------------*/ 
 
   $ResumenPeriodo=$xml->createElement("ResumenPeriodo");
   $ResumenPeriodo=$raiz->appendChild($ResumenPeriodo); 

//  Resume ** FE ***   

		$dcto[0]=30;
		$dcto[1]=33;
		
		$dcto[2]=45;
		$dcto[3]=46;
		
     	$dcto[4]=55;
		$dcto[5]=56;
		
		$dcto[6]=60;
		$dcto[7]=61;
		
		$dcto[8]=32;
		$dcto[9]=34;
		
		foreach ($dcto as $paso)
		{
		$cant=0;
		$exento=0;		
		$neto=0;
		$iva=0;
		$iva5=0;
		$total=0;
		$ivar=0;
		
		$sqlfs ="SELECT count(*) as cant, sum(exento) as texen, sum(neto) as tneto, sum(iva) as tiva, sum(impuestos) as tiva5, sum(iva_uso_comun) as tivausocomun, sum(iva_no_recuperable) as tivanorecuperable, sum(total) as ttota, sum(iva_retenido) as tivar FROM entrada, tipo_dcto WHERE extract(month from fecha_libro)='$mes' AND extract(year from fecha_libro)='$ano' AND entrada.tipo_dcto=tipo_dcto.id and tipo_dcto.sii=$paso  AND empresa = $id_empresa";
		
	
			 $resfs = mysql_query($sqlfs,$enlace);	
			$cantidad = mysql_num_rows($resfs);

			$cont=0;
			while (mysql_fetch_object ($resfs))
	         {
			    $cant= mysql_result($resfs, $cont, "cant");
				$exento= (int) mysql_result($resfs, $cont, "texen");
				$neto= (int) mysql_result($resfs, $cont, "tneto");
				$iva = (int) mysql_result($resfs, $cont, "tiva");	
					$ivausocomun = (int) mysql_result($resfs, $cont, "tivausocomun");
					$ivanorecuperable = (int) mysql_result($resfs, $cont, "tivanorecuperable");
					
				$iva5 = (int) mysql_result($resfs, $cont, "tiva5");								
				$total = (int) mysql_result($resfs, $cont, "ttota");				
				$ivar = (int) mysql_result($resfs, $cont, "tivar");
				
			 }	
	
	        if  ($cant!=0)
			{
	  $TotalesPeriodo=$xml->createElement("TotalesPeriodo");
      $TotalesPeriodo=$ResumenPeriodo->appendChild($TotalesPeriodo);
	   $TpoDoc=$xml->createElement("TpoDoc", $paso);
       $TpoDoc=$TotalesPeriodo->appendChild($TpoDoc);
	   
	   $TotDoc=$xml->createElement("TotDoc", $cant);
       $TotDoc=$TotalesPeriodo->appendChild($TotDoc);
	   
	    $TotMntExe=$xml->createElement("TotMntExe", $exento);
       $TotMntExe=$TotalesPeriodo->appendChild($TotMntExe);
	   
	    $TotMntNeto=$xml->createElement("TotMntNeto", $neto);
       $TotMntNeto=$TotalesPeriodo->appendChild($TotMntNeto);
	   
	   $TotMntIVA=$xml->createElement("TotMntIVA", $iva);
       $TotMntIVA=$TotalesPeriodo->appendChild($TotMntIVA);
	  
	   
	    if ($ivar!=0)
	   {
	    $TotOtrosImp=$xml->createElement("TotOtrosImp");
        $TotOtrosImp=$TotalesPeriodo->appendChild($TotOtrosImp);
			 
	     $CodImp=$xml->createElement("CodImp", "15");
         $CodImp=$TotOtrosImp->appendChild($CodImp);
	   
	      $TotMntImp=$xml->createElement("TotMntImp", $ivar);
          $TotMntImp=$TotOtrosImp->appendChild($TotMntImp);
	   }
	   
	
	   if ($ivausocomun!=0)
	   {
	   $TotOpIVAUsoComun=$xml->createElement("TotOpIVAUsoComun", "1");
       $TotOpIVAUsoComun=$TotalesPeriodo->appendChild($TotOpIVAUsoComun);
	      $TotIVAUsoComun=$xml->createElement("TotIVAUsoComun", $ivausocomun);
          $TotIVAUsoComun=$TotalesPeriodo->appendChild($TotIVAUsoComun);
	         $FctProp=$xml->createElement("FctProp", "0.6");
             $FctProp=$TotalesPeriodo->appendChild($FctProp);
			 $montoivausocomun= round($ivausocomun*.6,0);
			 $TotCredIVAUsoComun=$xml->createElement("TotCredIVAUsoComun", $montoivausocomun);
             $TotCredIVAUsoComun=$TotalesPeriodo->appendChild($TotCredIVAUsoComun);
	
	   }
	    if ($ivanorecuperable!=0)
	   {
	    $TotIVANoRec=$xml->createElement("TotIVANoRec");
        $TotIVANoRec=$TotalesPeriodo->appendChild($TotIVANoRec);
		$cod_iva_no_recuperable=4;  // exentos=1   $cod_iva_no_recuperable=4;  // regalos
	    $CodIVANoRec=$xml->createElement("CodIVANoRec", $cod_iva_no_recuperable );
        $CodIVANoRec=$TotIVANoRec->appendChild($CodIVANoRec);
			 
	     $TotOpIVANoRec=$xml->createElement("TotOpIVANoRec", "1");
         $TotOpIVANoRec=$TotIVANoRec->appendChild($TotOpIVANoRec);
	   
	      $TotMntIVANoRec=$xml->createElement("TotMntIVANoRec", $ivanorecuperable);
          $TotMntIVANoRec=$TotIVANoRec->appendChild($TotMntIVANoRec);
	   }
	   
   
	   //$TotMntIVA5=$xml->createElement("TotMntIVA5", $iva5);
       //$TotMntIVA5=$TotalesPeriodo->appendChild($TotMntIVA5);
	   
	    $TotMntTotal=$xml->createElement("TotMntTotal", $total);
        $TotMntTotal=$TotalesPeriodo->appendChild($TotMntTotal);
	   
	    $TotIVANoRetenido=$xml->createElement("TotIVANoRetenido", $iva5);
        $TotIVANoRetenido=$TotalesPeriodo->appendChild($TotIVANoRetenido);
	  
	  //************  repetir para NC y ND FCompra
	      }
		  
		 }
	  
	  foreach ($dcto as $paso)
		{
	  
 /*--Detalles Periodo----------------------*/ 
 
$sqlfs ="SELECT entrada.id, num_dcto, fecha_emision, rut_proveedor, iva, impuestos, exento, neto, total, iva_retenido, iva_uso_comun, correlativo, iva_no_recuperable, cod_iva_no_recuperable FROM entrada, tipo_dcto WHERE extract(month from fecha_libro)='$mes' AND extract(year from fecha_libro)='$ano' AND entrada.tipo_dcto=tipo_dcto.id and tipo_dcto.sii=$paso AND empresa = $id_empresa";


			 $resfs = mysql_query($sqlfs,$enlace);	
			$cantidad = mysql_num_rows($resfs);

			$cont=0;
			while (mysql_fetch_object ($resfs))
	         {
			 $nro = mysql_result($resfs, $cont, "num_dcto");
			  $fecha_e = mysql_result($resfs, $cont, "fecha_emision");
			    $rut = mysql_result($resfs, $cont, "rut_proveedor");
				if ($rut!=''){					
					$sqlc = "SELECT * FROM nombres WHERE rut='$rut'";
					$resc = mysql_query($sqlc,$enlace);
					$nombre =  mysql_result($resc, 0, "razon_social");
				}  else {$nombre = "S/N";}
			  
			    $iva = (int) mysql_result($resfs, $cont, "iva");
				$iva_uso_comun = (int) mysql_result($resfs, $cont, "iva_uso_comun");
				$cod_iva_no_recuperable = (int) mysql_result($resfs, $cont, "cod_iva_no_recuperable");	
				$iva_no_recuperable = (int) mysql_result($resfs, $cont, "iva_no_recuperable");			
				$ret5 =(int) mysql_result($resfs, $cont, "impuestos");			
				$exento = (int) mysql_result($resfs, $cont, "exento");				
				$neto=  (int) mysql_result($resfs, $cont, "neto");			
				$total = (int) mysql_result($resfs, $cont, "total");				
				$ivar = (int) mysql_result($resfs, $cont, "iva_retenido");
				$correlativo = (int) mysql_result($resfs, $cont, "correlativo");
				$id = (int) mysql_result($resfs, $cont, "entrada.id");
                  if ($correlativo==0 || $correlativo=='') $correlativo=$id;
$sql_envio="UPDATE entrada set envio_libro_sii=$sultimo_id WHERE id='$id'";
	$res_envio = mysql_query($sql_envio,$enlace);



				$rut = str_replace('.', '', $rut);
	$Detalle=$xml->createElement("Detalle");
   $Detalle=$raiz->appendChild($Detalle); 		     

   $TpoDoc=$xml->createElement("TpoDoc",$paso);
   $TpoDoc=$Detalle->appendChild($TpoDoc);
   
   $NroDoc=$xml->createElement("NroDoc",$nro);
   $NroDoc=$Detalle->appendChild($NroDoc);
   
   $TasaImp=$xml->createElement("TasaImp","19");
   $TasaImp=$Detalle->appendChild($TasaImp);
      
   $NumInt=$xml->createElement("NumInt",$correlativo);
   $NumInt=$Detalle->appendChild($NumInt);
   
   $FchDoc=$xml->createElement("FchDoc",$fecha_e);
   $FchDoc=$Detalle->appendChild($FchDoc);
		
   $RUTDoc=$xml->createElement("RUTDoc",$rut);
   $RUTDoc=$Detalle->appendChild($RUTDoc);
   
   $RznSoc=$xml->createElement("RznSoc",substr($nombre,0,39));
   $RznSoc=$Detalle->appendChild($RznSoc);
   
    $MntExe=$xml->createElement("MntExe",$exento);
    $MntExe=$Detalle->appendChild($MntExe);
   
   $MntNeto=$xml->createElement("MntNeto",$neto);
   $MntNeto=$Detalle->appendChild($MntNeto);
   
   $MntIVA=$xml->createElement("MntIVA",$iva);
   $MntIVA=$Detalle->appendChild($MntIVA);
  
    if ($ivar!=0)
   {
   $OtrosImp=$xml->createElement("OtrosImp");
   $OtrosImp=$Detalle->appendChild($OtrosImp); 
   
    $CodImp=$xml->createElement("CodImp", "15");
    $CodImp=$OtrosImp->appendChild($CodImp);
	
	$TasaImp=$xml->createElement("TasaImp", "19");
    $TasaImp=$OtrosImp->appendChild($TasaImp);
	
    $MntImp=$xml->createElement("MntImp", $ivar);
    $MntImp=$OtrosImp->appendChild($MntImp);
    }
  
   
   if ($iva_uso_comun!=0)
   {
    $IVAUsoComun=$xml->createElement("IVAUsoComun",$iva_uso_comun);
    $IVAUsoComun=$Detalle->appendChild($IVAUsoComun);
    }
   if ($iva_no_recuperable!=0)
   {
   $IVANoRec=$xml->createElement("IVANoRec");
   $IVANoRec=$Detalle->appendChild($IVANoRec); 
   
    $CodIVANoRec=$xml->createElement("CodIVANoRec", $cod_iva_no_recuperable);
    $CodIVANoRec=$IVANoRec->appendChild($CodIVANoRec);
	
    $MntIVANoRec=$xml->createElement("MntIVANoRec", $iva_no_recuperable);
    $MntIVANoRec=$IVANoRec->appendChild($MntIVANoRec);
    }
	

    //if ($iva5>0) 
    //$MntIVA5=$xml->createElement("MntIVA5",$iva5);
    //$MntIVA5=$Detalle->appendChild($MntIVA5);
   $MntTotal=$xml->createElement("MntTotal",$total);
   $MntTotal=$Detalle->appendChild($MntTotal);	
   $cont+=1;
   }	
	   
	  } 
/*guardar xml--------------------------------*/ 

$archivo_x="LIBCOM_".$ano."_".$mes.".xml";
$archivo="../LibFE/DOC/ORIGINAL/".$archivo_x;

 $xml->formatOut=true;
 $strings_xml=$xml->saveXML(); 


if($xml->save($archivo)) 
  {
 
   subirArchivo($archivo_x, $ip_empresa, $id_empresa, $sitio_empresa);	
  echo("Termino de crear el ".$archivo.""); 
  }
 else
 {   echo("No se puede guardar el ".$archivo); }

 
 ?>
 
 <table width="640" border="0" align="center" cellpadding="0" cellspacing="0">
	<tr>
		<td width="10%" align="center">	<input type="button" name="Salir" value="Salir" onClick="fun_salir();"></td>
	</tr>
</table>




 <script>
function fun_salir()
	{
	window.top.open('','_parent','');window.top.close();		
	}
</script>


<?php 

function subirArchivo($nombreArchivo,$ip_empresa,$emp,$sitio_empresa)
    {
	$handle = curl_init();
	curl_setopt($handle, CURLOPT_POST, true);
	
curl_setopt($handle, CURLOPT_URL, 'http://'.$ip_empresa.'/'.$sitio_empresa.'/LibFE/firmarDTE/FirmaEmpaquetaEnviaLibros.php?documento='.$nombreArchivo);
	curl_exec($handle);
	curl_close($handle);
    }
?>