 <?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'];
$id_bodega = $_SESSION['ss_bodega'];

$id_zona = $_POST["lstzona"];	
$id_vendedor = $_POST["lstvendedor"];	
$fecha = $_POST["txtfecha"];

	//$txtndcto = $_POST["txtndcto"];
	$tipodcto = 39; // $_POST["id_txt"];     // boleta ELec =39
	$id_tipo_dcto = 39;



include("../conex.php");

function quitarEspecialesXML($sCad)
      {
         $sCad=str_replace("&","&amp;",$sCad);
         $sCad=str_replace("<","&lt;",$sCad);
         $sCad=str_replace(">","&gt;",$sCad);
         $sCad=str_replace('"',"&#34;",$sCad);
         $sCad=str_replace("'","&#39;",$sCad);
         return $sCad;
      }

function subirArchivo($nombreArchivo,$ip_empresa,$emp,$sitio_empresa)
    {
	$handle = curl_init();
	curl_setopt($handle, CURLOPT_POST, true);
	//curl_setopt($handle, CURLOPT_POSTFIELDS, array('file' => '@'.$nombreArchivo));
	
curl_setopt($handle, CURLOPT_URL, 'http://'.$ip_empresa.'/'.$sitio_empresa.'/LibFE/firmarDTE/FirmaEmpaquetaBolPdf.php?documento='.$nombreArchivo);

/*
http://192.168.0.19/softco.cl/LibFE/firmarDTE/FirmaEmpaquetaBolPdf.php?documento=BOLETA_39_101.xml */

	curl_exec($handle);
	curl_close($handle);
    }




$cant = 1;
$flag=0;
	
/******************************  Id BOLETA *******************************************************************/	
/******************** valida numero de SII   en tope	 *********/
	
	$sql_ultima_bol = "SELECT correlativo, tope FROM tipo_dcto_num_bodega  WHERE id_bodega =1 AND id_dcto='$id_tipo_dcto'";
	$res_ultima_bol = mysql_query($sql_ultima_bol,$enlace);

	if(mysql_fetch_object($res_ultima_bol))	
	   
		$num_tope = mysql_result($res_ultima_bol,0 ,"tope");
		$sql_num_bol = mysql_result($res_ultima_bol,0 ,"correlativo");
		$sql_num_bol = (int)$sql_num_bol+1;
		
	       if ($sql_num_bol>$num_tope) 
		   {
		   ?>
	<script language="javascript">
	alert("Solicitar folio en SII para Documentos");
	window.top.open('','_parent','');window.top.close(); 
	</script>
	     <?
		 exit();
           }



//********************* actualiza numero factura ************************	

$up_dcto = "UPDATE tipo_dcto_num_bodega SET correlativo = $sql_num_bol WHERE id_dcto = '$id_tipo_dcto' AND id_bodega=1 AND id_empresa = $id_empresa";
	$res_up_dcto = mysql_query($up_dcto,$enlace);	
		
	
	/****************************************** calculo neto e iva bodega con iva************/
	    $sql_neto = $txtneto;     //($txttotal/1.19);
        $sql_iva = $txtiva;
	    $sql_exento = $txtexento;
		$sql_total = $sql_exento + $sql_neto + $sql_iva;
		$id_tipo_pago='1';
	/************************************* insertar salida ***********************************************/	
	$dia = substr ($fecha, 0, 2);
	$mes = substr ($fecha, 3, 2);
	$aņo = substr ($fecha, 6, 4); 
	$fecha_em = "$aņo-$mes-$dia";
	$wsql = "INSERT INTO salida (rut_cliente, empresa, num_dcto, tipo_dcto, fecha_emision, fecha_vencimiento, tipo_pago, iva_retenido, exento, neto, iva, total, productos, usuario, bodega, vendedor, zona, por_descuento, descuento) 
	VALUES ('66.666.666-6', $id_empresa, $sql_num_bol, $id_tipo_dcto, '$fecha_em', '$fecha_em', $id_tipo_pago, 0,  $sql_exento, $sql_neto, $sql_iva, $sql_total, 1, $id_user, 1, $id_vendedor,$id_zona, '$por_descuento', '$txtdescuento')";
	//echo 'id empresa: '.$id_empresa.' numero bol: '. $sql_num_bol.' tipo docto: '. $id_tipo_dcto.'  fecha emision: '. $fecha_em.' tipo pago: '. $id_tipo_pago.' excento: '. $sql_exento.' neto:  '. $sql_neto.' iva: '. $sql_iva.' total: '. $sql_total.' usuario: '. $id_user.' bodega: '. $id_bodega.' vendedor '. $id_vendedor.' zona: '.$id_zona.' por descuento: '. $por_descuento.' descuento: '. $txtdescuento.' ';
	//exit();
	//echo($wsql);
	$consulta = mysql_query($wsql,$enlace);
	$sql_ultimo = "SELECT id FROM salida WHERE id=last_insert_id()";
	$res_ultimo =  mysql_query($sql_ultimo, $enlace);		
	$sultimo_id = mysql_result($res_ultimo, 0, "id");
 
$cant = 1;
$cnt_tot_prod=0;
$total_while=0;
while ($cant<=$cnt)
	{
	if ($total[$cant]>0)
		{
		$cnt_tot_prod+=1;
		$detalle[$cant]= quitarEspecialesXML($detalle[$cant]);
		$detalle_1[$cant]= quitarEspecialesXML($detalle_1[$cant]);
		$psql = "INSERT INTO movimiento (rut, empresa, entrada_salida_traspaso, fecha, cod_producto, cantidad, precio_unitario, numero_dcto, tipo_dcto, descuentos, bodega, id_soe, factor, detalle, sub_total) 
		VALUES ('66.666.666-6', $id_empresa, 'S', '$fecha_em', $codigo[$cant], $cantidad[$cant], $precio[$cant], $sql_num_bol, $id_tipo_dcto, '$desc[$cant]', 1, $sultimo_id, 1, '$detalle[$cant]', $total[$cant] )";	
		//echo ($psql);
		$sql_productos = mysql_query($psql,$enlace);
		$sql_sal = "UPDATE productos SET saldo=(saldo-$cantidad[$cant]), u_salida=(u_salida+$cantidad[$cant]) WHERE empresa=$id_empresa AND codigo = $codigo[$cant]";
		mysql_query($sql_sal,$enlace);
		
						
/******************************************VERIFICA EXISTENCIA BODEGA MOVIMIENTO****************************************************/
			/*
			$sql_bbm = "SELECT * FROM bodega_movimiento WHERE producto = $codigo[$cant] AND bodega = $id_bodega AND empresa = $id_empresa";
			$res_bbm = mysql_query($sql_bbm,$enlace);
			$rowbbm=0;
			while (mysql_fetch_object ($res_bbm))
				{
				$rowbbm=$rowbbm+1;
				}
				if ($rowbbm==0)
					{
					$sqlibm="INSERT INTO bodega_movimiento (empresa, bodega, producto, saldo_entrada, saldo_salida, inventario, precio_venta, precio_costo, porcentaje_comercializacion) VALUES ($id_empresa, $id_bodega, $codigo[$cant],0, $cantidad[$cant], 0, $precio[$cant], 0, 0)";
					$res_ibm = mysql_query($sqlibm,$enlace);
					}
				else 
					{
					$sqlubm="UPDATE bodega_movimiento SET saldo_salida=(saldo_salida+$cantidad[$cant]), precio_venta = $precio[$cant] WHERE producto = $codigo[$cant] AND bodega = $id_bodega AND empresa = $id_empresa";
					$res_ubm = mysql_query($sqlubm,$enlace);
					}
				*/

		}
	$cant=$cant+1;
	}
	

	//************** Fin grabacion boleta **********************


/********************************** Datos Empresa ****************** seleccionar cual empresa  es el ingreso  en ssesion******/
	$sql_empresa = "SELECT * FROM empresa, comunas WHERE comunas.cod_comuna = empresa.comuna and id=$id_empresa;";
	$res_empresa = mysql_query($sql_empresa,$enlace);
	$row=0;
	while (mysql_fetch_object ($res_empresa))
		{
		$empresa_rut=mysql_result($res_empresa, $row, "rut_empresa");
		$empresa_rut = str_replace('.', '', $empresa_rut);
		$empresa_nombre=mysql_result($res_empresa, $row, "nombre");
		$empresa_direccion=mysql_result($res_empresa, $row, "direccion");
		$empresa_ciudad=mysql_result($res_empresa, $row, "ciudad");
		$empresa_comuna=mysql_result($res_empresa, $row, "comunas.comuna");
		$empresa_actividad=mysql_result($res_empresa, $row, "actividad");
		$empresa_acteco=mysql_result($res_empresa, $row, "acteco");
		$empresa_rut_representante=mysql_result($res_empresa, $row, "rut_representante");
		$empresa_nombre_representante=mysql_result($res_empresa, $row, "nombre_representante");
		$sitio_empresa=mysql_result($res_empresa, $row, "sitio_empresa");
        $ip_empresa=mysql_result($res_empresa, $row, "ip_empresa");
		$row=$row+1;
		}

//**************************Selecciona comuna*****************************************************/
$sqlc = "SELECT * FROM comunas WHERE cod_comuna = $lstcom";
$resc = mysql_query($sqlc,$enlace);
$row=0;
while (mysql_fetch_object ($resc))
	{
	$comuna = mysql_result($resc, $row, "comuna");
	$row+=1;
	}
//*****************************************************************

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

$tipopago=1;

$fecha_desde=$fecha;
$fecha_hasta=$fecha;

     $txtpor=$por_descuento;
	$txtndcto = $sql_num_bol ;   //$_POST["txtndcto"];

$tipodcto=$id_tipo_dcto;    // boleta
  //$tipodcto=41;    // boleta exenta

$sql_total=$_POST["txttotal"];

$tiposervicio=3;   


$cnt=$_GET["cnt"];
//****  genera XML *******


$xml=new DomDocument("1.0", "UTF-8");


    $raiz=$xml->createElement("DTE");
    $raiz=$xml->appendChild($raiz); 
	$raiz->setAttribute("version", "1.0"); 
	$raiz->setAttribute("xmlns", "http://www.sii.cl/SiiDte");
    

 
		
	$Documento=$xml->createElement("Documento");
    $Documento=$raiz->appendChild($Documento); 
    $Documento->setAttribute("ID", "BOL-".$tipodcto."-".$txtndcto); 	
   
   $Encabezado=$xml->createElement("Encabezado");
    $Encabezado=$Documento->appendChild($Encabezado); 

 /*--IdDoc-------------------------*/ 
 $IdDoc=$xml->createElement("IdDoc");
 $IdDoc=$Encabezado->appendChild($IdDoc); 
 
 $TipoDTE=$xml->createElement("TipoDTE", $tipodcto);     //$lstdcto =39
 $TipoDTE=$IdDoc->appendChild($TipoDTE); 
 $Folio=$xml->createElement("Folio",$txtndcto);
 $Folio=$IdDoc->appendChild($Folio);
 $FchEmis=$xml->createElement("FchEmis", $fecha);
 $FchEmis=$IdDoc->appendChild($FchEmis); 
 
 $IndServicio=$xml->createElement("IndServicio", $tiposervicio);
 $IndServicio=$IdDoc->appendChild($IndServicio); 
 /*
 $PeriodoDesde=$xml->createElement("PeriodoDesde", $fecha_desde);
 $PeriodoDesde=$IdDoc->appendChild($PeriodoDesde); 

 $PeriodoHasta=$xml->createElement("PeriodoHasta", $fecha_hasta);
 $PeriodoHasta=$IdDoc->appendChild($PeriodoHasta);

  $FchVenc=$xml->createElement("FchVenc", $fecha2);
  $FchVenc=$IdDoc->appendChild($FchVenc);
   */
  /*--Emisor----------------------*/ 
  $Emisor=$xml->createElement("Emisor");
  $Emisor=$Encabezado->appendChild($Emisor);
   
  $RUTEmisor=$xml->createElement("RUTEmisor", $empresa_rut);
  $RUTEmisor=$Emisor->appendChild($RUTEmisor);
        $empresa_nombre = quitarEspecialesXML($empresa_nombre); 
  $RznSoc=$xml->createElement("RznSocEmisor", $empresa_nombre);
  $RznSoc=$Emisor->appendChild($RznSoc); 
         $empresa_actividad = quitarEspecialesXML($empresa_actividad);  
  $GiroEmis=$xml->createElement("GiroEmisor", $empresa_actividad);
  $GiroEmis=$Emisor->appendChild($GiroEmis); 
          $empresa_direccion= quitarEspecialesXML($empresa_direccion); 
  $DirOrigen=$xml->createElement("DirOrigen", $empresa_direccion);
  $DirOrigen=$Emisor->appendChild($DirOrigen);
  	       $empresa_comuna = quitarEspecialesXML($empresa_comuna); 
  $CmnaOrigen=$xml->createElement("CmnaOrigen", $empresa_comuna);
  $CmnaOrigen=$Emisor->appendChild($CmnaOrigen);  
           $empresa_ciudad = quitarEspecialesXML($empresa_ciudad); 
  $CiudadOrigen=$xml->createElement("CiudadOrigen", $empresa_ciudad);
  $CiudadOrigen=$Emisor->appendChild($CiudadOrigen); 
 
  
/*--Receptor----------------------*/ 
  $Receptor=$xml->createElement("Receptor");
  $Receptor=$Encabezado->appendChild($Receptor); 
  
  $RUTRecep=$xml->createElement("RUTRecep", "66666666-6"); 
  $RUTRecep=$Receptor->appendChild($RUTRecep); 
 
  
         $txtrsoc = 'Cliente Boleta'; quitarEspecialesXML($txtrsoc); 
  $RznSocRecep=$xml->createElement("RznSocRecep", $txtrsoc);
  $RznSocRecep=$Receptor->appendChild($RznSocRecep); 
         
           $txtdireccion = ''; // quitarEspecialesXML($txtdireccion);
  $DirRecep=$xml->createElement("DirRecep", substr($txtdireccion,0,59));
  $DirRecep=$Receptor->appendChild($DirRecep); 
            $comuna = ''; //quitarEspecialesXML($comuna);
  $CmnaRecep=$xml->createElement("CmnaRecep", $comuna);
  $CmnaRecep=$Receptor->appendChild($CmnaRecep);
             $txtciudad = ''; //quitarEspecialesXML($txtciudad);  
  $CiudadRecep=$xml->createElement("CiudadRecep", $txtciudad);
  $CiudadRecep=$Receptor->appendChild($CiudadRecep);   

/*--Totales--------------------------*/ 
   $Totales=$xml->createElement("Totales");
   $Totales= $Encabezado->appendChild($Totales);
    
/*$MntNeto=$xml->createElement("MntNeto", $sql_neto);
   $MntNeto=$Totales->appendChild($MntNeto);*/
   if ($sql_exento>0) 
    {
   $MntExe=$xml->createElement("MntExe", $sql_exento);
   $MntExe=$Totales->appendChild($MntExe);
    }
	
	  /*   $IVA=$xml->createElement("IVA", $sql_iva);
	 $IVA=$Totales->appendChild($IVA);  */
	
   $MntTotal=$xml->createElement("MntTotal", $sql_total);
	$MntTotal=$Totales->appendChild($MntTotal);
	
 

/*--Detalles--------------------------*/ 
$cntcal=1;
while ($cntcal<=$cnt)
	{
	  	if ($codigo[$cntcal]!='')
	{
	 $Detalle=$xml->createElement("Detalle");
     $Detalle= $Documento->appendChild($Detalle); 	
      $NroLinDet=$xml->createElement("NroLinDet", $cntcal);
	   $NroLinDet=$Detalle->appendChild($NroLinDet);
	     
	  $CdgItem=$xml->createElement("CdgItem");
	  $CdgItem=$Detalle->appendChild($CdgItem);
	   
	        $TpoCodigo=$xml->createElement("TpoCodigo","");
	        $TpoCodigo=$CdgItem->appendChild($TpoCodigo);
	   
	        $VlrCodigo=$xml->createElement("VlrCodigo", $codigo[$cntcal]);
	        $VlrCodigo=$CdgItem->appendChild($VlrCodigo);
	 
     if ($afecto[$cntcal]=='0')
	 {
     $IndExe=$xml->createElement("IndExe", "1");
	 $IndExe=$Detalle->appendChild($IndExe);	
	 }
			  
     $NmbItem=$xml->createElement("NmbItem", $detalle[$cntcal] );   
	 $NmbItem=$Detalle->appendChild($NmbItem);	
	 
	
	 $DscItem=$xml->createElement("DscItem", $detalle_1[$cntcal]);   
	 $DscItem=$Detalle->appendChild($DscItem);	
	 
	
	if ($cantidad[$cntcal]!=0)
	 {
	 $QtyItem=$xml->createElement("QtyItem", $cantidad[$cntcal]);
	 $QtyItem=$Detalle->appendChild($QtyItem);	
	 }
	
	//****** unidad de medida  ***** UnmdItem
	if ($unidad[$cntcal]!='')
	 { 
	 
	 $UnmdItem=$xml->createElement("UnmdItem", $unidad[$cntcal] );   
	 $UnmdItem=$Detalle->appendChild($UnmdItem);	
     
	   }
	
	 if ($precio[$cntcal]!=0)
	 {
	 $PrcItem=$xml->createElement("PrcItem", $precio[$cntcal]);
	 $PrcItem=$Detalle->appendChild($PrcItem);	
	 }
	 
	
	
	 $MontoItem=$xml->createElement("MontoItem", $total[$cntcal]);
	 $MontoItem=$Detalle->appendChild($MontoItem);	
      }
	$cntcal+=1;
	}


// adjuntos

 //  $Adjuntos=$xml->createElement("Adjuntos");
  // $Adjuntos= $Documento->appendChild($Adjuntos); 	
    //   $Observacion=$xml->createElement("Observacion", $totalkilos);CASO  316414-1
	 //  $Observacion=$Adjuntos->appendChild($Observacion);
     //  $Observacion=$xml->createElement("Observacion", $obs1);
	  // $Observacion=$Adjuntos->appendChild($Observacion);
	   
/*guardar xml--------------------------------*/ 

$archivo_x="BOLETA_".$tipodcto."_".$txtndcto.".xml";
$archivo="../LibFE/DOC/ORIGINAL/".$archivo_x;

$archivo_f="BOLETA_".$tipodcto."_".$txtndcto."_f.pdf";
$archivo_xml_a_pdf="BOLETA_".$tipodcto."_".$txtndcto."_f.xml";
 $xml->formatOut=true;
 $strings_xml=$xml->saveXML(); 

if($xml->save($archivo))
  {
  subirArchivo($archivo_x, $ip_empresa, $id_empresa, $sitio_empresa);	// cargar archivo
	echo "Termino de crear el Original:".$archivo." Firmado:".$archivo_f." ";
  }
   else 
  {
	echo "No pudimos guardar el ".$archivo;
  }


 
 
 ?>
  <script language="javascript">
    window.opener.document.form1.firmado.value = '<?=$archivo_f;?>';
	window.top.open('','_parent','');window.top.close();	


</script>
 