TransWar File Browser

Path: C:\

<?php
ini_set('max_execution_time',259200); 
ini_set ('memory_limit','1536M');
require_once("API07_MobileRestHandler.php");
date_default_timezone_set('America/Sao_Paulo');
$base1 = date("Ymd"); 

$semana=date('w');if($semana==1){$cont1=7;$cont2=3;}else{$cont1=7;$cont2=1;}
$inicio=date('d-m-Y', strtotime($base1. ' - '.$cont1.' days'));
$diaant=date('d-m-Y', strtotime($base1. ' - '.$cont2.' days'));

$final=date("d-m-Y"); 
if ($grupo<>"nulo"){$logo='grupo_'.$grupo.'.png';} else {if($empresa<>"nulo"){$logo='empresa_'.$empresa.'.png';} else{$logo='logo.png';}}
if ($logo<>'logo.png'){if (!file_exists('images/'.$logo)) {$logo='logo.png';}}
$ano1=substr($inicio, 6);
$mes1=substr($inicio, 3,-5);
$dia1=substr($inicio, 0,-8);
$data1=$ano1.$mes1.$dia1;
$ano2=substr($final, 6);
$mes2=substr($final, 3,-5);
$dia2=substr($final, 0,-8);
$data2=$data3=$ano2.$mes2.$dia2;
$mobileRestHandler = new MobileRestHandler();
$linha = $mobileRestHandler->getMobile($data1, $data2, $data3, $grupo, $ds_grupo, $empresa);
$lin=count($linha);
$nf='n';
$matriz = file_get_contents('upload/matriz.json');
$principal = json_decode($matriz, true);
$oc=count($principal);
$x1=0;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='black')
  { $x1++;$black[$x1]=$principal[$x]['id'];}
}
$x1++;$black[$x1]=108;
$x3=0;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='green')
  { $x3++;$green[$x3]=$principal[$x]['id'];}
}
$z=1;
for ($q=1; $q <= $lin; $q++) 
{ $ind=intval($linha[$q][25]);
  $nao=0;for($i=1;$i<$x1;$i++){if($ind==$black[$i]){$nao=1;}}
  if($nao==0)
  { $finaliz=0;for($i=1;$i<$x3;$i++){if($ind==$green[$i]){$finaliz=1;}}
    if ($finaliz==1)
    { $nf='s';
      if ($linha[$q][35]>=$data2)
      { if ($linha[$q][7]=='COLETA')
        { if($linha[$q][26]=='COLETADA (SEM OCORRÊNCIA)'){$linha[$q][26]='SERVIÇO REALIZADO NORMALMENTE';}
        }
      }
    }
    else
    { if ($linha[$q][7]=='ENTREGA')
      { if ($q>=2){if ($linha[$q][9]<>$linha[$q-1][9]){$nf='n';}}
        if ($q+1<=$lin){
        if ($linha[$q][9]<>($linha[$q+1][9]))
        { if ($nf!='n')
          { 
            $nf='n';
          }
        }}
      }
      else
      { if ($ind<>69)
        { if ($q>1){if ($linha[$q][12]<>$linha[$q-1][12]){$nf='n';}}
          if ($q==$lin)
          { if ($nf=='n')
            { if ($linha[$q][32]=='S' and $linha[$q][35]<>$data2)
              { $linha[$q][26]='SERVIÇO REALIZADO NORMALMENTE';$linha[$q][25]='32';$ind=32;
              }
            }
          }
          else
          { if ($linha[$q][12]<>($linha[$q+1][12]))
            { $nf='n';
              if ($linha[$q][32]=='S' and $linha[$q][35]<>$data2)
              { $linha[$q][26]='SERVIÇO REALIZADO NORMALMENTE';$linha[$q][25]='32';$ind=32;
              }
            }
          }
        }
      }
    }
    $linha2[$z]=$linha[$q];$z++;
  }
}
$x2=1;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='red')
  { $red[$x2]=$principal[$x]['id'];$x2++;}
}
$x3=1;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='green')
  { $green[$x3]=$principal[$x]['id'];$x3++;}
}
$x4=1;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='Peru')
  { $peru[$x4]=$principal[$x]['id'];$x4++;}
}
$x5=1;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='blue')
  { $blue[$x5]=$principal[$x]['id'];$x5++;}
}
$x6=1;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='Gold')
  { $gold[$x6]=$principal[$x]['id'];$x6++;}
}
$x7=1;
for ($x=0;$x<$oc;$x++)
{ if($principal[$x]['cor']=='Grey')
  { $gray[$x7]=$principal[$x]['id'];$x7++;}
}
$by2=$x2;$id2=$red;$by3=$x3;$id3=$green;$by4=$x4;$id4=$peru;$by5=$x5;$id5=$blue;$by6=$x6;$id6=$gold;$by7=$x7;$id7=$gray;
$top['OUTROS']=array();
$top['NÃO REALIZADO']=array();
$top['PROCESSO INICIADO']=array();
$top['EM ROTA DE ENTREGA']=array();
$top['CHEGADA NO LOCAL']=array();
$top['SERVIÇO REALIZADO']=array();
$lin=count($linha2);
$ant=$linha2[1][9];$start[$ant]=1;
$nf='n';
for ($q=1; $q <= $lin; $q++) 
{ if ($linha2[$q][9]<>$ant)
  { 
    $start[$linha2[$q][9]]=$q;
    $stop[$ant]=$q-1;
    $ant=$linha2[$q][9];
  }
  $ind=intval($linha2[$q][25]);
  if ($ind<>108 and $linha2[$q][7]=='ENTREGA')
  { $dt_ent=strtotime($linha2[$q][27]);$dt_prev=strtotime($linha2[$q][30]);$dt_col=strtotime($linha2[$q][37]);
    $finaliz=0;if ($ind==34 or $ind==35){$finaliz=1;}else{for($i=1;$i<$x3;$i++){if($ind==$green[$i]){$finaliz=1;}}}
    if ($finaliz==1)
    { $nf='s';
      if ($ind==34 or $ind==35)
      { if ($linha2[$q][35]>=$data2)
        {
        for($i=1;$i<$by2;$i++){if($ind==$id2[$i]){$top['NÃO REALIZADO'][]=$q;}}
        for($i=1;$i<$by4;$i++){if($ind==$id4[$i]){$top['PROCESSO INICIADO'][]=$q;}}
        }  
      }
      else
      {
      for($i=1;$i<$by3;$i++){if($ind==$id3[$i]){$top['SERVIÇO REALIZADO'][]=$q;}}
      for($i=1;$i<$by4;$i++){if($ind==$id4[$i]){$top['PROCESSO INICIADO'][]=$q;}}
      } 
    }
    else
    { if ($q>=2){if ($linha2[$q][9]<>$linha2[$q-1][9]){$nf='n';}}
      if ($q<>$lin)
      { if ($linha2[$q][9]<>$linha2[$q+1][9]) 
        { if ($nf=='n')
          {
            for($i=1;$i<$by2;$i++){ if($ind==$id2[$i]){$top['SERVIÇO REALIZADO'][]=$q; }}
            for($i=1;$i<$by3;$i++){if($ind==$id3[$i]){$top['NÃO REALIZADO'][]=$q;}}
            for($i=1;$i<$by4;$i++){if($ind==$id4[$i]){$top['PROCESSO INICIADO'][]=$q;}}
            for($i=1;$i<$by5;$i++){if($ind==$id5[$i]){$top['EM ROTA DE ENTREGA'][]=$q;}}
            for($i=1;$i<$by6;$i++){if($ind==$id6[$i]){$top['CHEGADA NO LOCAL'][]=$q;}}
            for($i=1;$i<$by7;$i++){if($ind==$id7[$i]){$top['OUTROS'][]=$q;}}
          }
          else
          { 
            $nf='n';
          }
        }
      }
      else
      { if ($nf=='n')
        {
          for($i=1;$i<$by2;$i++){if($ind==$id2[$i]){$top['SERVIÇO REALIZADO'][]=$q;}}
          for($i=1;$i<$by3;$i++){if($ind==$id3[$i]){$top['NÃO REALIZADO'][]=$q;}}
          for($i=1;$i<$by4;$i++){if($ind==$id4[$i]){$top['PROCESSO INICIADO'][]=$q;}}
          for($i=1;$i<$by5;$i++){if($ind==$id5[$i]){$top['EM ROTA DE ENTREGA'][]=$q;}}
          for($i=1;$i<$by6;$i++){if($ind==$id6[$i]){$top['CHEGADA NO LOCAL'][]=$q;}}
          for($i=1;$i<$by7;$i++){if($ind==$id7[$i]){$top['OUTROS'][]=$q;}}
        }
        else
        { 
          $nf='n';
        }
      }
    }
  }
}
$stop[$ant]=$q-1;
$json = json_encode($linha2); // Isto ira converter a array em json
$_SESSION['json2']=$json;
$topico='SERVIÇO REALIZADO';
$lin=count($top[$topico]);$bg1=0;
if ($lin>=1)
{
  $host = "192.168.0.203";                    
  $db = "dbOmnilink";
  $user = "sa";
  $password = "";                             
  $connectionOptions = array("Database" => $db, "UID" => $user, "PWD" => $password);
  $conn = sqlsrv_connect( $host, $connectionOptions);
  if (!$conn){echo "ATENÇÃO!! FALHA NA CONEXÃO BANCO OMNILINK!";}
  require_once 'API27.php';
  if (!file_exists('upload/'.$diaant)) {mkdir('upload/'.$diaant);} // Cria uma nova pasta dentro do diretório upload
  $file_txtnotas = fopen('upload/'.$diaant.'/Notas.txt', 'w');
  echo '
  <style>
    table.blue {
      table-layout:fixed; 
      font-family: Verdana, Arial, Helvetica, sans-serif;
      font-size: 12px; 
      }
    table.blue td {
      overflow: hidden;word-wrap: break-word;
      }
    th {
      text-align:left;
      padding:0px 0;
      }
    tr#linha:hover {
      background: #F3F781;
    }
  </style>
<aside role="complementary" class="col-md-9">
  <div class="panel panel-primary">
    <div class="panel-heading">
      <h2 class="panel-title" align="center">NOTAS FISCAIS ENTREGUES NO DIA ANTERIOR</h2>
    </div>
    <table class="blue" width="100%" align="center" cellpadding="1" cellspacing="1" bgcolor="#F3F3F3">
      <col width="35%" />
      <col width="20%" />
      <col width="10%" />
      <col width="35%" />
        <tr height="31">
        <td><b>&nbsp;&nbsp;NOTA FISCAL</b></td>
        <td align="center"><b>DATA</b></td>
        <td align="center"><b>HORA</b></td>
        <td><b>&nbsp;&nbsp;SITUAÇÃO</b></td>
        </tr>';
  $bg = "#BDBDBD";
  for ($q=0; $q < $lin; $q++) 
  { if ($diaant==$linha2[$top[$topico][$q]][27])
    { $bg1=0;$bg2=0;
      $data[0][0]=$linha2[$stop[$linha2[$top[$topico][$q]][9]]][5];$data[0][1]=$linha2[$start[$linha2[$top[$topico][$q]][9]]][20];
      $data[1][0]=$linha2[$start[$linha2[$top[$topico][$q]][9]]][27];$data[2][0]=$linha2[$start[$linha2[$top[$topico][$q]][9]]][28];
      $data[1][1]=$linha2[$stop[$linha2[$top[$topico][$q]][9]]][27];$data[2][1]=$linha2[$stop[$linha2[$top[$topico][$q]][9]]][28];
      for ($q1=$start[$linha2[$top[$topico][$q]][9]]; $q1 <= $stop[$linha2[$top[$topico][$q]][9]]; $q1++) 
      { 
        if ($linha2[$q1][25] == 98 and $bg1==0) { $data[1][0]=$linha2[$q1][27];$data[2][0]=$linha2[$q1][28];$bg1=1;}
        if ($linha2[$q1][25] == 32 and $bg2==0) { $data[1][1]=$linha2[$q1][27];$data[2][1]=$linha2[$q1][28];$bg2=1;}
      } 
      $data[4][0]=$linha2[$start[$linha2[$top[$topico][$q]][9]]][9];$data[4][1]=$linha2[$start[$linha2[$top[$topico][$q]][9]]][14];
      $inicio=$data[1][0];
      $fim=$data[1][1];
      $hrini=$data[2][0];
      $hrfim=$data[2][1];
      $data1 = DateTime::createFromFormat('d-m-Y', $inicio);
      $data2 = DateTime::createFromFormat('d-m-Y', $fim);
      $dia1=$data1->format('Y-m-d');
      $dia2=$data2->format('Y-m-d');
      $data1=$dia1.' '.$hrini;
      $data2=$dia2.' '.$hrfim;
      $term=$data[0][0];
      $query="SELECT IDTerminal as terminal
          ,Convert(varchar(16), DataHoraEm,120) as data
          ,Temperatura
        FROM [dbo].[tTeleEvento]
          WHERE SUBSTRING(Veiculo,1,7) = '$term' and Convert(varchar(16), DataHoraEm,120) BETWEEN '$data1' and '$data2'  and (Temperatura<'70' and Temperatura>'-30' and Temperatura<>'0') ORDER BY DataHoraEm ASC";
      $consulta= sqlsrv_query($conn, $query, array(), array( "Scrollable" => SQLSRV_CURSOR_KEYSET ));
      if (!$consulta){echo "ATENÇÃOs!! FALHA NA CONSULTA!";}
      $numReg = sqlsrv_num_rows($consulta);
      $z=0;$tt=0;$minima=99;$maxima=0;$grafico=array();
      while ($row = sqlsrv_fetch_array($consulta, SQLSRV_FETCH_ASSOC)) 
      { 
        $grafico[$z][0]=strtotime($row['data']);
        $grafico[$z][3]=$row['Temperatura'];
        $tt=$tt+$grafico[$z][3];
        if ($grafico[$z][3]<$minima){$minima=$grafico[$z][3];}
        if ($grafico[$z][3]>$maxima){$maxima=$grafico[$z][3];}
        $z++;
      }
      $nome = preg_replace('/[^0-9\-]/', '_', $linha2[$top[$topico][$q]][9]);
      if ($z!==0)
      {
        for ($i=0;$i<$z;$i++)
        {
          $grafico[$i][1]=$minima;
          $grafico[$i][2]=$maxima;
        }
        $media=$tt/$z;
        $data[3][0]=$minima;$data[3][1]=$maxima;
        $eixo=intval($minima-1);
        
        include 'API28.php';

        $txt2='Gráfico OK para Nota(s) Fiscal(is): '.$nome.PHP_EOL;
        $txt3='Gráfico OK!';
        fwrite($file_txtnotas, $txt2);

        $mediaX=sprintf("%01.2f", $media);
        $minimaX=sprintf("%01.2f", $minima);
        $maximaX=sprintf("%01.2f", $maxima);
        $pdf = new PDF();
        $dataX = $pdf->LoadData('upload/'.$diaant.'/'.$nome.'.txt');
        $pdf->SetFont('Arial','','12');
        $pdf->AddPage();
        $pdf->FancyTable($dataX,$mediaX,$minimaX,$maximaX,$logo);
        $pdf->Output('upload/'.$diaant.'/'.$nome.".pdf","F");
        
        unlink('upload/'.$diaant.'/'.$nome.'.txt');
        unlink('upload/grafico.png');

      }
      else
      {
        $txt2='Sem temperaturas para Nota(s) Fiscal(is): '.$nome.PHP_EOL;
        $txt3='Sem temperaturas!';
        fwrite($file_txtnotas, $txt2);
      }
      if ($bg !== "#BDBDBD") { $bg="#BDBDBD";} else {$bg="#ffffff";}
      echo '
          <tr id="linha" bgcolor="'. $bg.'">
            <td>&nbsp;&nbsp;'.$linha2[$top[$topico][$q]][9].'</td>
            <td align="center">'.$linha2[$top[$topico][$q]][27].'</td>
            <td align="center">'.$linha2[$top[$topico][$q]][28].'</td>
            <td>&nbsp;&nbsp;'.$txt3.'</td>
          </tr>';
    }
  }
  echo '</table></div></aside>';
  fclose($file_txtnotas);

	$pasta_origem = "upload/".$diaant.'/';
	$pasta_destino = "\\\\tw-nas\\08-Qualidade\\Gráficos-NFs\\".$diaant;
	if (!file_exists($pasta_destino)) {mkdir($pasta_destino);} 
	$arquivo = glob("$pasta_origem{*.*}", GLOB_BRACE);
	$na=count($arquivo);
	for ($i=0;$i<$na;$i++)
	{ $arq_orig=$arquivo[$i];
	  $arquivo[$i]=str_replace('upload', '\\\\tw-nas\\08-Qualidade\\Gráficos-NFs\\',$arquivo[$i]);
	  $arq_dest=$arquivo[$i];
	  copy($arq_orig, $arq_dest);
	}
}
?>