ruby_danfe 1.15.2 → 1.15.4

Sign up to get free protection for your applications and to get access to all the features.
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: