forked from nathalie/pedi2
Agregado PdfHelper para centralizar lógica de generación de pdfs
This commit is contained in:
parent
b8d1520c54
commit
250bfd8a33
2 changed files with 33 additions and 24 deletions
|
@ -3,6 +3,7 @@
|
|||
namespace App;
|
||||
|
||||
use App\Helpers\CsvHelper;
|
||||
use App\Helpers\PdfHelper;
|
||||
use App\Helpers\TransporteHelper;
|
||||
use Illuminate\Database\Eloquent\Builder;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
@ -105,17 +106,7 @@ class GrupoDeCompra extends Model
|
|||
public function exportarPedidosAPdf()
|
||||
{
|
||||
$subpedidos = $this->pedidosAprobados();
|
||||
//generar pdf
|
||||
$mpdf = new Mpdf();
|
||||
foreach ($subpedidos as $subpedido) {
|
||||
$tabla = $subpedido->generarHTML();
|
||||
// agregar la tabla al pdf en una nueva página
|
||||
$mpdf->WriteHTML($tabla);
|
||||
$mpdf->AddPage();
|
||||
}
|
||||
$filename = $this->nombre . '.pdf';
|
||||
// imprimir el pdf
|
||||
$mpdf->Output($filename, "D");
|
||||
PdfHelper::exportarPedidos($this->nombre . '.pdf', $subpedidos);
|
||||
}
|
||||
|
||||
function pedidoParaPdf(): array
|
||||
|
@ -147,19 +138,8 @@ class GrupoDeCompra extends Model
|
|||
|
||||
public static function exportarPedidosBarrialesAPdf()
|
||||
{
|
||||
$barrios = GrupoDeCompra::barriosMenosPrueba()
|
||||
->get();
|
||||
$mpdf = new Mpdf();
|
||||
|
||||
foreach ($barrios as $barrio) {
|
||||
$tabla = $barrio->generarHTML();
|
||||
$mpdf->WriteHTML($tabla);
|
||||
$mpdf->AddPage();
|
||||
}
|
||||
|
||||
$filename = 'pedidos_por_barrio.pdf';
|
||||
// imprimir el pdf
|
||||
$mpdf->Output($filename, "D");
|
||||
$barrios = GrupoDeCompra::barriosMenosPrueba()->get();
|
||||
PdfHelper::exportarPedidos('pedidos_por_barrio.pdf', $barrios);
|
||||
}
|
||||
|
||||
static function filaVacia(string $product, int $columns): array
|
||||
|
|
29
app/Helpers/PdfHelper.php
Normal file
29
app/Helpers/PdfHelper.php
Normal file
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
|
||||
namespace App\Helpers;
|
||||
|
||||
use Mpdf\Mpdf;
|
||||
use Mpdf\MpdfException;
|
||||
|
||||
class PdfHelper
|
||||
{
|
||||
/**
|
||||
* Requiere que el segundo argumento tenga definida la función generarHTML()
|
||||
* para crear la tabla con los datos del pedido que se inserta en el pdf.
|
||||
*
|
||||
* @return void
|
||||
* @throws MpdfException
|
||||
*/
|
||||
public static function exportarPedidos($filepath, $pedidos)
|
||||
{
|
||||
$mpdf = new Mpdf();
|
||||
|
||||
foreach ($pedidos as $pedido) {
|
||||
$html = $pedido->generarHTML();
|
||||
$mpdf->WriteHTML($html);
|
||||
$mpdf->AddPage();
|
||||
}
|
||||
|
||||
$mpdf->Output($filepath, 'D');
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue