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 +4 -4
- data/README.md +11 -1
- data/lib/m_cfdi.rb +4 -0
- data/lib/m_cfdi/fiscal_regime.rb +12 -0
- data/lib/m_cfdi/invoice.rb +4 -2
- data/lib/m_cfdi/payment_methods.rb +16 -0
- data/lib/m_cfdi/payment_ways.rb +8 -0
- data/lib/m_cfdi/proof_types.rb +9 -0
- data/lib/m_cfdi/taxes.rb +2 -2
- data/lib/m_cfdi/version.rb +1 -1
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e22828a2586f37f00df784e0e26c59b1ce0058cb
|
4
|
+
data.tar.gz: f916a0e4ecfe93dd982f24390ff628ec5d07abe6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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.
|
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'
|
data/lib/m_cfdi/invoice.rb
CHANGED
@@ -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
|
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=(
|
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=(
|
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
|
data/lib/m_cfdi/version.rb
CHANGED
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.
|
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-
|
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
|