/** * Gerar HTML da Danfe. * * @return string * @throws \Exception */ public function getHTML() { ob_start(); try { $evento = XML::createByXml($this->nfeXml->getElementsByTagName('infEvento')->item(0)->C14N()); $retEvento = XML::createByXml($this->nfeXml->getElementsByTagName('infEvento')->item(1)->C14N()); $info = $this->nfeXml->getChaveInfo('infEvento', 'ID'); $logo = $this->getLogo(); $barcode = $this->getBarCode($evento); $style = $this->files->get(__DIR__ . '/Templates/pdf.css'); require __DIR__ . '/Templates/danfe.php'; return ob_get_clean(); } catch (\Exception $e) { ob_end_clean(); throw $e; } }
/** * Gerar HTML da Danfe. * * @return string * @throws \Exception */ public function getHTML() { ob_start(); try { $nfe = XML::createByXml($this->nfeXml->getElementsByTagName('infNFe')->item(0)->C14N()); $prot = XML::createByXml($this->nfeXml->getElementsByTagName('protNFe')->item(0)->C14N()); $logo = $this->getLogo(); $barcode = $this->getBarCode($nfe); $homolog = $this->getImageHomolog(); $style = $this->files->get(__DIR__ . '/Templates/pdf.css'); $style = str_replace('{{homolog}}', $homolog, $style); require __DIR__ . '/Templates/danfe.php'; return ob_get_clean(); } catch (\Exception $e) { ob_end_clean(); throw $e; } }
<?php $_ENV['APP_ENV'] = 'local'; include __DIR__ . '/../vendor/autoload.php'; date_default_timezone_set('America/Sao_Paulo'); // Necessário para não sair Warning no pdf da Danfe. $xml = \PhpNFe\NFe\Tools\NFeXML::createByXml(file_get_contents(__DIR__ . '/../tests/utils/xmlRetornoCCTeste.xml')); $dfe = new \PhpNFe\NFe\DanfeCC\DanfeCC($xml); //$dfe = new \PhpNFe\NFe\DanfeCC\DanfeCC($xml, __DIR__ . '/logo.png'); //<- Com Logo $pdf = $dfe->getPDF(); unlink(__DIR__ . '/danfe.pdf'); file_put_contents(__DIR__ . '/danfe.pdf', $pdf);
/** * Envia um evento para o carta de correção da NFe. * * @param $xml * @param $xCorrecao * @param $seqEvento * @return EventoRetorno * @throws \Exception */ public function cartaCorrecao($xml, $xCorrecao, $seqEvento) { $xml = NFeXML::createByXml($xml); $method = Sefaz::getMethodInfo($xml->getAmbiente(), $xml->getCuf(), Sefaz::mtCartaCorrecao); $mensagem = EvCCDados::loadDOM($xml, $xCorrecao, $seqEvento); $signedMsg = AjustaXML::limpaXml($this->certificado->assinarXML($mensagem, 'infEvento')); $header = NFEHeader::loadDOM($xml, $method->operation, $method->version, 'infEvento'); $body = EvBody::loadDOM(XML::createByXml($signedMsg), $method->operation, 'enviNFe', 'infEvento'); return new EventoRetorno($this->soap($method, $header, $body), NFeXML::createByXml($signedMsg)); }
<?php $_ENV['APP_ENV'] = 'local'; include __DIR__ . '/../vendor/autoload.php'; date_default_timezone_set('America/Sao_Paulo'); // Necessário para não sair Warning no pdf da Danfe. $xml = \PhpNFe\NFe\Tools\NFeXML::createByXml(file_get_contents(__DIR__ . '/../tests/utils/NF_000862.xml')); $dfe = new \PhpNFe\NFe\DanfeNFe\DanfeNFe($xml); //$dfe = new \PhpNFe\NFe\DanfeNFe\DanfeNFe($xml, __DIR__ . '/logo.png'); <- Com Logo $html = $dfe->getHTML(); $pdf = $dfe->getPDF(); unlink(__DIR__ . '/danfe.pdf'); file_put_contents(__DIR__ . '/danfe.pdf', $pdf);