ruby_danfe 1.15.2 → 1.15.4

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
  SHA256:
3
- metadata.gz: 45bbbc1f6ba37e78030d768952c28eae216e365697be2aadd126b6a3c8de3802
4
- data.tar.gz: 0db177fe5fd1bf50b99a194bc1bc6b6415b5be4981ccbd44459b87335e965d8e
3
+ metadata.gz: b9c2189d353cd157495224787759f42e852858838eb42a4771bfeacbb43d4261
4
+ data.tar.gz: 690661efbd78af347c65714277435d863db5be3a4e02c292282c88320d02f5f1
5
5
  SHA512:
6
- metadata.gz: 6cf0eaeedb0fe4b9d25cee65c9fcb03d872b33ab8e9bb2396132ceab31a8315df6f36ff2288bb47e9dd82bca025f4e23c412d46b193616a5b6b658fb82a90d43
7
- data.tar.gz: 1161b86c4e04271d8ac6b51bbf86ac8b4d6a42f1f563fedd0ef6e0b357348e86ae59ac3c0ae2cd2b27ee925dd3ec218f60e8ce6a9705ba24d71f4b8d4b43e15d
6
+ metadata.gz: dd2acaf149116a70f61100bfb74fdb9905f9cc7d31ff8ef56c199442936f2c53be6cce904f9d850d068fc4466c9459ea2068dd8e48c1c8db88ff571fce3d416f
7
+ data.tar.gz: 11f3a91fa45a6e47cd51d3a8df4ebf790b62af6e71a2db74bea52e0a542b92ad6e2c705ae6a7c14cd0bad1982b8fee58fec511efa79d0dac8860d01a489c27c6
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-2.3.1
1
+ ruby-3.2.2
@@ -433,6 +433,7 @@ module RubyDanfe
433
433
  def render_impostos
434
434
  #informações relativas ao Imposto
435
435
  @pdf.ibox 0.40, 20.49, 0.25, 17.42, '', 'INFORMAÇÕES RELATIVAS AO IMPOSTO', { :align => :left, :size => 7, :border => 0, :style => :bold }
436
+ complemento = ''
436
437
  if !@xml['imp/ICMS/ICMS00'].eql?("")
437
438
  cst = '00 - Tributação Normal ICMS'
438
439
  tipoIcms = 'ICMS00'
@@ -445,6 +446,7 @@ module RubyDanfe
445
446
  elsif !@xml['imp/ICMS/ICMS60'].eql?("")
446
447
  cst = '60 - ICMS cobrado anteriormente por Substituição Tributária'
447
448
  tipoIcms = 'ICMS60'
449
+ complemento = 'STRet'
448
450
  elsif !@xml['imp/ICMS/ICMS90'].eql?("")
449
451
  cst = '90 - ICMS outros'
450
452
  tipoIcms = 'ICMS90'
@@ -456,11 +458,11 @@ module RubyDanfe
456
458
  tipoIcms = 'ICMSOutraUF'
457
459
  end
458
460
  @pdf.ibox 0.90, 10.00, 0.25, 17.83, 'SITUAÇÃO TRIBUTÁRIA', cst, { :size => 7, :style => :bold }
459
- @pdf.inumeric 0.90, 3.00, 10.25, 17.83, 'BASE DE CÁLCULO', @xml['imp/ICMS/'+ tipoIcms + '/vBC'], { :size => 7, :style => :bold }
460
- @pdf.inumeric 0.90, 1.00, 13.25, 17.83, 'AL. ICMS', @xml[('imp/ICMS/' + tipoIcms + '/pICMS')], { :size => 7, :style => :bold }
461
+ @pdf.inumeric 0.90, 3.00, 10.25, 17.83, 'BASE DE CÁLCULO', @xml['imp/ICMS/'+ tipoIcms + '/vBC'+ complemento], { :size => 7, :style => :bold }
462
+ @pdf.inumeric 0.90, 1.00, 13.25, 17.83, 'AL. ICMS', @xml['imp/ICMS/' + tipoIcms + '/pICMS'+ complemento], { :size => 7, :style => :bold }
461
463
  @pdf.inumeric 0.90, 3.00, 14.25, 17.83, 'VALOR ICMS', @xml['imp/ICMS/' + tipoIcms + '/vICMS'],{ :size => 7, :style => :bold }
462
464
  @pdf.inumeric 0.90, 2.00, 17.25, 17.83, '% RED.BC.CALC.', @xml['imp/ICMS/' + tipoIcms + '/pRedBC'], { :size => 7, :style => :bold }
463
- @pdf.inumeric 0.90, 1.49, 19.25, 17.83, 'ICMS ST.', @xml['imp/ICMS/' + tipoIcms + '/pRedBC'], { :size => 7, :style => :bold }
465
+ @pdf.inumeric 0.90, 1.49, 19.25, 17.83, 'ICMS ST.', @xml['imp/ICMS/' + tipoIcms + '/vICMS'+ complemento], { :size => 7, :style => :bold }
464
466
  end
465
467
 
466
468
  def render_documentos_originarios
@@ -17,6 +17,17 @@ module RubyDanfe
17
17
  descricao += "FCI: #{det.css('prod/nFCI').text}"
18
18
  end
19
19
 
20
+ if need_veicProd(det)
21
+ veicProd = det.css('veicProd')
22
+
23
+ descricao += LINEBREAK
24
+ descricao += "Chassi: #{veicProd.css('chassi').text} "
25
+ descricao += "Motor: #{veicProd.css('nMotor').text} "
26
+ descricao += "AnoFab: #{veicProd.css('anoFab').text} "
27
+ descricao += "AnoMod: #{veicProd.css('anoMod').text} "
28
+ descricao += "Cor: #{veicProd.css('xCor').text}"
29
+ end
30
+
20
31
  if need_st(det)
21
32
  descricao += LINEBREAK
22
33
  descricao += "ST: MVA: #{det.css('ICMS/*/pMVAST').text}% "
@@ -37,6 +48,10 @@ module RubyDanfe
37
48
  !det.css('prod/nFCI').text.empty?
38
49
  end
39
50
 
51
+ def self.need_veicProd(det)
52
+ !det.css('prod/veicProd').text.empty?
53
+ end
54
+
40
55
  def self.need_st(det)
41
56
  det.css('ICMS/*/vBCST').text.to_i > 0
42
57
  end
@@ -13,7 +13,7 @@ module RubyDanfe
13
13
 
14
14
  private
15
15
  def file
16
- File.exists?("config/ruby_danfe.yml") ? File.open("config/ruby_danfe.yml").read : ""
16
+ File.exist?("config/ruby_danfe.yml") ? File.open("config/ruby_danfe.yml").read : ""
17
17
  end
18
18
 
19
19
  def config_yaml_load
@@ -1,3 +1,3 @@
1
1
  module RubyDanfe
2
- VERSION = "1.15.2"
2
+ VERSION = "1.15.4"
3
3
  end
data/ruby_danfe.gemspec CHANGED
@@ -8,7 +8,7 @@ Gem::Specification.new do |spec|
8
8
  spec.summary = "DANFE and DACTE pdf generator for Brazilian invoices and transportation docs."
9
9
  spec.author = "Eduardo Reboucas"
10
10
  spec.email = "eduardo.reboucas@gmail.com"
11
- spec.homepage = "http://github.com/taxweb/ruby_danfe"
11
+ spec.homepage = "http://github.com/mcfox/ruby_danfe"
12
12
  spec.license = "MIT"
13
13
 
14
14
  spec.files = `git ls-files`.split("\n")
@@ -17,14 +17,14 @@ Gem::Specification.new do |spec|
17
17
  spec.require_paths = ["lib"]
18
18
 
19
19
 
20
- spec.add_dependency "nokogiri", "~> 1.10.4"
20
+ spec.add_dependency "nokogiri", "> 1.8.5"
21
21
  spec.add_dependency "prawn", "~> 1.2"
22
- spec.add_dependency "prawn-table", "~> 0.2"
23
- spec.add_dependency "barby", "~> 0.5"
24
- spec.add_dependency "rqrcode", "~> 0.10"
22
+ spec.add_dependency "prawn-table", "> 0.2"
23
+ spec.add_dependency "barby", "> 0.5"
24
+ spec.add_dependency "rqrcode", "> 0.10"
25
25
  spec.add_dependency "rake"
26
26
 
27
27
  spec.add_development_dependency "pry"
28
- spec.add_development_dependency "rspec", "~> 3.0"
28
+ spec.add_development_dependency "rspec", "> 3.0"
29
29
  spec.add_development_dependency "simplecov"
30
30
  end
@@ -54,6 +54,25 @@ describe RubyDanfe::Descricao do
54
54
  Nokogiri::XML(xml)
55
55
  end
56
56
 
57
+ let(:xml_veicProd) do
58
+ xml = <<-eos
59
+ <det nItem="1">
60
+ <prod>
61
+ <xProd>MOTOCICLETA</xProd>
62
+ <veicProd>
63
+ <chassi>32A1SF354S6FASD213ASD5</chassi>
64
+ <xCor>PRETA</xCor>
65
+ <nMotor>DSA5DA-321503</nMotor>
66
+ <anoMod>2018</anoMod>
67
+ <anoFab>2018</anoFab>
68
+ </veicProd>
69
+ </prod>
70
+ </det>
71
+ eos
72
+
73
+ Nokogiri::XML(xml)
74
+ end
75
+
57
76
  let(:xml_IFC_ST_infAdProd) do
58
77
  xml = <<-eos
59
78
  <det nItem="1">
@@ -110,6 +129,19 @@ describe RubyDanfe::Descricao do
110
129
  end
111
130
  end
112
131
 
132
+ context "when have veicProd" do
133
+ it "returns product + veicProd" do
134
+ string = "MOTOCICLETA"
135
+ string += LINEBREAK
136
+ string += "Chassi: 32A1SF354S6FASD213ASD5 "
137
+ string += "Motor: DSA5DA-321503 "
138
+ string += "AnoFab: 2018 "
139
+ string += "AnoMod: 2018 "
140
+ string += "Cor: PRETA"
141
+ expect(RubyDanfe::Descricao.generate(xml_veicProd)).to eq string
142
+ end
143
+ end
144
+
113
145
  context "when have FCI + ST + infAdProd" do
114
146
  it "returns product + FCI + ST + infAdProd" do
115
147
  string = "MONITOR DE ARCO ELETRICO"
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_danfe
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.15.2
4
+ version: 1.15.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eduardo Reboucas
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-08-19 00:00:00.000000000 Z
11
+ date: 2023-12-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.10.4
19
+ version: 1.8.5
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
- version: 1.10.4
26
+ version: 1.8.5
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: prawn
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -42,42 +42,42 @@ dependencies:
42
42
  name: prawn-table
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0.2'
48
48
  type: :runtime
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: '0.2'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: barby
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - "~>"
59
+ - - ">"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0.5'
62
62
  type: :runtime
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.5'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rqrcode
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - "~>"
73
+ - - ">"
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0.10'
76
76
  type: :runtime
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.10'
83
83
  - !ruby/object:Gem::Dependency
@@ -112,14 +112,14 @@ dependencies:
112
112
  name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - "~>"
115
+ - - ">"
116
116
  - !ruby/object:Gem::Version
117
117
  version: '3.0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - "~>"
122
+ - - ">"
123
123
  - !ruby/object:Gem::Version
124
124
  version: '3.0'
125
125
  - !ruby/object:Gem::Dependency
@@ -136,7 +136,7 @@ dependencies:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
- description:
139
+ description:
140
140
  email: eduardo.reboucas@gmail.com
141
141
  executables: []
142
142
  extensions: []
@@ -191,11 +191,11 @@ files:
191
191
  - test/nfe_with_fci.xml
192
192
  - test/nfe_with_ns.xml
193
193
  - test/nfe_without_ns.xml
194
- homepage: http://github.com/taxweb/ruby_danfe
194
+ homepage: http://github.com/mcfox/ruby_danfe
195
195
  licenses:
196
196
  - MIT
197
197
  metadata: {}
198
- post_install_message:
198
+ post_install_message:
199
199
  rdoc_options: []
200
200
  require_paths:
201
201
  - lib
@@ -210,9 +210,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
210
210
  - !ruby/object:Gem::Version
211
211
  version: '0'
212
212
  requirements: []
213
- rubyforge_project:
214
- rubygems_version: 2.7.9
215
- signing_key:
213
+ rubygems_version: 3.4.22
214
+ signing_key:
216
215
  specification_version: 4
217
216
  summary: DANFE and DACTE pdf generator for Brazilian invoices and transportation docs.
218
217
  test_files: