Class: NfseCarioca::CancelarNfse

Inherits:
Object
  • Object
show all
Defined in:
lib/nfse_carioca/cancelar_nfse.rb

Defined Under Namespace

Classes: Response

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(invoice_number) ⇒ CancelarNfse

Returns a new instance of CancelarNfse.



5
6
7
# File 'lib/nfse_carioca/cancelar_nfse.rb', line 5

def initialize(invoice_number)
  @invoice_number = invoice_number
end

Instance Attribute Details

#invoice_numberObject (readonly)

Returns the value of attribute invoice_number.



3
4
5
# File 'lib/nfse_carioca/cancelar_nfse.rb', line 3

def invoice_number
  @invoice_number
end

Instance Method Details

#execute!Object



9
10
11
# File 'lib/nfse_carioca/cancelar_nfse.rb', line 9

def execute!
  client.call(:cancelar_nfse, self)
end

#to_xmlObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/nfse_carioca/cancelar_nfse.rb', line 13

def to_xml
  xml = Builder::XmlMarkup.new(indent: 2)
  xml.instruct!
  xml.CancelarNfseEnvio(xmlns: "http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd") do |cancelar_nfse_envio|
    cancelar_nfse_envio.Pedido(xmlns: "http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd") do |pedido|
      pedido.InfPedidoCancelamento(Id: "Cancelamento_NF#{invoice_number}") do |inf_pedido_cancelamento|
        inf_pedido_cancelamento.IdentificacaoNfse do |identificacao_nfse|
          identificacao_nfse.Numero invoice_number
          identificacao_nfse.Cnpj NfseCarioca.configuration.cnpj
          identificacao_nfse.InscricaoMunicipal NfseCarioca.configuration.inscricao_municipal
          identificacao_nfse.CodigoMunicipio NfseCarioca.configuration.codigo_municipio
        end
        inf_pedido_cancelamento.CodigoCancelamento "0"
      end
    end
  end
end