m_cfdi 0.2.2 → 0.3.0

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
  SHA1:
3
- metadata.gz: e0bc905431e88ceb794b5b73de0cc96787182cd3
4
- data.tar.gz: c5e4ca809365d7c4a694dffedcc278e7f3733a0e
3
+ metadata.gz: e22828a2586f37f00df784e0e26c59b1ce0058cb
4
+ data.tar.gz: f916a0e4ecfe93dd982f24390ff628ec5d07abe6
5
5
  SHA512:
6
- metadata.gz: 5119a1d895f50fae75e1b2d8e14be65c0a094d5ccdec1d23c2c1979e3fe97e4c67cffcce99a11a413848e64157db83db1fb1e20d0c1498e489c3ab9373a45ad7
7
- data.tar.gz: 5cf65d6ee5525c26750778aa73fa06c653be2ea18b9a741676df82c8cd4ed1539bfff1f8623ca015fa343f26a8f028f2cb2efde1ef97e37d4ec5c0d332e18a4d
6
+ metadata.gz: 55d2e787d63160dc95a971d39cd74dca7014428b831707115a9c74f771b80ac6f73f13c07e217aed13efa448cdecb05af012af6a8c675b224b7b4238a3819ca2
7
+ data.tar.gz: a304b7adc21728954feccd5b275cb2323153ab2d0cb8ee99258e527dcd4fc77a46c72b9bef6423fda36332ed3bde27ed371a2da148480399599c90da8a1d1904
data/README.md CHANGED
@@ -7,7 +7,7 @@ CFDI GEM, to generate XML file for invoice, all you have to do, is to send the x
7
7
 
8
8
  In your gem file:
9
9
  ```bash
10
- gem 'm_cfdi', '~> 0.2.1'
10
+ gem 'm_cfdi', '~> 0.3.0'
11
11
  ```
12
12
 
13
13
  or
@@ -180,6 +180,16 @@ MCFDI.from_xml(XML_STRING)
180
180
  ```
181
181
  it will return new instance of `MCFDI::Invoice`.
182
182
 
183
+
184
+ You can also do:
185
+ ```ruby
186
+ MCFDI.proof_types
187
+ MCFDI.payment_methods
188
+ MCFDI.payment_ways
189
+ ```
190
+ it will return array of values.
191
+
192
+
183
193
  # TODO:
184
194
  * Create configuration class.
185
195
 
data/lib/m_cfdi.rb CHANGED
@@ -8,7 +8,11 @@ require 'm_cfdi/certificate'
8
8
  require 'm_cfdi/complement'
9
9
  require 'm_cfdi/concept'
10
10
  require 'm_cfdi/entity'
11
+ require 'm_cfdi/fiscal_regime'
11
12
  require 'm_cfdi/key'
13
+ require 'm_cfdi/payment_methods'
14
+ require 'm_cfdi/payment_ways'
15
+ require 'm_cfdi/proof_types'
12
16
  require 'm_cfdi/taxes'
13
17
  require 'm_cfdi/invoice'
14
18
  require 'm_cfdi/xml'
@@ -0,0 +1,12 @@
1
+ module MCFDI
2
+ def self.fiscal_regime
3
+ [
4
+ 'ASALARIADOS',
5
+ 'HONORARIOS (SERVICIOS PROFESIONALES)',
6
+ 'ARRENDAMIENTO DE INMUEBLES',
7
+ 'ACTIVIDAD EMPRESARIAL',
8
+ 'INTERMEDIO',
9
+ 'RÉGIMEN DE INCORPORACIÓN FISCAL'
10
+ ]
11
+ end
12
+ end
@@ -293,8 +293,10 @@ module MCFDI
293
293
  # validate generated xml with the schema
294
294
  def validate_xml
295
295
  errors = []
296
- schema_file = "#{Rails.root}/public/sat/schemas/cfdv32.xsd"
297
- xsd = Nokogiri::XML::Schema(File.read(schema_file))
296
+ # schema_file = "#{Rails.root}/public/sat/schemas/cfdv32.xsd"
297
+ # xsd = Nokogiri::XML::Schema(File.read(schema_file))
298
+ schema_file = 'http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd'
299
+ xsd = Nokogiri::XML::Schema(open(schema_file))
298
300
  doc = Nokogiri::XML(to_xml)
299
301
 
300
302
  xsd.validate(doc).each do |error|
@@ -0,0 +1,16 @@
1
+ module MCFDI
2
+ def self.payment_methods
3
+ [
4
+ ['Efectivo', 'Efectivo'],
5
+ ['Cheque', 'Cheque'],
6
+ ['Transferencia electrónica de fondos', 'Transferencia electrónica de fondos'],
7
+ ['Tarjetas de crédito', 'Tarjetas de crédito'],
8
+ ['Monederos electrónicos', 'Monederos electrónicos'],
9
+ ['Dinero electrónico', 'Dinero electrónico'],
10
+ ['Vales de despensa', 'Vales de despensa'],
11
+ ['Tarjeta de Débito', 'Tarjeta de Débito'],
12
+ ['Tarjeta de Servicio', 'Tarjeta de Servicio'],
13
+ ['Otros', 'Otros']
14
+ ]
15
+ end
16
+ end
@@ -0,0 +1,8 @@
1
+ module MCFDI
2
+ def self.payment_ways
3
+ [
4
+ ['Pago en una sola exhibicion', 'Pago en una sola exhibicion'],
5
+ ['Pago en parcialidades', 'Pago en parcialidades']
6
+ ]
7
+ end
8
+ end
@@ -0,0 +1,9 @@
1
+ module MCFDI
2
+ def self.proof_types
3
+ [
4
+ ['Ingreso', 'ingreso'],
5
+ ['Egreso', 'egreso'],
6
+ ['Traslado', 'traslado']
7
+ ]
8
+ end
9
+ end
data/lib/m_cfdi/taxes.rb CHANGED
@@ -31,7 +31,7 @@ module MCFDI
31
31
  @transferred.count + @detained.count
32
32
  end
33
33
 
34
- def transferred=(tax)
34
+ def transferred=(data)
35
35
  if data.is_a? Array
36
36
  data.map do |c|
37
37
  c = Transferred.new(c) unless c.is_a? Tansferred
@@ -45,7 +45,7 @@ module MCFDI
45
45
  @transferred
46
46
  end
47
47
 
48
- def detained=(tax)
48
+ def detained=(data)
49
49
  if data.is_a? Array
50
50
  data.map do |c|
51
51
  c << Detained.new(c) unless c.is_a? Detained
@@ -1,3 +1,3 @@
1
1
  module MCFDI
2
- VERSION = '0.2.2'
2
+ VERSION = '0.3.0'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: m_cfdi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yaser Almasri
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-06-10 00:00:00.000000000 Z
11
+ date: 2016-06-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -120,8 +120,12 @@ files:
120
120
  - lib/m_cfdi/complement.rb
121
121
  - lib/m_cfdi/concept.rb
122
122
  - lib/m_cfdi/entity.rb
123
+ - lib/m_cfdi/fiscal_regime.rb
123
124
  - lib/m_cfdi/invoice.rb
124
125
  - lib/m_cfdi/key.rb
126
+ - lib/m_cfdi/payment_methods.rb
127
+ - lib/m_cfdi/payment_ways.rb
128
+ - lib/m_cfdi/proof_types.rb
125
129
  - lib/m_cfdi/taxes.rb
126
130
  - lib/m_cfdi/version.rb
127
131
  - lib/m_cfdi/xml.rb