nubefact 0.0.6 → 0.0.7
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/Gemfile.lock +1 -1
- data/lib/nube_fact/invoice.rb +16 -2
- data/lib/nube_fact/version.rb +1 -1
- data/lib/util/utils.rb +5 -3
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 299e7bc3ede164bbb9b4f64059f0c4486a4d7b5e
|
4
|
+
data.tar.gz: d2847b287077e19404faad8e6b1519f67278248e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 55b0df912de68c62719d59b532c16194a83e8f5ba2f9d3f2586eea706cc3a456fb88356141682753ed383cb77f95f0c54323b9b378e5902ae3747521f6b5f4ab
|
7
|
+
data.tar.gz: d41eb06a7092a33f0f239109354e78de8f3f0b944b9be04912e95027f35d526f2a0473627c20d8781d30f1289bbc1400ca524d5c4d6e238aab69f7eeb433a45e
|
data/Gemfile.lock
CHANGED
data/lib/nube_fact/invoice.rb
CHANGED
@@ -111,9 +111,10 @@ class NubeFact::Invoice
|
|
111
111
|
tipo_de_comprobante: 1,
|
112
112
|
serie: 'F',
|
113
113
|
sunat_transaction: 1,
|
114
|
-
fecha_de_emision: -> {
|
114
|
+
fecha_de_emision: ->(_i) { Date.today },
|
115
115
|
porcentaje_de_igv: 18,
|
116
|
-
moneda: 1
|
116
|
+
moneda: 1,
|
117
|
+
tipo_de_cambio: ->(invoice) { invoice.set_tipo_de_cambio }
|
117
118
|
}
|
118
119
|
|
119
120
|
def initialize(data_hash)
|
@@ -147,4 +148,17 @@ class NubeFact::Invoice
|
|
147
148
|
|
148
149
|
end
|
149
150
|
|
151
|
+
def set_tipo_de_cambio
|
152
|
+
return "" unless moneda == 2
|
153
|
+
NubeFact::Sunat.dollar_rate Date.parse(fecha_de_emision)
|
154
|
+
end
|
155
|
+
|
156
|
+
|
157
|
+
def fecha_de_emision
|
158
|
+
if [Date, Time, DateTime].include? @fecha_de_emision.class
|
159
|
+
return @fecha_de_emision.strftime(NubeFact::DATE_FORMAT)
|
160
|
+
end
|
161
|
+
@fecha_de_emision
|
162
|
+
end
|
163
|
+
|
150
164
|
end
|
data/lib/nube_fact/version.rb
CHANGED
data/lib/util/utils.rb
CHANGED
@@ -25,14 +25,14 @@ module NubeFact::Utils
|
|
25
25
|
private
|
26
26
|
def set_default_data
|
27
27
|
self.class::DEFAULT_DATA.each do |field, value|
|
28
|
-
|
28
|
+
next if send(field)
|
29
|
+
|
30
|
+
value = value.call(self) if value.kind_of? Proc
|
29
31
|
send "#{field}=", value
|
30
32
|
end
|
31
33
|
end
|
32
34
|
|
33
35
|
def load_data_from_param(data_hash)
|
34
|
-
set_default_data
|
35
|
-
|
36
36
|
data_hash.each do|key, value|
|
37
37
|
if self.class.const_defined?('AUTO_CALCULATED_FIELDS') \
|
38
38
|
&& self.class::AUTO_CALCULATED_FIELDS.include?(key)
|
@@ -45,5 +45,7 @@ module NubeFact::Utils
|
|
45
45
|
raise NubeFact::InvalidField.new "Invalid Field: #{key}"
|
46
46
|
end
|
47
47
|
end
|
48
|
+
|
49
|
+
set_default_data
|
48
50
|
end
|
49
51
|
end
|