nfe-io 0.3.1 → 0.3.2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0aae1eec0dd11fef2aaa85a5065d1bbf2a0dd32a
4
- data.tar.gz: 14e245ee4c618155685fb1b4fdb688b1bb9c950c
3
+ metadata.gz: a90897ffa8ac9d3ad0273a36ffb53dadef2ca062
4
+ data.tar.gz: d139255fe9b0830257c24f95f20fbece03b6342b
5
5
  SHA512:
6
- metadata.gz: a872c056d4d66d0e50de1e28d76e3e68f5ef24f789c8fe61cadddc7832d1dc743ba40372942f287f0e82da399ca43166db19cef3ba104b0e75019724a190b72c
7
- data.tar.gz: 173e4ef82ece18aab30070a2293cac569573c1c8e0736516d9943037f1b9d1630354d52bbf4db5785dcc4c7ec816827716fd33f09eedbf9b7b003d44d856a045
6
+ metadata.gz: a7d68faa543963aa0e037a87b6ab61a6fbce7ee8345a8015003dad47fe285f01301d531e3567593497e363d144d8f7ae013f74dba6a99b286d998ba3e922046e
7
+ data.tar.gz: 9281504226bfde6e35ac0b37d57f2b461a5ee9c0e8cc47d07c0b9f6586db36a17d5d94b66db6b387a62dcf70d402711be9e5568f1863fcedabd297e69fee7227
data/README.md CHANGED
@@ -80,6 +80,30 @@ invoice.body
80
80
  send_data(invoice.body, filename: 'invoice.pdf', type: 'application/pdf')
81
81
  ```
82
82
 
83
+ ### Cancelar Nota Fiscal
84
+
85
+ ```ruby
86
+ # Define a API Key, conforme está no painel
87
+ Nfe.api_key('c73d49f9649046eeba36dcf69f6334fd')
88
+ # ID da empresa, você encontra no painel
89
+ Nfe::ServiceInvoice.company_id("55df4dc6b6cd9007e4f13ee8")
90
+ # O parâmetro é o ID da nota
91
+ invoice = Nfe::ServiceInvoice.cancel("59443a0e2a8b6806986d7a2d")
92
+ # A resposta são os dados da nota com a mudança de estado para "WaitingSendCancel"
93
+ ```
94
+
95
+ ### Como validar o Webhook?
96
+ ```ruby
97
+ def request_is_authentic?
98
+ body = request.body.read
99
+ signature = request.headers['X-NFEIO-Signature']
100
+
101
+ hash = 'sha1=' + Base64.strict_encode64(OpenSSL::HMAC.digest(OpenSSL::Digest.new('sha1'), ENV.fetch("NFEIO_WEBHOOK_SECRET"), body))
102
+
103
+ ActiveSupport::SecurityUtils.secure_compare(hash, signature)
104
+ end
105
+ ```
106
+
83
107
  ## Contribuir
84
108
 
85
109
  Envio de bugs e pull requests são muito bem vindos no https://github.com/nfe/client-ruby.
@@ -0,0 +1,15 @@
1
+ module Nfe
2
+ module ApiOperations
3
+ module Cancel
4
+ def cancel(nfe_id)
5
+ method = :delete
6
+ response = api_request("#{url}/#{nfe_id}", method)
7
+ create_from(response)
8
+ end
9
+
10
+ def self.included(base)
11
+ base.extend(Cancel)
12
+ end
13
+ end
14
+ end
15
+ end
@@ -4,7 +4,7 @@ module Nfe
4
4
  include ApiOperations::Create
5
5
  include ApiOperations::List
6
6
  include ApiOperations::Retrieve
7
- include ApiOperations::Delete
7
+ include ApiOperations::Cancel
8
8
  include ApiOperations::Update
9
9
  include ApiOperations::Download
10
10
 
@@ -17,11 +17,11 @@ module Nfe
17
17
  end
18
18
 
19
19
  def url
20
- "#{self.class.url}/#{self.id}"
20
+ self.class.url
21
21
  end
22
22
 
23
23
  def self.create_from(params)
24
24
  params
25
25
  end
26
26
  end
27
- end
27
+ end
data/lib/nfe/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Nfe
2
- VERSION = "0.3.1"
2
+ VERSION = "0.3.2"
3
3
  end
data/lib/nfe.rb CHANGED
@@ -6,6 +6,7 @@ require "nfe/configuration"
6
6
  require "nfe/api_resource"
7
7
  require "nfe/api_operations/create"
8
8
  require "nfe/api_operations/delete"
9
+ require "nfe/api_operations/cancel"
9
10
  require "nfe/api_operations/list"
10
11
  require "nfe/api_operations/retrieve"
11
12
  require "nfe/api_operations/update"
metadata CHANGED
@@ -1,83 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nfe-io
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.3.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ricardo Caldeira
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-06-23 00:00:00.000000000 Z
11
+ date: 2018-05-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rest-client
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: 2.0.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 2.0.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
33
  version: '1.10'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '1.10'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '10.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '10.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: byebug
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  description: Nfe.io's ruby gem
@@ -87,11 +87,11 @@ executables: []
87
87
  extensions: []
88
88
  extra_rdoc_files: []
89
89
  files:
90
- - .gitignore
91
- - .rspec
92
- - .ruby-gemset
93
- - .ruby-version
94
- - .travis.yml
90
+ - ".gitignore"
91
+ - ".rspec"
92
+ - ".ruby-gemset"
93
+ - ".ruby-version"
94
+ - ".travis.yml"
95
95
  - Gemfile
96
96
  - LICENSE.txt
97
97
  - README.md
@@ -100,6 +100,7 @@ files:
100
100
  - bin/setup
101
101
  - lib/data/ssl-bundle.crt
102
102
  - lib/nfe.rb
103
+ - lib/nfe/api_operations/cancel.rb
103
104
  - lib/nfe/api_operations/create.rb
104
105
  - lib/nfe/api_operations/delete.rb
105
106
  - lib/nfe/api_operations/download.rb
@@ -127,17 +128,17 @@ require_paths:
127
128
  - lib
128
129
  required_ruby_version: !ruby/object:Gem::Requirement
129
130
  requirements:
130
- - - '>='
131
+ - - ">="
131
132
  - !ruby/object:Gem::Version
132
133
  version: '0'
133
134
  required_rubygems_version: !ruby/object:Gem::Requirement
134
135
  requirements:
135
- - - '>='
136
+ - - ">="
136
137
  - !ruby/object:Gem::Version
137
138
  version: '0'
138
139
  requirements: []
139
140
  rubyforge_project:
140
- rubygems_version: 2.0.14.1
141
+ rubygems_version: 2.5.2
141
142
  signing_key:
142
143
  specification_version: 4
143
144
  summary: Nfe.io's ruby gem