Puliendo presupuesto

This commit is contained in:
imnavajas
2024-01-18 19:41:46 +01:00
parent b62a5d1b9a
commit bbea1465af
6 changed files with 62 additions and 29 deletions

View File

@ -1,4 +1,5 @@
<?php
namespace App\Controllers\Pdf;
use App\Controllers\BaseController;
@ -6,11 +7,8 @@ use App\Controllers\BaseController;
class PrintPresupuestos extends BaseController
{
function __construct()
{
}
public function index()
public function index($id_presupuesto)
{
$presupuestoModel = model('App\Models\Presupuestos\PresupuestoModel');
@ -18,15 +16,46 @@ class PrintPresupuestos extends BaseController
$data['presupuesto'] = $presupuestoModel->getResourceForPdf(8)->get()->getRow();
return view(getenv('theme.path').'pdfs/presupuesto', $data);
return view(getenv('theme.path') . 'pdfs/presupuesto', $data);
}
public function generar(){
$dompdf = new \Dompdf\Dompdf(['isRemoteEnabled' => true]);
//$dompdf->loadHtml(view('pdf_view'));
//$dompdf->loadHtml(view(getenv('theme.path').'pdfs/presupuesto'));
$dompdf->loadHtml($this->index());
public function generar($presupuesto_id)
{
// Cargar modelos
$presupuestoModel = model('App\Models\Presupuestos\PresupuestoModel');
// Get budget information
$data['presupuesto'] = $presupuestoModel->getResourceForPdf($presupuesto_id)->get()->getRow();
// Crear una instancia de Dompdf
$options = new \Dompdf\Options();
$options->set('isHtml5ParserEnabled', true);
$options->set('isPhpEnabled', true);
$options->set('isRemoteEnabled', true);
$dompdf = new \Dompdf\Dompdf($options);
// Contenido HTML del documento
$dompdf->loadHtml(view(getenv('theme.path').'pdfs/presupuesto', $data));
// Establecer el tamaño del papel
$dompdf->setPaper('A4', 'portrait');
// Renderizar el PDF
$dompdf->render();
$dompdf->stream('presupuesto-demo.pdf');
// Obtener el contenido generado
$output = $dompdf->output();
// Establecer las cabeceras para visualizar en lugar de descargar
$file_name = "presupuesto-$presupuesto_id.pdf";
return $this->response
->setStatusCode(200)
->setHeader('Content-Type', 'application/pdf')
->setHeader('Content-Disposition', 'inline; filename="' . $file_name . '"')
->setHeader('Cache-Control', 'private, max-age=0, must-revalidate')
->setHeader('Pragma', 'public')
->setHeader('Content-Length', strlen($output))
->setBody($output);
}
}

View File

@ -279,6 +279,7 @@ class Cosidotapablanda extends \App\Controllers\GoBaseResourceController
endif; // ($requestMethod === 'post')
$this->viewData['presupuestoId'] = $id;
$this->viewData['presupuestoEntity'] = $presupuestoEntity;
$this->viewData['isCosido'] = (new TipoPresupuestoModel())->get_isCosido($presupuestoEntity->tipo_impresion_id);