Class: FocusNfe::Recursos::Mdfe

Inherits:
Base
  • Object
show all
Includes:
Concerns::Cancelavel, Concerns::Consultavel, Concerns::Emitivel, Concerns::Eventavel, Concerns::Notificavel
Defined in:
lib/focus_nfe/recursos/mdfe.rb

Overview

Recurso de Manifesto Eletrônico de Documentos Fiscais (MDF-e). Emissão assíncrona com consulta de estado, cancelamento e eventos próprios: encerramento, inclusão de condutor e inclusão de DF-e.

Constant Summary collapse

MODAIS =

Returns chave modal_<tipo> no payload => nome do sub-esquema.

Returns:

  • (Hash{String=>String})

    chave modal_<tipo> no payload => nome do sub-esquema

{
  "modal_rodoviario" => "mdfe_transporte_rodoviario",
  "modal_aereo" => "mdfe_transporte_aereo",
  "modal_aquaviario" => "mdfe_transporte_aquaviario",
  "modal_ferroviario" => "mdfe_transporte_ferroviario"
}.freeze

Constants inherited from Base

Base::REFERENCIA

Instance Method Summary collapse

Methods included from Concerns::Notificavel

#reenviar_hook

Methods included from Concerns::Cancelavel

#cancelar

Methods included from Concerns::Consultavel

#consultar

Methods included from Concerns::Emitivel

#emitir

Methods inherited from Base

caminho_base, #caminho_base, caminho_base_previa, #caminho_base_previa, #initialize

Constructor Details

This class inherits a constructor from FocusNfe::Recursos::Base

Instance Method Details

#encerrar(ref, data:, sigla_uf:, nome_municipio:) ⇒ FocusNfe::Modelos::Documento

Encerra o MDF-e ao fim da operação de transporte.

Parameters:

  • ref (String)

    referência do manifesto

  • data (String)

    data do encerramento (ISO 8601)

  • sigla_uf (String)

    UF do município de encerramento

  • nome_municipio (String)

    nome do município de encerramento

Returns:

Raises:



34
35
36
# File 'lib/focus_nfe/recursos/mdfe.rb', line 34

def encerrar(ref, data:, sigla_uf:, nome_municipio:)
  emitir_evento_em(ref, caminho: "encerrar", data: data, sigla_uf: sigla_uf, nome_municipio: nome_municipio)
end

#incluir_condutor(ref, nome:, cpf:) ⇒ FocusNfe::Modelos::Documento

Inclui um condutor no MDF-e autorizado.

Parameters:

  • ref (String)

    referência do manifesto

  • nome (String)

    nome completo do condutor

  • cpf (String)

    CPF do condutor

Returns:

Raises:



46
47
48
# File 'lib/focus_nfe/recursos/mdfe.rb', line 46

def incluir_condutor(ref, nome:, cpf:)
  emitir_evento_em(ref, caminho: "inclusao_condutor", nome: nome, cpf: cpf)
end

#incluir_dfe(ref, protocolo:, codigo_municipio_carregamento:, documentos:, nome_municipio_carregamento: nil) ⇒ FocusNfe::Modelos::Documento

Inclui documentos fiscais (DF-e) vinculados ao MDF-e autorizado.

Parameters:

  • ref (String)

    referência do manifesto

  • protocolo (String)

    protocolo de autorização do MDF-e

  • codigo_municipio_carregamento (String)

    código do município de carregamento

  • documentos (Array<Hash>)

    documentos com chave_nfe e codigo_municipio_descarregamento

  • nome_municipio_carregamento (String, nil) (defaults to: nil)

    nome do município de carregamento

Returns:

Raises:



60
61
62
63
64
65
# File 'lib/focus_nfe/recursos/mdfe.rb', line 60

def incluir_dfe(ref, protocolo:, codigo_municipio_carregamento:, documentos:, nome_municipio_carregamento: nil)
  dados = { protocolo: protocolo, codigo_municipio_carregamento: codigo_municipio_carregamento,
            documentos: documentos }
  dados[:nome_municipio_carregamento] = nome_municipio_carregamento if nome_municipio_carregamento
  emitir_evento_em(ref, caminho: "inclusao_dfe", **dados)
end