Skip to content

Instantly share code, notes, and snippets.

@walkeralencar
Last active August 29, 2015 14:01
Show Gist options
  • Save walkeralencar/48706eeae63c62714ab1 to your computer and use it in GitHub Desktop.
Save walkeralencar/48706eeae63c62714ab1 to your computer and use it in GitHub Desktop.
NFePHP - Fluxo de Autorização (Envio)
' Acesse http://www.plantuml.com/plantuml/ cole o conteudo abaixo e envie...
' Documentação do padrão de escrita: http://plantuml.com/activity2.html
' -------------------
@startuml
title NFePHP - Fluxo de Autorização (Envio)
start
:NFe.entrada('file.nfe');
if (NFe.getFormato()) then ([TXT])
:NFe.converteToXML();
else
endif
if (NFe.validaCertificado()) then (FALSE)
:Exception('Certificado Vencido/Inválido.');
stop;
else (TRUE)
endif
:NFe.assina();
if (NFe.validaXml()) then (FALSE)
:Exception('XML inválido! \n Não é aceito como NFe.');
stop;
else (TRUE)
endif
:NFe.gravar(NFe.assinada);
if (NFe.autoriza(NFe.assinada)) then (FALSE)
:Exeption('Servidor fora do ar! \n Habilite a contingencia');
stop;
else (TRUE)
endif
:NFe.salvarArquivo(NFe.autorizacao);
if (NFe.autorizacao.temProtocolo()) then (FALSE)
if (NFe.getProtocolo()) then (FALSE)
:Exeption('Erro SEFAZ!');
stop;
else (TRUE)
endif
else (TRUE)
endif
:NFe.gravarProtocolo(NFe.assinada);
:finaliza;
stop
@enduml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment