<?php
session_start();
include('../_cfg/config.php');
include('php_gene1.php'); 
include('php_session.php');

// if(file_exists('../_cfg/config.php')){include('../_cfg/config.php');}
$tipo=$_POST['ptipo']; 
$ffile=$_POST['ffile']; 
$ffile2=substr($ffile,0,48);

 foreach($_POST as $campo => $valor){${$campo}=$valor;} 

if($tipo=='.pdf')
{
	$n_original=$_FILES['ffile']['name'];
	$n_tempo=$_FILES['ffile']['tmp_name'];
   
   echo '<hr>';
   echo ' Archivo : '.$n_original.'<br><br>';
   
   
	if($_FILES['ffile']['type']=='application/pdf')
  {
      $n_destino=$rutadoc.'DAI_'.$cfg_empr.'.pdf';
      if(move_uploaded_file($n_tempo, $n_destino)){echo '==> OK'; }else{echo '==> Error'; }
      $source_pdf=$n_destino;
          
//           echo '<br>*/*/*/'.$n_destino;
      
      $output_folder='../../pdf2html';
      if(!file_exists($output_folder)){mkdir($output_folder, 0777, true);}
//       $output_file=$output_folder.'/DAI_'.$cfg_empr;
      $output_file=$output_folder.'/DAI_'.$cfg_empr;
//           echo '<br>*/*/*/'.$source_pdf;
//           echo '<br>*/*/*/'.$output_file;
          
          $exefile='pdftohtml';
//           $exefile='../_lib/pdftohtml';
          echo '<br>EXIST '.$exefile.' : '.file_exists($exefile);
//           $exefile=$source_pdf;
//           echo '<br>EXIST '.$exefile.' : '. file_exists($exefile);
      $a= passthru("pdftohtml $source_pdf $output_file",$b);
//       $a= passthru("$exefile $source_pdf $output_file",$b);
      $xhtml=file_get_contents($output_file.'s.html');
  
          echo '<br>*/*/*/*/ source == '.$source_pdf;
          echo '<br>*/*/*/*/ output == '.$output_file;
          echo '<br>*/*/*/*/ passthru == '.$b;
//           echo '*/*/*/*/'.$output_file;

//           echo '*/*/*/*/ HTML === '.$xhtml;

          
          
     $filepdf=$source_pdf;
//           Flete$$$
//           $$Seguro
     include('PdfToText.phpclass') ;
//      echo '<br><br><br>*/*/*/*/*/*/*/**/*/*/*  pdftotext';
     $pdf=new PdfToText ( $filepdf ) ;
//      echo '<br> F->'.$filepdf;
//      echo '<br> P->'.$pdf;
     $text =$pdf -> Text ; 		// or you could also write : echo ( string ) $pdf ;
//      echo '<br> T-->>'.substr($text,0,1000);
     $xflete=$text;
     $xseguro=$text;
          
     $xflete=substr($xflete,strpos($xflete,'Flete'),15);
     $xflete=substr($xflete,5);
     $xflete=floatval($xflete);
          
     $xseguro=substr($xseguro,0,strpos($xseguro,'Seguro'));
     $xseguro=substr($xseguro,-15);
     $xseguro=substr($xseguro,strpos($xseguro,'justes')+6);
//      $xseguro=substr($xseguro,strpos($xseguro,'s')+1);
     $xseguro=floatval($xseguro);
          
          echo '<br> F:'.$xflete;
          echo '<br> S:'.$xseguro; 
          
          
          
//           echo '*/*/*/'.$xhtml;
      if(mb_stristr($xhtml,$cfg_ruc))
      {
         $dato=$xhtml;
         $dato=substr($dato,strpos($dato,'Consulta de detalle'));
         $dato=substr($dato,strpos($dato,'<br>')+4);
         $dato=substr($dato,0,strpos($dato,'<br>'));

         $numero=substr($dato,strrpos($dato,'-')+1);
         $numero=fillzero($numero);
         $ptoe=substr($dato,strpos($dato,'-')+1,7);
         $ptoe=str_replace('-','',$ptoe);
         
           echo '<br>*/*/*/'.$numero;
           
         $dato=$xhtml;
         $dato=substr($dato,strpos($dato,'Fecha de Acepta'));
         $dato=substr($dato,strpos($dato,'<br>')+4);
         $dato=substr($dato,0,strpos($dato,'<br>'));
         $dato=trim($dato);
         
         $fecha=substr($dato,6,4).'-'.substr($dato,3,2).'-'.substr($dato,0,2);
         
         $seguro1=0;
         $flete1=0;
         
//          $seguro1=2770;
//          $flete1=290.621;
         

        // echo informativo
//          echo '<br>';
//          echo $xhtml;

        
        
         $docu='DA16';
         $sql_da16='select * from prov1 where docu like "'.$docu.'" and ptoe="'.$ptoe.'" and numero="'.$numero.'" and status!="X"';
         $res_da16=msql_query($sql_da16,$link_vcrx);

//         echo '<br>*/*/*'.$sql_da16;
//         echo '<br>*/*/*'.$
        
         if(msql_num_rows($res_da16)==0)
         {
            echo '****** NUEVO *****';
            $sql_inse='insert into prov1(docu,ptoe,numero,status,iuser,idate)value("'.$docu.'","'.$ptoe.'","'.$numero.'","-","'.$user_codigo.'",now())';
            $res_inse=msql_query($sql_inse,$link_vcrx);
            $res_da16=msql_query($sql_da16,$link_vcrx);
         }

         $idnum=msql_result($res_da16,0,'idnum1');

//         echo '*/*/*/*/*/* ID'.$idnum;
         
         if($idnum>0)
         {
            
            $sql_updt =' update prov1 set ';
            $sql_updt.=' enti="1760013480001", ';
            $sql_updt.=' fecha="'.$fecha.'", ';
            $sql_updt.=' seguro1="'.$xseguro.'", ';
            $sql_updt.=' flete1="'.$xflete.'", ';
            $sql_updt.=' impor="'.$impor.'", ';
            $sql_updt.=' udate=now(), ';
            $sql_updt.=' status="-" ';
            $sql_updt.=' where idnum1="'.$idnum.'" ';
            $res_updt=msql_query($sql_updt,$link_vcrx);
            
            $sql_dele='delete from prov2 where idnum2="'.$idnum.'"';
            $res_dele=msql_query($sql_dele,$link_vcrx);         

            //////////////////////////////////////////////
            $dato=$xhtml;
//            echo '*/*/**/*/*'.$dato;
              
            $dato=substr($dato,strpos($dato,'ubpartida'));
            $dato=substr($dato,strpos($dato,'comerciales'));
//             $dato=substr($dato,strpos($dato,'<br>')+4);
            $dato=substr($dato,strpos($dato,'1'));
            $dato=substr($dato,0,strpos($dato,'Autoliq.'));
            $dato=trim($dato);
           
//            echo '*/*/**/*/*'.$dato;
           
            $dato=explode('<br>',$dato);
            $cols=8;
            $rows=round(count($dato)/$cols,0);

           $idx=0;
//             for($idx=0; $idx<count($dato); $idx++)
              
//               echo '<br>*/*/*/'.count($dato);
//               echo '<br>*/*/*/'.$xhtml;
            while($idx<=count($dato))
            {
                 if(trim($dato[$idx])<$liddet){break;}
              for($colu=0; $colu<=7; $colu++)
              {
                if($colu==0)
                {
                  $iddet=trim($dato[$idx]);
//                      $iddet=(int)$iddet;
                  if(strlen($iddet)>3){$iddet=0;}
                  $sql_inse='insert into prov2(idnum2,iddet,idate2)value("'.$idnum.'","'.$iddet.'",now())';
                  $res_inse=msql_query($sql_inse,$link_vcrx);
                   
                   $liddet=$iddet;  
//                    echo '<br>IDDET : '.$iddet;
                }
                 $field='';
                 if($colu==1){$field='arcl';}
                 if($colu==4){$field='detalle';}
                 if($colu==6){$field='peso';}
                 if($colu==7){$field='cant';}
                   

                 if(!empty($field))
                 {
                     $valor=trim($dato[$idx]);
                     if($field=='arcl'){ $valor.=trim($dato[$idx+1]).trim($dato[$idx+2]); }
                     $sql_updt ='update prov2 set ';
                     $sql_updt.=$field.'="'.$valor.'", ';
                        $sql_updt.='idate2=now() ';
  //                    $sql_updt.=$field.'=concat('.$field.',"'.$valor.'") ';
                     $sql_updt.='where idnum2="'.$idnum.'" and iddet="'.$iddet.'"';
                     $res_updt=msql_query($sql_updt,$link_vcrx);
                   
                      
//                       if(mb_stristr('2',$iddet))
//                       {echo '<br>'.$sql_updt;}
                      
                      if(msql_errno($link_vcrx)!=0)
                      {
//                        echo '<br>***';
//                        echo '<br>';
//                        echo $sql_updt;
//                        echo '<br>';
//                        echo msql_error($link_vcrx);
//                        echo '<br>';
                      }
                   
                 }
                $idx++;
//                   echo'<br>+++++++'.$idx;
              }
                 
//               if(trim($dato[$idx])*1==0)
              while(trim($dato[$idx])*1==0 and $idx<=count($dato))
              {
                $idx++;
              }
              
            }

//               echo '<br>*/*/*/'.$xhtml;
//               die();
//               echo '<br>*/*/*/'.substr($xhtml,0);
           
           
           $colu=0;
//             for($idx=0; $idx<$rows*$cols; $idx++)
              if(1==2)
            {
               if($colu % $cols==0)
               {
                  $iddet=trim($dato[$idx]);
//                  if($iddet*1<=0){echo 'ERROR';}
                  $sql_inse='insert into prov2(idnum2,iddet)value("'.$idnum.'","'.$iddet.'")';
                  $res_inse=msql_query($sql_inse,$link_vcrx);
               }
               
               $field='';
               if($colu % $cols==1){$field='arcl';}
//                if($idx % $cols==2){$field='arcl';}
//                if($idx % $cols==3){$field='arcl';}
               if($colu % $cols==4){$field='detalle';}
               if($colu % $cols==6){$field='peso';}
               if($colu % $cols==7){$field='cant';}
               
               if(!empty($field))
               {
                   $valor=trim($dato[$idx]);
                   if($field=='arcl'){ $valor.=trim($dato[$idx+1]).trim($dato[$idx+2]); }
                   $sql_updt ='update prov2 set ';
                   $sql_updt.=$field.'="'.$valor.'", ';
                                       $sql_updt.='idate2=now() ';

//                    $sql_updt.=$field.'=concat('.$field.',"'.$valor.'") ';
                   $sql_updt.='where idnum2="'.$idnum.'" and iddet="'.$iddet.'"';
                   $res_updt=msql_query($sql_updt,$link_vcrx);
//                  echo '<br>';
//                   echo $sql_updt;
//                   echo msql_error();
               }
              $colu++;
//               if($colu>=8)
//               {
//                 echo '<br>*/*/*/';
//                 echo trim($dato[$idx]);
// //                 while(trim($dato[$idx])*1==0){$idx++;}
//                 $colu=0;
//               }
//                  echo '<br>';
            }


//               echo '<br>*/*/*/'.$xhtml;
            
            //////////////////////////////////////////////
            $dato=$xhtml;
            $dato=substr($dato,strpos($dato,'Autoliq. Por'));
            $dato=substr($dato,strpos($dato,'1'));
            $dato=substr($dato,0,strpos($dato,'Documento'));
            $dato=trim($dato);
              
            $quita=$dato; 
            $quita=substr($quita,strpos($quita,'de hoja')-3);
//             $quita=substr($quita,strpos($quita,'1'));
            $quita=substr($quita,0,strpos($quita,'dia')+8);
            $quita=trim($quita);
            
              
//               echo '<br>*/*/*/*DATO:'.strlen($dato);
//               echo '<br>*/*/*/'.$quita;
              $dato=str_replace($quita,'',$dato);
//               echo '<br>*/*/*/'.$dato;
            
            $dato=explode('<br>',$dato);
            $cols=11;
//               echo '<br>*/*/*/'.count($dato);
              
            $rows=round(count($dato)/$cols,0);

            for($idx=0; $idx<$rows*$cols; $idx++)
            {
               if($idx % $cols==0)
               {
                  $iddet=trim($dato[$idx]);
//                      if(strlen($iddet)>3){$iddet=0;}
                  $sql_inse='insert into prov2(idnum2,iddet,idate2)value("'.$idnum.'","'.$iddet.'",now())';
                  $res_inse=msql_query($sql_inse,$link_vcrx);
//                     echo '<br>IDDET :'.$iddet;
               }
               
               $field='';
               if($idx % $cols==1){$field='adva';}
               if($idx % $cols==2){$field='espe';}
               if($idx % $cols==3){$field='dump';}
               if($idx % $cols==4){$field='fodi';}
//                if($idx % $cols==6){$field='peso';}
               if($idx % $cols==7){$field='ivai';}
               
               if(!empty($field))
               {
                   $valor=trim($dato[$idx]);
//                    if($field=='iva'){ $valor=12; }
                   if($field=='ivai'){ $valor=12; }
                   $sql_updt ='update prov2 set ';
                   $sql_updt.=$field.'="'.$valor.'", ';
                   $sql_updt.='idate2=now() ';
//                    $sql_updt.=$field.'=concat('.$field.',"'.$valor.'") ';
                   $sql_updt.='where idnum2="'.$idnum.'" and iddet="'.$iddet.'"';
                   $res_updt=msql_query($sql_updt,$link_vcrx);
//                   echo '<br>'.$sql_updt;
//                   echo msql_error($link_vcrx);
               }
                 
 //                if($idx==1){die(); }
            }
            
         }
         
                  echo '<br>***';
                  echo '<br>***';

         echo 'ID:'.$idnum;
$sql_dele='delete from prov2 where iddet=0 and idnum2="'.$idnum.'"';
$res_dele=msql_query($sql_dele,$link_vcrx);

$sql_dele='delete from prov2 where item not like "20%" and idnum2="'.$idnum.'"';
$res_dele=msql_query($sql_dele,$link_vcrx);

      }

  }
  else
  {$file=file_get_contents($n_tempo);}

     
  
  
}

// if($tipo=='full')
// {
// 	echo '<br>'.'Cargando Datos....FULL....';
// 	echo upl_claves2();
// 	echo fill_autornum();
// }

return;


?>







