nfse-carioca 0.0.1 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Berksfile +6 -0
- data/Berksfile.lock +28 -0
- data/README.md +1 -0
- data/Rakefile +3 -7
- data/Vagrantfile +58 -0
- data/lib/nfse_carioca.rb +5 -12
- data/lib/nfse_carioca/cancelar_nfse.rb +28 -22
- data/lib/nfse_carioca/client.rb +31 -0
- data/lib/nfse_carioca/configuration.rb +49 -7
- data/lib/nfse_carioca/gerar_nfse.rb +14 -23
- data/lib/nfse_carioca/gerar_nfse_xml.rb +49 -103
- data/lib/nfse_carioca/response.rb +27 -0
- data/lib/nfse_carioca/version.rb +2 -2
- data/nfse_carioca.gemspec +4 -4
- data/spec/fixtures/vcr_cassettes/NFSeCarioca_CancelarNFSe/_execute_/when_NFSeCarioca_rps_number_does_not_exist/returns_error_message.yml +253 -0
- data/spec/fixtures/vcr_cassettes/NFSeCarioca_CancelarNFSe/_execute_/when_NFSeCarioca_rps_number_does_not_exist/returns_false.yml +253 -0
- data/spec/fixtures/vcr_cassettes/NFSeCarioca_CancelarNFSe/_execute_/when_NFSeCarioca_rps_number_exist/returns_false.yml +238 -0
- data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_already_exist/responds_with_error.yml +296 -0
- data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_already_exist/responds_with_message_error_E10_.yml +296 -0
- data/spec/fixtures/vcr_cassettes/NFSeCarioca_GerarNFSe/_call/when_NFSeCarioca_rps_number_does_not_exist_yet/generates_NFSeCarioca.yml +340 -0
- data/spec/lib/nfse_carioca/cancelar_nfse_spec.rb +13 -21
- data/spec/lib/nfse_carioca/configuration_spec.rb +26 -26
- data/spec/lib/nfse_carioca/gerar_nfse_spec.rb +31 -34
- data/spec/spec_helper.rb +7 -0
- metadata +40 -38
- data/CHANGELOG.md +0 -7
- data/CONTRIBUTING.md +0 -35
- data/lib/nfse_carioca/cancelar_nfse_xml.rb +0 -31
- data/lib/nfse_carioca/models/address.rb +0 -13
- data/lib/nfse_carioca/models/customer.rb +0 -15
- data/lib/nfse_carioca/models/invoice.rb +0 -14
- data/lib/nfse_carioca/models/provider.rb +0 -9
- data/lib/nfse_carioca/nota_carioca_client.rb +0 -31
- data/lib/nfse_carioca/nota_carioca_response.rb +0 -20
@@ -1,31 +0,0 @@
|
|
1
|
-
module NFSeCarioca
|
2
|
-
class CancelarNFSeXML
|
3
|
-
include Virtus.model
|
4
|
-
|
5
|
-
SERVICO_CODIGO_MUNICIPIO = {
|
6
|
-
RIO_DE_JANEIRO: "3304557"
|
7
|
-
}
|
8
|
-
|
9
|
-
attribute :nf_number, String
|
10
|
-
attribute :cnpj, String
|
11
|
-
attribute :inscricao_municipal, String
|
12
|
-
|
13
|
-
def to_xml
|
14
|
-
xml = Builder::XmlMarkup.new(indent: 2)
|
15
|
-
xml.instruct!
|
16
|
-
xml.tag!("CancelarNfseEnvio", xmlns: "http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd") do |xml|
|
17
|
-
xml.tag!("Pedido", xmlns: "http://www.abrasf.org.br/ABRASF/arquivos/nfse.xsd") do |xml|
|
18
|
-
xml.tag!("InfPedidoCancelamento", Id: "Cancelamento_NF#{nf_number}") do |xml|
|
19
|
-
xml.tag!("IdentificacaoNfse") do |xml|
|
20
|
-
xml.tag!("Numero", nf_number)
|
21
|
-
xml.tag!("Cnpj", cnpj)
|
22
|
-
xml.tag!("InscricaoMunicipal", inscricao_municipal)
|
23
|
-
xml.tag!("CodigoMunicipio", SERVICO_CODIGO_MUNICIPIO[:RIO_DE_JANEIRO])
|
24
|
-
end
|
25
|
-
xml.tag!("CodigoCancelamento", "0")
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
@@ -1,13 +0,0 @@
|
|
1
|
-
module NFSeCarioca
|
2
|
-
class Address
|
3
|
-
include Virtus.model
|
4
|
-
|
5
|
-
attribute :street, String
|
6
|
-
attribute :number, String
|
7
|
-
attribute :complement, String
|
8
|
-
attribute :neighborhood, String
|
9
|
-
attribute :city_ibge_code, String
|
10
|
-
attribute :state_code, String
|
11
|
-
attribute :zipcode, String
|
12
|
-
end
|
13
|
-
end
|
@@ -1,15 +0,0 @@
|
|
1
|
-
require "nfse_carioca/models/address"
|
2
|
-
|
3
|
-
module NFSeCarioca
|
4
|
-
class Customer
|
5
|
-
include Virtus.model
|
6
|
-
|
7
|
-
attribute :kind, String
|
8
|
-
attribute :code, String
|
9
|
-
attribute :full_name, String
|
10
|
-
attribute :phone_number, String
|
11
|
-
attribute :email, String
|
12
|
-
attribute :address, Address
|
13
|
-
|
14
|
-
end
|
15
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require "nfse_carioca/models/provider"
|
2
|
-
require "nfse_carioca/models/customer"
|
3
|
-
|
4
|
-
module NFSeCarioca
|
5
|
-
class Invoice
|
6
|
-
include Virtus.model
|
7
|
-
|
8
|
-
attribute :identification_number, String
|
9
|
-
attribute :description, String
|
10
|
-
attribute :provider, Provider
|
11
|
-
attribute :customer, Customer
|
12
|
-
|
13
|
-
end
|
14
|
-
end
|
@@ -1,31 +0,0 @@
|
|
1
|
-
require "savon"
|
2
|
-
|
3
|
-
module NFSeCarioca
|
4
|
-
class NotaCariocaClient
|
5
|
-
|
6
|
-
def call(method, message)
|
7
|
-
client.call(method, message: { inputXML: message })
|
8
|
-
rescue Savon::HTTPError => e
|
9
|
-
p e
|
10
|
-
end
|
11
|
-
|
12
|
-
def client
|
13
|
-
@client ||= Savon.client({
|
14
|
-
wsdl: NFSeCarioca.nota_carioca_wsdl_url,
|
15
|
-
env_namespace: :soap,
|
16
|
-
namespace_identifier: nil,
|
17
|
-
element_form_default: :unqualified,
|
18
|
-
ssl_verify_mode: :none,
|
19
|
-
ssl_version: :SSLv3,
|
20
|
-
ssl_cert_file: NFSeCarioca.cert_pem_path,
|
21
|
-
ssl_cert_key_file: NFSeCarioca.cert_key_pem_path,
|
22
|
-
ssl_ca_cert_file: NFSeCarioca.ca_cert_pem_path,
|
23
|
-
ssl_cert_key_password: NFSeCarioca.ssl_cert_key_password,
|
24
|
-
log_level: :debug,
|
25
|
-
log: true,
|
26
|
-
open_timeout: 120,
|
27
|
-
read_timeout: 120
|
28
|
-
})
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
module NFSeCarioca
|
2
|
-
class NotaCariocaResponse
|
3
|
-
|
4
|
-
def initialize(response)
|
5
|
-
@response= response
|
6
|
-
end
|
7
|
-
|
8
|
-
def response_http_status
|
9
|
-
@response.http.code
|
10
|
-
end
|
11
|
-
|
12
|
-
def raw_response_soap_envelope
|
13
|
-
@response.xml
|
14
|
-
end
|
15
|
-
|
16
|
-
def nota_carioca_xml
|
17
|
-
@nota_carioca_xml ||= Hash.from_xml(output_xml)
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|