AN
Pessoal esta Classe está funcionando corretamente, estou com dificuldade de transformar um ID em Nome do Lead e enviar ao PDF
- <?php
- public function onExportPDF($param)
- {
- try {
- TTransaction::open('crmsolar');
-
- // Carrega o template HTML
- $html = new THtmlRenderer('app/output/proposta.html');
-
- $proposta = $param['proposta_obj'] ?? null;
- if (!$proposta) {
- throw new Exception('Objeto de proposta não fornecido para a geração do PDF.');
- }
-
- $leads = $proposta->leads;
- if (!$leads) {
- throw new Exception('Lead associado à proposta não encontrado.');
- }
- $lead = new Leads($proposta->leads_id);
-
- // Prepara os dados para o template, usando um array
- $replaces = [];
- $replaces['cliente_nome'] = $lead->nome;
- $replaces['valor_total'] = number_format($proposta->valor_total, 2, ',', '.');
- $replaces['potencia_sistema_kwp'] = number_format($proposta->potencia_sistema_kwp, 2, ',', '.');
- $replaces['payback_anos'] = number_format($proposta->payback_anos, 2, ',', '.');
- $replaces['data_criacao'] = date('d/m/Y H:i:s', strtotime($proposta->data_criacao));
-
- // Usa enableSection() para passar os dados para a seção 'main'
- // Esta é a forma correta para a classe THtmlRenderer
- $html->enableSection('main', $replaces);
-
- $contents = $html->getContents();
-
- $dompdf = new \Dompdf\Dompdf();
- $dompdf->loadHtml($contents);
- $dompdf->setPaper('A4', 'portrait');
- $dompdf->render();
-
- $file = 'app/output/proposta_'. $proposta->id . '.pdf';
- file_put_contents($file, $dompdf->output());
-
- $window = TWindow::create('Proposta de Venda', 0.8, 0.8);
- $object = new TElement('object');
- $object->data = $file;
- $object->type = 'application/pdf';
- $object->style = "width: 100%; height:calc(100% - 10px)";
- $window->add($object);
- $window->show();
-
- TTransaction::close();
- }
- catch (Exception $e) {
- new TMessage('error', $e->getMessage());
- TTransaction::rollback();
- }
- }
- ?>
Editado 06/08/2025 (há 2 dias) - Clique para ver alterações