nfe 0.0.0 → 0.0.1a
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -0
- data/.rspec +3 -0
- data/Gemfile +5 -0
- data/lib/nfe.rb +1 -1
- data/lib/nfe/template.rb +44 -0
- data/lib/nfe/template/cobr.mustache +4 -0
- data/lib/nfe/template/cobr.rb +15 -0
- data/lib/nfe/template/cofins.mustache +3 -0
- data/lib/nfe/template/cofins.rb +11 -0
- data/lib/nfe/template/cofins_aliq.mustache +6 -0
- data/lib/nfe/template/cofins_aliq.rb +20 -0
- data/lib/nfe/template/dest.mustache +7 -0
- data/lib/nfe/template/dest.rb +12 -0
- data/lib/nfe/template/det.mustache +5 -0
- data/lib/nfe/template/det.rb +16 -0
- data/lib/nfe/template/dup.mustache +5 -0
- data/lib/nfe/template/dup.rb +12 -0
- data/lib/nfe/template/emit.mustache +10 -0
- data/lib/nfe/template/emit.rb +12 -0
- data/lib/nfe/template/ender_dest.mustache +12 -0
- data/lib/nfe/template/ender_dest.rb +7 -0
- data/lib/nfe/template/ender_emit.mustache +13 -0
- data/lib/nfe/template/ender_emit.rb +7 -0
- data/lib/nfe/template/fat.mustache +5 -0
- data/lib/nfe/template/fat.rb +6 -0
- data/lib/nfe/template/icms.mustache +3 -0
- data/lib/nfe/template/icms.rb +11 -0
- data/lib/nfe/template/icms00.mustache +8 -0
- data/lib/nfe/template/icms00.rb +6 -0
- data/lib/nfe/template/icms_tot.mustache +16 -0
- data/lib/nfe/template/icms_tot.rb +40 -0
- data/lib/nfe/template/ide.mustache +19 -0
- data/lib/nfe/template/ide.rb +7 -0
- data/lib/nfe/template/imposto.mustache +6 -0
- data/lib/nfe/template/imposto.rb +23 -0
- data/lib/nfe/template/inf_adic.mustache +4 -0
- data/lib/nfe/template/inf_adic.rb +12 -0
- data/lib/nfe/template/inf_nfe.mustache +10 -0
- data/lib/nfe/template/inf_nfe.rb +40 -0
- data/lib/nfe/template/ipi.mustache +4 -0
- data/lib/nfe/template/ipi.rb +11 -0
- data/lib/nfe/template/ipint.mustache +3 -0
- data/lib/nfe/template/ipint.rb +6 -0
- data/lib/nfe/template/obs_cont.mustache +3 -0
- data/lib/nfe/template/obs_cont.rb +7 -0
- data/lib/nfe/template/pis.mustache +3 -0
- data/lib/nfe/template/pis.rb +11 -0
- data/lib/nfe/template/pis_aliq.mustache +6 -0
- data/lib/nfe/template/pis_aliq.rb +20 -0
- data/lib/nfe/template/prod.mustache +18 -0
- data/lib/nfe/template/prod.rb +7 -0
- data/lib/nfe/template/root.mustache +4 -0
- data/lib/nfe/template/root.rb +11 -0
- data/lib/nfe/template/total.mustache +3 -0
- data/lib/nfe/template/total.rb +11 -0
- data/lib/nfe/template/transp.mustache +5 -0
- data/lib/nfe/template/transp.rb +16 -0
- data/lib/nfe/template/transporta.mustache +3 -0
- data/lib/nfe/template/transporta.rb +7 -0
- data/lib/nfe/template/vol.mustache +6 -0
- data/lib/nfe/template/vol.rb +16 -0
- data/lib/nfe/version.rb +1 -1
- data/nfe.gemspec +5 -0
- data/spec/fixtures/nfe.xml +167 -0
- data/spec/nfe/template/cobr_spec.rb +13 -0
- data/spec/nfe/template/cofins_aliq_spec.rb +11 -0
- data/spec/nfe/template/cofins_spec.rb +11 -0
- data/spec/nfe/template/dest_spec.rb +13 -0
- data/spec/nfe/template/det_spec.rb +13 -0
- data/spec/nfe/template/dup_spec.rb +13 -0
- data/spec/nfe/template/emit_spec.rb +13 -0
- data/spec/nfe/template/ender_dest_spec.rb +13 -0
- data/spec/nfe/template/ender_emit_spec.rb +13 -0
- data/spec/nfe/template/fat_spec.rb +13 -0
- data/spec/nfe/template/icms00_spec.rb +13 -0
- data/spec/nfe/template/icms_spec.rb +13 -0
- data/spec/nfe/template/icms_tot_spec.rb +13 -0
- data/spec/nfe/template/ide_spec.rb +13 -0
- data/spec/nfe/template/imposto_spec.rb +13 -0
- data/spec/nfe/template/inf_adic_spec.rb +13 -0
- data/spec/nfe/template/inf_nfe_spec.rb +13 -0
- data/spec/nfe/template/ipi_spec.rb +13 -0
- data/spec/nfe/template/ipint_spec.rb +13 -0
- data/spec/nfe/template/obs_cont_spec.rb +13 -0
- data/spec/nfe/template/pis_aliq_spec.rb +13 -0
- data/spec/nfe/template/pis_spec.rb +13 -0
- data/spec/nfe/template/prod_spec.rb +13 -0
- data/spec/nfe/template/root_spec.rb +13 -0
- data/spec/nfe/template/total_spec.rb +13 -0
- data/spec/nfe/template/transp_spec.rb +13 -0
- data/spec/nfe/template/transporta_spec.rb +13 -0
- data/spec/nfe/template/vol_spec.rb +13 -0
- data/spec/spec_helper.rb +306 -0
- metadata +158 -7
data/.gitignore
CHANGED
data/.rspec
ADDED
data/Gemfile
CHANGED
data/lib/nfe.rb
CHANGED
data/lib/nfe/template.rb
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
require "mustache"
|
2
|
+
|
3
|
+
module Nfe
|
4
|
+
module Template
|
5
|
+
class Base < Mustache
|
6
|
+
def initialize(*args)
|
7
|
+
self.template_path = File.expand_path("../../", __FILE__)
|
8
|
+
self.raise_on_context_miss = true
|
9
|
+
super
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
autoload :Root, "nfe/template/root"
|
14
|
+
autoload :Cobr, "nfe/template/cobr"
|
15
|
+
autoload :CofinsAliq, "nfe/template/cofins_aliq"
|
16
|
+
autoload :Cofins, "nfe/template/cofins"
|
17
|
+
autoload :Dest, "nfe/template/dest"
|
18
|
+
autoload :Det, "nfe/template/det"
|
19
|
+
autoload :EnderDest, "nfe/template/ender_dest"
|
20
|
+
autoload :Prod, "nfe/template/prod"
|
21
|
+
autoload :Imposto, "nfe/template/imposto"
|
22
|
+
autoload :Ide, "nfe/template/ide"
|
23
|
+
autoload :Fat, "nfe/template/fat"
|
24
|
+
autoload :Dup, "nfe/template/dup"
|
25
|
+
autoload :Icms, "nfe/template/icms"
|
26
|
+
autoload :Icms00, "nfe/template/icms00"
|
27
|
+
autoload :Ipi, "nfe/template/ipi"
|
28
|
+
autoload :Pis, "nfe/template/pis"
|
29
|
+
autoload :Ipint, "nfe/template/ipint"
|
30
|
+
autoload :PisAliq, "nfe/template/pis_aliq"
|
31
|
+
autoload :InfNfe, "nfe/template/inf_nfe"
|
32
|
+
autoload :Emit, "nfe/template/emit"
|
33
|
+
autoload :EnderEmit, "nfe/template/ender_emit"
|
34
|
+
autoload :Total, "nfe/template/total"
|
35
|
+
autoload :Transp, "nfe/template/transp"
|
36
|
+
autoload :IcmsTot, "nfe/template/icms_tot"
|
37
|
+
autoload :Transporta, "nfe/template/transporta"
|
38
|
+
autoload :Vol, "nfe/template/vol"
|
39
|
+
autoload :InfAdic, "nfe/template/inf_adic"
|
40
|
+
autoload :ObsCont, "nfe/template/obs_cont"
|
41
|
+
|
42
|
+
autoload :Signature, "nfe/template/signature"
|
43
|
+
end
|
44
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
module Nfe
|
2
|
+
module Template
|
3
|
+
class CofinsAliq < Base
|
4
|
+
attr_accessor :cst
|
5
|
+
attr_accessor :v_bc, :p_cofins, :v_cofins
|
6
|
+
|
7
|
+
def v_bc
|
8
|
+
"%0.2f" % @v_bc
|
9
|
+
end
|
10
|
+
|
11
|
+
def p_cofins
|
12
|
+
"%0.2f" % @p_cofins
|
13
|
+
end
|
14
|
+
|
15
|
+
def v_cofins
|
16
|
+
"%0.2f" % @v_cofins
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
<enderEmit>
|
2
|
+
<xLgr>{{x_lgr}}</xLgr>
|
3
|
+
<nro>{{nro}}</nro>
|
4
|
+
<xCpl>{{x_cpl}}</xCpl>
|
5
|
+
<xBairro>{{x_bairro}}</xBairro>
|
6
|
+
<cMun>{{c_mun}}</cMun>
|
7
|
+
<xMun>{{x_mun}}</xMun>
|
8
|
+
<UF>{{uf}}</UF>
|
9
|
+
<CEP>{{cep}}</CEP>
|
10
|
+
<cPais>{{c_pais}}</cPais>
|
11
|
+
<xPais>{{x_pais}}</xPais>
|
12
|
+
<fone>{{fone}}</fone>
|
13
|
+
</enderEmit>
|
@@ -0,0 +1,16 @@
|
|
1
|
+
<ICMSTot>
|
2
|
+
<vBC>{{v_bc}}</vBC>
|
3
|
+
<vICMS>{{v_icms}}</vICMS>
|
4
|
+
<vBCST>{{v_bcst}}</vBCST>
|
5
|
+
<vST>{{v_st}}</vST>
|
6
|
+
<vProd>{{v_prod}}</vProd>
|
7
|
+
<vFrete>{{v_frete}}</vFrete>
|
8
|
+
<vSeg>{{v_seg}}</vSeg>
|
9
|
+
<vDesc>{{v_desc}}</vDesc>
|
10
|
+
<vII>{{v_ii}}</vII>
|
11
|
+
<vIPI>{{v_ipi}}</vIPI>
|
12
|
+
<vPIS>{{v_pis}}</vPIS>
|
13
|
+
<vCOFINS>{{v_cofins}}</vCOFINS>
|
14
|
+
<vOutro>{{v_outro}}</vOutro>
|
15
|
+
<vNF>{{v_nf}}</vNF>
|
16
|
+
</ICMSTot>
|
@@ -0,0 +1,40 @@
|
|
1
|
+
module Nfe
|
2
|
+
module Template
|
3
|
+
class IcmsTot < Base
|
4
|
+
attr_accessor :v_bc, :v_icms, :v_prod, :v_pis, :v_cofins, :v_nf
|
5
|
+
attr_writer :v_bcst, :v_st, :v_frete, :v_seg, :v_desc, :v_ii, :v_ipi, :v_outro
|
6
|
+
|
7
|
+
def v_bcst
|
8
|
+
"%0.2f" % @v_bcst
|
9
|
+
end
|
10
|
+
|
11
|
+
def v_st
|
12
|
+
"%0.2f" % @v_st
|
13
|
+
end
|
14
|
+
|
15
|
+
def v_frete
|
16
|
+
"%0.2f" % @v_frete
|
17
|
+
end
|
18
|
+
|
19
|
+
def v_seg
|
20
|
+
"%0.2f" % @v_seg
|
21
|
+
end
|
22
|
+
|
23
|
+
def v_desc
|
24
|
+
"%0.2f" % @v_desc
|
25
|
+
end
|
26
|
+
|
27
|
+
def v_ii
|
28
|
+
"%0.2f" % @v_ii
|
29
|
+
end
|
30
|
+
|
31
|
+
def v_ipi
|
32
|
+
"%0.2f" % @v_ipi
|
33
|
+
end
|
34
|
+
|
35
|
+
def v_outro
|
36
|
+
"%0.2f" % @v_outro
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
<ide>
|
2
|
+
<cUF>{{c_uf}}</cUF>
|
3
|
+
<cNF>{{c_nf}}</cNF>
|
4
|
+
<natOp>{{nat_op}}</natOp>
|
5
|
+
<indPag>{{ind_pag}}</indPag>
|
6
|
+
<mod>{{mod}}</mod>
|
7
|
+
<serie>{{serie}}</serie>
|
8
|
+
<nNF>{{n_nf}}</nNF>
|
9
|
+
<dEmi>{{d_emi}}</dEmi>
|
10
|
+
<tpNF>{{tp_nf}}</tpNF>
|
11
|
+
<cMunFG>{{c_mun_fg}}</cMunFG>
|
12
|
+
<tpImp>{{tp_imp}}</tpImp>
|
13
|
+
<tpEmis>{{tp_emis}}</tpEmis>
|
14
|
+
<cDV>{{c_dv}}</cDV>
|
15
|
+
<tpAmb>{{tp_amb}}</tpAmb>
|
16
|
+
<finNFe>{{fin_nfe}}</finNFe>
|
17
|
+
<procEmi>{{proc_emi}}</procEmi>
|
18
|
+
<verProc>{{ver_proc}}</verProc>
|
19
|
+
</ide>
|
@@ -0,0 +1,23 @@
|
|
1
|
+
module Nfe
|
2
|
+
module Template
|
3
|
+
class Imposto < Base
|
4
|
+
attr_writer :icms, :ipi, :pis, :cofins
|
5
|
+
|
6
|
+
def icms
|
7
|
+
@icms.render
|
8
|
+
end
|
9
|
+
|
10
|
+
def ipi
|
11
|
+
@ipi.render
|
12
|
+
end
|
13
|
+
|
14
|
+
def pis
|
15
|
+
@pis.render
|
16
|
+
end
|
17
|
+
|
18
|
+
def cofins
|
19
|
+
@cofins.render
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|