Class: CFDI::ElementoComprobante
- Inherits:
-
Object
- Object
- CFDI::ElementoComprobante
- Defined in:
- lib/comun.rb
Overview
Un elemento del comprobante con métodos mágicos y especiales
Direct Known Subclasses
Complemento, Concepto, Domicilio, Entidad, Impuestos, Impuestos::ImpuestoGenerico
Class Method Summary collapse
-
.data ⇒ Array
Los elementos para generar la cadena original de este comprobante.
Instance Method Summary collapse
-
#cadena_original ⇒ Array
Un array con los datos de la cadena original para este elemento.
-
#initialize(data = {}) ⇒ CFDI::ElementoComprobante
constructor
Crear este elemento y settear lo que le pasemos como hash en un tipo de dato adecuado.
-
#to_h ⇒ Hash
Los datos xmleables de este elemento.
Constructor Details
#initialize(data = {}) ⇒ CFDI::ElementoComprobante
Crear este elemento y settear lo que le pasemos como hash en un tipo de dato adecuado
44 45 46 47 48 49 50 51 |
# File 'lib/comun.rb', line 44 def initialize data={} #puts self.class data.each do |k,v| method = "#{k}=".to_sym next if !self.respond_to? method self.send method, v end end |
Class Method Details
.data ⇒ Array
Los elementos para generar la cadena original de este comprobante
57 58 59 |
# File 'lib/comun.rb', line 57 def self.data @cadenaOriginal end |
Instance Method Details
#cadena_original ⇒ Array
Un array con los datos de la cadena original para este elemento
65 66 67 68 69 70 71 72 73 |
# File 'lib/comun.rb', line 65 def cadena_original params = [] data = {} data = self.class.data # puts self.class.cadenaOriginal data.each {|key| params.push instance_variable_get('@'+key.to_s) } return params end |
#to_h ⇒ Hash
Los datos xmleables de este elemento
79 80 81 82 83 84 85 86 87 88 |
# File 'lib/comun.rb', line 79 def to_h h = {} self.class.data.each do |v| value = self.send(v) value = value.to_h if value.is_a? ElementoComprobante h[v] = value end h end |