Module: FocusNfe::Recursos::Concerns::Baixavel

Included in:
FocusNfe::Recursos::CtesRecebidas, NfesRecebidas, NfsesNacionaisRecebidas
Defined in:
lib/focus_nfe/recursos/concerns/baixavel.rb

Overview

Comportamento de download (+GET //.+). Devolve os bytes crus da resposta (+raw_body+); o eventual 302 para URL pré-assinada (PDFs) é seguido pelo adaptador sem reenviar a autenticação.

Instance Method Summary collapse

Instance Method Details

#download(identificador, formato:) ⇒ String

Baixa o documento no formato indicado, devolvendo os bytes crus.

Parameters:

  • identificador (String)

    chave ou referência do documento

  • formato (String, Symbol)

    extensão desejada (+json+, xml, pdf, html)

Returns:

  • (String)

    corpo cru da resposta (bytes)

Raises:



16
17
18
19
# File 'lib/focus_nfe/recursos/concerns/baixavel.rb', line 16

def download(identificador, formato:)
  response = connection.get("#{caminho_referencia(identificador)}.#{URI.encode_www_form_component(formato)}")
  response.raw_body
end

#download_json(identificador) ⇒ String

Returns JSON cru do documento.

Parameters:

  • identificador (String)

    chave ou referência do documento

Returns:

  • (String)

    JSON cru do documento



23
24
25
# File 'lib/focus_nfe/recursos/concerns/baixavel.rb', line 23

def download_json(identificador)
  download(identificador, formato: :json)
end

#download_pdf(identificador) ⇒ String

Returns PDF (DANFe/DACTe/DANFSe) cru do documento.

Parameters:

  • identificador (String)

    chave ou referência do documento

Returns:

  • (String)

    PDF (DANFe/DACTe/DANFSe) cru do documento



35
36
37
# File 'lib/focus_nfe/recursos/concerns/baixavel.rb', line 35

def download_pdf(identificador)
  download(identificador, formato: :pdf)
end

#download_xml(identificador) ⇒ String

Returns XML cru do documento.

Parameters:

  • identificador (String)

    chave ou referência do documento

Returns:

  • (String)

    XML cru do documento



29
30
31
# File 'lib/focus_nfe/recursos/concerns/baixavel.rb', line 29

def download_xml(identificador)
  download(identificador, formato: :xml)
end