cfdi 0.1.7 → 0.1.8

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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/lib/comun.rb +21 -21
  3. data/lib/version.rb +1 -1
  4. data/readme.md +26 -24
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: df68b45a858a0e73411f9cf57dac1c7bdfeb26d7
4
- data.tar.gz: 6eb6a1ee3742c074c8238703a62eec4e03f14b66
3
+ metadata.gz: cb914ef37f91ddda191093e06888b40df2bec153
4
+ data.tar.gz: 4bdd0e633c0a5493e40abb247a0a3dcdaa294dc9
5
5
  SHA512:
6
- metadata.gz: 1670b91ea68a31f48699cd42c8ccef9b12d99b9b32a074ea1b75762b77b33e09431747d4a343a03fe3f399e6082691add443d3668df595128b581f4bc7cdffaf
7
- data.tar.gz: ad25fd3211d6e49e3ac05731544ddff1067dabc67868994579b7d7199a20db1dd26b69cb90fb9800876031dae40f98b152f21441d1a08502307f95c821273f72
6
+ metadata.gz: bac36231875ce770144431a887faea011fc055df402c8414b400c89ee57489f5d779270f69983be59b65525356786b147b8bc6a9cc80a6c7486f6b9240d9d7bf
7
+ data.tar.gz: e4204295e3f4c07b51b89e198166ef14fb9e30a12e557c0cff77ac96677d2c7c02c4f62b09d49b28167c0f3a2595c9edc0c51d5e494f6a18a9d0b97752886d26
data/lib/comun.rb CHANGED
@@ -1,26 +1,26 @@
1
- # Mkay, quiero que mis floats tengan dos decimales a huevo
2
- class Float
3
-
4
- # Lo que dice la clase
5
- #
6
- # @return [String] El string de este float con dos decimales
7
- def to_s
8
- sprintf('%.2f', self)
9
- end
10
-
11
- end
1
+ # # Mkay, quiero que mis floats tengan dos decimales a huevo
2
+ # class Float
3
+
4
+ # # Lo que dice la clase
5
+ # #
6
+ # # @return [String] El string de este float con dos decimales
7
+ # def to_s
8
+ # sprintf('%.2f', self)
9
+ # end
10
+
11
+ # end
12
12
  # Y quiero que los strings no tengan espacios extraños
13
13
  class String
14
14
 
15
15
  # Limpia whitespace de extremos y espacios repetidos
16
- #
16
+ #
17
17
  # @return [String] Una copia del string sin espacios extraños
18
18
  def squish
19
19
  dup.squish!
20
20
  end
21
21
 
22
22
  # Lo mismo que squish, pero destructivo
23
- #
23
+ #
24
24
  # @return [String] El string original sin espacios extraños
25
25
  def squish!
26
26
  strip!
@@ -35,11 +35,11 @@ module CFDI
35
35
 
36
36
  # Un elemento del comprobante con métodos mágicos y especiales
37
37
  class ElementoComprobante
38
-
38
+
39
39
 
40
40
  # Crear este elemento y settear lo que le pasemos como hash en un tipo de dato adecuado
41
41
  # @param data [Hash] Los datos para este elemento
42
- #
42
+ #
43
43
  # @return [CFDI::ElementoComprobante] El elemento creado
44
44
  def initialize data={}
45
45
  #puts self.class
@@ -52,7 +52,7 @@ module CFDI
52
52
 
53
53
 
54
54
  # Los elementos para generar la cadena original de este comprobante
55
- #
55
+ #
56
56
  # @return [Array] idem
57
57
  def self.data
58
58
  @cadenaOriginal
@@ -60,21 +60,21 @@ module CFDI
60
60
 
61
61
 
62
62
  # Un array con los datos de la cadena original para este elemento
63
- #
63
+ #
64
64
  # @return [Array] idem
65
65
  def cadena_original
66
66
  params = []
67
67
  data = {}
68
68
  data = self.class.data
69
69
  # puts self.class.cadenaOriginal
70
-
70
+
71
71
  data.each {|key| params.push instance_variable_get('@'+key.to_s) }
72
72
  return params
73
73
  end
74
74
 
75
75
 
76
76
  # Los datos xmleables de este elemento
77
- #
77
+ #
78
78
  # @return [Hash] idem
79
79
  def to_h
80
80
  h = {}
@@ -83,10 +83,10 @@ module CFDI
83
83
  value = value.to_h if value.is_a? ElementoComprobante
84
84
  h[v] = value
85
85
  end
86
-
86
+
87
87
  h
88
88
  end
89
-
89
+
90
90
  end
91
91
 
92
92
  end
data/lib/version.rb CHANGED
@@ -1,4 +1,4 @@
1
1
  module CFDI
2
2
  # La versión de este gem
3
- VERSION = '0.1.7'
3
+ VERSION = '0.1.8'
4
4
  end
data/readme.md CHANGED
@@ -9,33 +9,35 @@ El sistema de generación y sellado de facturas es una patada en los genitales.
9
9
 
10
10
  ## Uso
11
11
 
12
- Puedes ver [crear_factura.rb](examples/crear_factura.rb) para darse una mejor idea, pero acá va un resumen:
12
+ Puedes ver [crear_factura.rb](examples/crear_factura.rb) para darte una mejor idea, pero acá va un resumen:
13
13
 
14
- require 'cfdi'
15
- factura = CFDI::Comprobante.new
16
-
17
- emisor = {
18
- rfc: 'un RFC',
19
- nombre: 'una razón social o nombre',
20
- domicilioFiscal: CFDI::Domicilio.new
21
- expedidoEn: CFDI::Domicilio.new
22
- regimenFiscal: 'general'
23
- }
24
-
25
- # lo mismo para el receptor
26
-
27
- # porque XML! ES LO DE HOY! BIENVENIDOS A 2001!
28
- puts factura.to_xml
29
-
30
- # O talvez evolucionamos a un formato de intercambio de datos menos castroso
31
- require 'json'
32
- puts JSON.pretty_generate(factura.to_h)
33
-
34
- # También podemos parsear un CFDI en XML...
35
- puts JSON.pretty_generate CFDI.from_xml(File.read('./examples/data/cfdi.xml')).to_h
14
+ ```ruby
15
+ require 'cfdi'
16
+ factura = CFDI::Comprobante.new
17
+
18
+ factura.emisor = {
19
+ rfc: 'un RFC',
20
+ nombre: 'una razón social o nombre',
21
+ domicilioFiscal: CFDI::Domicilio.new
22
+ expedidoEn: CFDI::Domicilio.new
23
+ regimenFiscal: 'general'
24
+ }
25
+
26
+ # lo mismo para el receptor
27
+
28
+ # porque XML! ES LO DE HOY! BIENVENIDOS A 2001!
29
+ puts factura.to_xml
30
+
31
+ # O talvez evolucionamos a un formato de intercambio de datos menos castroso
32
+ require 'json'
33
+ puts JSON.pretty_generate(factura.to_h)
34
+
35
+ # También podemos parsear un CFDI en XML...
36
+ puts JSON.pretty_generate CFDI.from_xml(File.read('./examples/data/cfdi.xml')).to_h
37
+ ```
36
38
 
37
39
  ## Licencia
38
40
 
39
41
  ![What the fuck Public License](http://www.wtfpl.net/wp-content/uploads/2012/12/wtfpl-badge-1.png)
40
42
 
41
- Como es costumbre, todo bajo WTFPL. La licencia completa la puedes leer acá: [Licencia](LICENSE.txt)
43
+ Como es costumbre, todo bajo WTFPL. La licencia completa la puedes leer acá: [Licencia](LICENSE.txt)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cfdi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Roberto Hidalgo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-10 00:00:00.000000000 Z
11
+ date: 2014-12-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri