D7net
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
var
/
www
/
html
/
rosario
/
adm
/
app
/
gre
/
Views
/
Cotacao
/
Filename :
Exc_VieCtRespondeNegociaoDownload.php
back
Copy
<?php ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL); //ob_clean(); // flush(); $Lanc = new \App\gre\Models\Cotacao\ModCtRespondeNegociacaoLer(); $arr = $Lanc->listarNegociacao($this->Dados); //echo '<pre>'; //var_dump($arr); //echo '</pre>'; //die; $nome = $arr[0]['nome_forn']; $repres_id = $arr[0]['repres_id']; //$sugestao_id = $arr[0]['sugestao_id']; $cabec = "ROSÁRIO - PEDIDO DE NEGOCIAÇÃO ". $arr[0]['data_cotacao_i']. ' '.$repres_nome; $nomePlanilha = "COTACAO_".$repres_id.'_'. $arr[0]['data_cotacao_m']; date_default_timezone_set ("America/Sao_Paulo"); $datahoje = date("YmdHis"); $styleArray = [ 'borders' => [ 'allBorders' => [ 'borderStyle' => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN, 'color' => ['argb' => '00000000'], ], ], ]; require $_SERVER['DOCUMENT_ROOT']."/rosario/adm/vendor/autoload.php"; use PhpOffice\PhpSpreadsheet\Spreadsheet; use PhpOffice\PhpSpreadsheet\Writer\Xlsx; use PHPOffice\phpspreadsheet\Shared\Date; $spreadsheet = new Spreadsheet(); $sheet = $spreadsheet->getActiveSheet(); $spreadsheet->getActiveSheet()->getStyle('A1:I2') ->getAlignment()->setHorizontal(\PhpOffice\PhpSpreadsheet\Style\Alignment::HORIZONTAL_CENTER); $sheet->getColumnDimension('A')->setWidth(100,'px'); $sheet->getColumnDimension('B')->setWidth(100,'px'); $sheet->getColumnDimension('C')->setWidth(100,'px'); $sheet->getColumnDimension('D')->setWidth(70,'px'); $sheet->getColumnDimension('E')->setWidth(100,'px'); $sheet->getColumnDimension('F')->setWidth(400,'px'); $sheet->getColumnDimension('G')->setWidth(100,'px'); $sheet->getColumnDimension('H')->setWidth(100,'px'); $sheet->getColumnDimension('I')->setWidth(100,'px'); $spreadsheet->getActiveSheet()->mergeCells('A1:I1'); $sheet->getStyle('A1:I2')->getFont()->setBold(true); $sheet->setCellValue('A1', $cabec); $sheet->setCellValue('A2', 'DATA '); $sheet->setCellValue('B2', 'ID SUGESTAO'); $sheet->setCellValue('C2', 'COD INTERNO'); $sheet->setCellValue('D2', 'QTDE'); $sheet->setCellValue('E2', 'CODIGO EAN'); $sheet->setCellValue('F2', 'DESCRIÇÃO'); $sheet->setCellValue('G2', $nome); $sheet->setCellValue('H2', 'TENHO PREÇO'); $sheet->setCellValue('I2', 'DIFE.TOTAL'); $sn=3; $total_preco_cotado = 0; $total_preco_tenho = 0; foreach ($arr as $data) { extract($data); $sheet->setCellValue('A'.$sn, $data_cotacao_d); $sheet->setCellValue('B'.$sn, $sugestao_id); $sheet->setCellValue('C'.$sn, $prod_cod); $sheet->setCellValue('D'.$sn, $qtde); $sheet->getStyle('E'.$sn)->getNumberFormat()->setFormatCode('0000000000000'); $sheet->setCellValue('E'.$sn, $ean); $sheet->setCellValue('F'.$sn, $prod_nome); $sheet->getStyle('G'.$sn)->getNumberFormat()->setFormatCode('##,###,###,##0.00'); $sheet->setCellValue('G'.$sn, $preco_cotado); $sheet->getStyle('H'.$sn)->getNumberFormat()->setFormatCode('##,###,###,##0.00'); $sheet->setCellValue('H'.$sn, $tenho_preco); $sheet->setCellValue('I'.$sn, "=(G".$sn."-H".$sn.")*D".$sn); $total_preco_cotado += ($preco_cotado * $qtde); $total_preco_tenho += ($tenho_preco * $qtde); $sn++; } $sheet->getStyle('A1:I'.$sn)->applyFromArray($styleArray); $fim = $sn -1 ; $sheet->getStyle('F'.$sn)->getFont()->setBold(true); $sheet->setCellValue('F'.$sn, 'TOTAIS'); $sheet->getStyle('G'.$sn)->getFont()->setBold(true); $sheet->getStyle('G'.$sn)->getNumberFormat()->setFormatCode('##,###,###,##0.00'); $sheet->setCellValue('G'.$sn, '=SUMPRODUCT(D3:D'.$fim.',G3:G'.$fim.')'); $sheet->getStyle('H'.$sn)->getFont()->setBold(true); $sheet->getStyle('H'.$sn)->getNumberFormat()->setFormatCode('##,###,###,##0.00'); $sheet->setCellValue('H'.$sn, '=SUMPRODUCT(D3:D'.$fim.',H3:H'.$fim.')'); $sheet->setCellValue('I'.$sn, '=(G'.$sn.'-H'.$sn.')'); $sheet->getStyle('I'.$sn)->getFont()->setBold(true); $sheet->getStyle('I'.$sn)->getNumberFormat()->setFormatCode('##,###,###,##0.00'); $fim = $sn; //$sn++; //$sheet->getStyle('H'.$sn)->getFont()->setBold(true); //$sheet->setCellValue('E'.$sn, 'DIFERENÇA'); //$sheet->getStyle('H'.$sn)->getFont()->setBold(true); //$sheet->getStyle('H'.$sn)->getNumberFormat()->setFormatCode('##,###,###,##0.00'); $sheet->getStyle('A2:I'.$sn)->getBorders()->getAllBorders()->setBorderStyle(\PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN); $sheet->getStyle('A2:F'.$sn)->getProtection()->setLocked(\PhpOffice\PhpSpreadsheet\Style\Protection::PROTECTION_PROTECTED); $sheet->getStyle('H2:I'.$sn)->getProtection()->setLocked(\PhpOffice\PhpSpreadsheet\Style\Protection::PROTECTION_PROTECTED); $nomeplanilha = 'negociacao_'.$repres_id.'_'.$datahoje.'.xls'; $writer = new Xlsx($spreadsheet); $writer->save($nomeplanilha); $fileName = 'negociacao_'.$repres_id.'_'.$datahoje.'.zip'; $fileName = 'negociacao_'.$repres_id.'_'.$datahoje.'.zip'; $path = '/var/www/html/rosario/adm/'; $fullPath = $path.'/'.$fileName; $diretorio = dir($path); $zip = new \ZipArchive(); if( $zip->open($fullPath, \ZipArchive::CREATE) ){ while($arquivo = $diretorio->read()){ $extensao = substr($arquivo,strlen($arquivo)-3,3); if($extensao == 'xls'){ $zip->addFile($path.'/'.$arquivo, $arquivo); } } $zip->close(); } if(file_exists($fullPath)){ // Forçamos o donwload do arquivo. header('Content-Type: application/zip'); header('Content-Disposition: attachment; filename="'.$fileName.'"'); readfile($fullPath); $path = '/var/www/html/rosario/adm/'; //__DIR__ $fileDelz = 'negociacao_'.$repres_id.'_'.$datahoje.'.zip'; $fullPathDelz = $path.'/'.$fileDelz; $fileDelx = 'negociacao_'.$repres_id.'_'.$datahoje.'.xls'; $fullPathDelx = $path.'/'.$fileDelx; $diretorio = dir($path); unlink($fullPathDelz); unlink($fullPathDelx); } ?>