TransWar File Browser

Path: C:\

<?php
ini_set('max_execution_time',259200); 
ini_set ('memory_limit','-1');
date_default_timezone_set('America/Fortaleza');
$dateadded = date("d/m/Y  --  G:i"); 
$fim=$hoje = date("d/m/Y"); 
if (isset($_POST['grupo3'])) {$grupo=$_POST['grupo3'];$dsgru=$_POST['dsgru3'];} else {if (isset($_GET['grupo3'])) {$grupo=$_GET['grupo3'];$dsgru=$_GET['dsgru3'];} else {$grupo="nulo";$dsgru="TODOS";}}
if (isset($_POST['empresa3'])) {$empresa=$_POST['empresa3'];} else {if (isset($_GET['empresa3'])) {$empresa=$_GET['empresa3'];} else {$empresa="nulo";}}
if (isset($_POST['inicio3'])) {$inicio=$_POST['inicio3'];} else {if (isset($_GET['inicio3'])) {$inicio=$_GET['inicio3'];} else {$inicio=$hoje;}}
if (isset($_POST['logo'])) {$logo=$_POST['logo'];} else {if (isset($_GET['logo'])) {$logo=$_GET['logo'];}}
if (isset($_POST['arq3'])) {$arq=$_POST['arq3'];} else {if (isset($_GET['arq3'])) {$arq=$_GET['arq3'];}}
$json = $_POST['result']; // Isto irá tornar o JSON em array
$arqxlsx="upload/base_de_dados_".$arq.".xlsx";
$arqxlsx2="upload/base_de_dados_".$arq."_cliente.xlsx";
$titulo=substr($inicio, 0, 2).'-'.substr($inicio, 3, 2).' até '.substr($fim, 0, 2).'-'.substr($fim, 3, 2); 
$rawData = json_decode($_POST['result'], true); // Isto irá tornar o JSON em array
$l=count($rawData)+2;
$csv='||||||||||||||||||||||||||||||||||'.PHP_EOL;
$csv.='Data|Número|Transportadora|Motorista|Veículo|Placa|Carreta|Tipo|Volume|Número NFs|Valor NFs|Valor Frete|Documento|Tipo_Movimento|Cliente|Redespacho|Endereço_Redesp|Bairro_Redesp|Cidade/UF|CEP_Redesp|Nome|Endereço|Cidade/UF|Bairro|CEP|ID|Descrição|Dia|Hora|Mobile|Limite|Comentário|Status1|Status2|Status3|Dia3|Dia4'.PHP_EOL;
foreach($rawData as $linha){ $b=false;
  foreach($linha as $campo=>$value){
    if ($b) {$csv=$csv.'|';}
      $csv=$csv.$value;$b=true;
  }
  $csv=$csv.PHP_EOL;
}
$arqcsv="upload/base_temp.csv";
$file = fopen($arqcsv,'w');
fwrite($file, $csv);
fclose($file);
require '../vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
$spreadsheet = new Spreadsheet();
$reader = new \PhpOffice\PhpSpreadsheet\Reader\Csv();
$reader->setDelimiter('|');
$reader->setEnclosure('"');
$locale = 'pt_br';
$validLocale = \PhpOffice\PhpSpreadsheet\Settings::setLocale($locale);
if (!$validLocale) {
    echo 'Unable to set locale to ' . $locale . " - reverting to en_us" . PHP_EOL;
}
$reader->setSheetIndex(0);
$spreadsheet = $reader->load($arqcsv);
$writer = new Xlsx($spreadsheet);
$spreadsheet->getActiveSheet()->setTitle($titulo);
$spreadsheet->getActiveSheet()->getRowDimension('1')->setRowHeight(20);
$spreadsheet->getActiveSheet()->getRowDimension('2')->setRowHeight(20);
$styleArray = [
  'borders' => [
      'allBorders' => [
          'borderStyle' => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN,
          'color' => ['argb' => '000000'],
      ],
  ],
];
$styleArray2 = [
  'borders' => [
      'allBorders' => [
          'borderStyle' => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN,
          'color' => ['argb' => 'FFFFFF'],
      ],
  ],
];
$format = '* #,##0.00';
$spreadsheet->getActiveSheet()->getCell('A1')->setValue('MANIFESTO');
$spreadsheet->getActiveSheet()->getCell('B2')->setValue('Número');
$spreadsheet->getActiveSheet()->mergeCells('A1:H1');
$spreadsheet->getActiveSheet()->getCell('I1')->setValue('MOVIMENTO');
$spreadsheet->getActiveSheet()->mergeCells('I1:O1');
$spreadsheet->getActiveSheet()->getCell('P1')->setValue('REDESPACHO');
$spreadsheet->getActiveSheet()->mergeCells('P1:T1');
$spreadsheet->getActiveSheet()->getCell('U1')->setValue('DESTINATÁRIO');
$spreadsheet->getActiveSheet()->mergeCells('U1:Y1');
$spreadsheet->getActiveSheet()->getCell('Z1')->setValue('OCORRÊNCIA');
$spreadsheet->getActiveSheet()->getCell('Z2')->setValue('ID');
$spreadsheet->getActiveSheet()->getCell('AA2')->setValue('Descrição');
$spreadsheet->getActiveSheet()->mergeCells('Z1:AF1');
$spreadsheet->getActiveSheet()->getCell('AG1')->setValue('RESTRITO');
$spreadsheet->getActiveSheet()->mergeCells('AG1:AK1');
$spreadsheet->getActiveSheet()->getCell('J2')->setValue('Número NFs');
$spreadsheet->getActiveSheet()->getCell('K2')->setValue('Valor NFs');
$spreadsheet->getActiveSheet()->getCell('L2')->setValue('Valor Frete');
$spreadsheet->getActiveSheet()->getCell('U2')->setValue('Nome');
$spreadsheet->getActiveSheet()->getCell('V2')->setValue('Endereço');
$spreadsheet->getActiveSheet()->getCell('S2')->setValue('Cidade/UF');
$spreadsheet->getActiveSheet()->getCell('W2')->setValue('Cidade/UF');
$spreadsheet->getActiveSheet()->getCell('X2')->setValue('Bairro');
$spreadsheet->getActiveSheet()->getCell('Y2')->setValue('CEP');

$spreadsheet->getActiveSheet()->getStyle('A1:AK2')->applyFromArray($styleArray2);
$spreadsheet->getActiveSheet()->getStyle('A3:AK'.$l)->applyFromArray($styleArray);
$spreadsheet->getActiveSheet()->getStyle('a1:AK2')->getFont()->setSize(11);
$spreadsheet->getActiveSheet()->getStyle('a1:AK2')->getFont()->setBold(true);
$spreadsheet->getActiveSheet()->getStyle('A1:AK'.$l)
    ->getAlignment()->setVertical(\PhpOffice\PhpSpreadsheet\Style\Alignment::VERTICAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('a1:AK2')
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('a1:AK2')
    ->getFont()->getColor()->setARGB(\PhpOffice\PhpSpreadsheet\Style\Color::COLOR_WHITE);
$spreadsheet->getActiveSheet()->getStyle('A1:AK2')->getFill()
    ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)
    ->getStartColor()->setARGB('5882FA');
$spreadsheet->getActiveSheet()->getStyle('A3:B'.$l)
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('E3:I'.$l)
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('M3:N'.$l)
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('R3:T'.$l)
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('W3:Z'.$l)
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('AB3:AE'.$l)
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('AG3:AK'.$l)
    ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER);
$spreadsheet->getActiveSheet()->getStyle('K3:L'.$l)->getNumberFormat()->setFormatCode($format);
for ($c=3; $c <= $l; $c++) 
  { 
    if ($c % 2 == 0) { $bg="d8d8d8";} else {$bg="ffffff";}
    $range='A'.$c.':AK'.$c;
    $spreadsheet->getActiveSheet()->getStyle($range)->getFill()
        ->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)
        ->getStartColor()->setARGB($bg);
  }
$spreadsheet->getActiveSheet()->getColumnDimension('A')->setWidth(14);
$spreadsheet->getActiveSheet()->getColumnDimension('B')->setWidth(10);
$spreadsheet->getActiveSheet()->getColumnDimension('C')->setWidth(22);
$spreadsheet->getActiveSheet()->getColumnDimension('D')->setWidth(30);
$spreadsheet->getActiveSheet()->getColumnDimension('E')->setWidth(20);
$spreadsheet->getActiveSheet()->getColumnDimension('F')->setWidth(10);
$spreadsheet->getActiveSheet()->getColumnDimension('G')->setWidth(10);
$spreadsheet->getActiveSheet()->getColumnDimension('H')->setWidth(10);
$spreadsheet->getActiveSheet()->getColumnDimension('I')->setWidth(10);
$spreadsheet->getActiveSheet()->getColumnDimension('J')->setWidth(20);
$spreadsheet->getActiveSheet()->getColumnDimension('K')->setWidth(15);
$spreadsheet->getActiveSheet()->getColumnDimension('L')->setWidth(15);
$spreadsheet->getActiveSheet()->getColumnDimension('M')->setWidth(15);
$spreadsheet->getActiveSheet()->getColumnDimension('N')->setWidth(18);
$spreadsheet->getActiveSheet()->getColumnDimension('O')->setWidth(40);
$spreadsheet->getActiveSheet()->getColumnDimension('P')->setWidth(40);
$spreadsheet->getActiveSheet()->getColumnDimension('Q')->setWidth(40);
$spreadsheet->getActiveSheet()->getColumnDimension('R')->setWidth(25);
$spreadsheet->getActiveSheet()->getColumnDimension('S')->setWidth(25);
$spreadsheet->getActiveSheet()->getColumnDimension('T')->setWidth(15);
$spreadsheet->getActiveSheet()->getColumnDimension('U')->setWidth(40);
$spreadsheet->getActiveSheet()->getColumnDimension('V')->setWidth(40);
$spreadsheet->getActiveSheet()->getColumnDimension('W')->setWidth(25);
$spreadsheet->getActiveSheet()->getColumnDimension('X')->setWidth(25);
$spreadsheet->getActiveSheet()->getColumnDimension('Y')->setWidth(15);
$spreadsheet->getActiveSheet()->getColumnDimension('Z')->setWidth(5);
$spreadsheet->getActiveSheet()->getColumnDimension('AA')->setWidth(40);
$spreadsheet->getActiveSheet()->getColumnDimension('AB')->setWidth(12);
$spreadsheet->getActiveSheet()->getColumnDimension('AC')->setWidth(7);
$spreadsheet->getActiveSheet()->getColumnDimension('AD')->setWidth(7);
$spreadsheet->getActiveSheet()->getColumnDimension('AE')->setWidth(12);
$spreadsheet->getActiveSheet()->getColumnDimension('AF')->setWidth(50);
$spreadsheet->getActiveSheet()->getColumnDimension('AG')->setWidth(7);
$spreadsheet->getActiveSheet()->getColumnDimension('AH')->setWidth(7);
$spreadsheet->getActiveSheet()->getColumnDimension('AI')->setWidth(7);
$spreadsheet->getActiveSheet()->getColumnDimension('AJ')->setWidth(10);
$spreadsheet->getActiveSheet()->getColumnDimension('AK')->setWidth(10);
$writer->save($arqxlsx);

$spreadsheet->getActiveSheet()->removeColumn('AG',5);
$spreadsheet->getActiveSheet()->removeColumn('AD',1);
$spreadsheet->getActiveSheet()->removeColumn('Z', 1);
$spreadsheet->getActiveSheet()->getCell('Z1')->setValue('OCORRÊNCIA');
$writer->save($arqxlsx2);

$spreadsheet->disconnectWorksheets();
unset($spreadsheet);
unlink($arqcsv);
?>
<!DOCTYPE html>
<html lang="pt-br">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="description" content="Página Administrativa">
    <link rel="icon" href="images/favicon.ico">

    <title>Download</title>
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link href="css/bootstrap-theme.min.css" rel="stylesheet">
    <link href="css/theme.css" rel="stylesheet">
  </head>
  <body role='document'>
    <div class='container theme-showcase' role='main'>
      <div class='alert alert-info' role='alert' align='center'>
        <strong>Tabela EXCEL gerada com sucesso!</strong>
      </div>
      <p>
        <form method='POST' action=''>
          <div class='col-sm-1' align='center'>
            <button type='submit' class='btn btn-warning' onclick='javascript:window.close();'>
              <a href='<?php echo $arqxlsx2; ?>' download>Baixar Arquivo EXCEL</a>
            </button>
          </div>
        </form>
      </p>
    </div>
    <script src='js/jquery.min.js'></script>
    <script src='js/bootstrap.min.js'></script>
    <script src='js/docs.min.js'></script>
  </body>
</html>