Class: Facturapi::Helpers::DscRcgGlobal
- Inherits:
-
Object
- Object
- Facturapi::Helpers::DscRcgGlobal
- Defined in:
- lib/facturapi/helpers/dsc_rcg_global.rb
Overview
Corresponde a la o las lineas de descuento / recargo global de una Boleta Electronica, etiqueta e informacion opcional, con un maximo de 20
Direct Known Subclasses
Instance Attribute Summary collapse
-
#glosa_dr ⇒ Object
Corresponde a una breve descripcion del descuento / recargo.
-
#ind_exe_dr ⇒ Object
Indicador de exencion de un descuento / recargo, para la Boleta Electronica.
-
#nro_lin_dr ⇒ Object
Indica el numero secuencial de linea de descuento / recargo de la Boleta Electronica, el cual puede ser desde la linea 1 hasta la linea 20.
-
#tpo_mov ⇒ Object
Indica el tipo de movimiento de la linea de descuento / recargo, informando que tipo de aplicacion tendran los posteriores valores en la linea, los tipos son: - D: Corresponde a una DESCUENTO - R: Corresponde a una RECARGO.
-
#tpo_valor ⇒ Object
Indica el tipo de valor de la linea de descuento / recargo.
-
#valor_dr ⇒ Object
Es el valor de descuento / recargo.
Instance Method Summary collapse
- #as_node ⇒ Object
- #descuento? ⇒ Boolean
-
#initialize(params = {}) ⇒ DscRcgGlobal
constructor
A new instance of DscRcgGlobal.
- #recargo? ⇒ Boolean
Constructor Details
#initialize(params = {}) ⇒ DscRcgGlobal
Returns a new instance of DscRcgGlobal.
40 41 42 43 44 45 46 47 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 40 def initialize(params = {}) @nro_lin_dr = params[:nro_lin_dr] @tpo_mov = params[:tpo_mov].to_s.upcase @glosa_dr = params[:glosa_dr] @tpo_valor = /^[\$\%]$/ =~ params[:tpo_valor].to_s ? params[:tpo_valor] : '$' @valor_dr = params[:valor_dr].to_i if params[:valor_dr] @ind_exe_dr = /^[0-2]$/ =~ params[:ind_exe_dr].to_s ? params[:ind_exe_dr] : 0 end |
Instance Attribute Details
#glosa_dr ⇒ Object
Corresponde a una breve descripcion del descuento / recargo
20 21 22 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 20 def glosa_dr @glosa_dr end |
#ind_exe_dr ⇒ Object
Indicador de exencion de un descuento / recargo, para la Boleta Electronica. Los indicadores son:
-
0: Descuento / Recargo se aplica a items afectos a IVA
-
1: Descuento / Recargo se aplica a items exentos
-
2: Descuento / Recargo se aplica a items facturables
38 39 40 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 38 def ind_exe_dr @ind_exe_dr end |
#nro_lin_dr ⇒ Object
Indica el numero secuencial de linea de descuento / recargo de la Boleta Electronica, el cual puede ser desde la linea 1 hasta la linea 20
10 11 12 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 10 def nro_lin_dr @nro_lin_dr end |
#tpo_mov ⇒ Object
Indica el tipo de movimiento de la linea de descuento / recargo, informando que tipo de aplicacion tendran los posteriores valores en la linea, los tipos son:
-
D: Corresponde a una DESCUENTO
-
R: Corresponde a una RECARGO
17 18 19 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 17 def tpo_mov @tpo_mov end |
#tpo_valor ⇒ Object
Indica el tipo de valor de la linea de descuento / recargo. El valor sera indicado en el campo ValorDR, los tipos son:
-
% : Corresponde a un porcentaje
-
$ : Corresponde a un valor en moneda nacional
26 27 28 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 26 def tpo_valor @tpo_valor end |
#valor_dr ⇒ Object
Es el valor de descuento / recargo. Su valor debe ser hasta 16 digitos y 2 decimales. Al ser un campo de monto, se debe indicar sin decimales y sin separadores de miles.
31 32 33 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 31 def valor_dr @valor_dr end |
Instance Method Details
#as_node ⇒ Object
49 50 51 52 53 54 55 56 57 58 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 49 def as_node create_node('DscRcgGlobal') do |dsc_rcg_global| dsc_rcg_global << create_node('NroLinDR') { |n| n << nro_lin_dr } dsc_rcg_global << create_node('TpoMov') { |n| n << tpo_mov } dsc_rcg_global << create_node('GlosaDR') { |n| n << glosa_dr } dsc_rcg_global << create_node('TpoValor') { |n| n << tpo_valor } dsc_rcg_global << create_node('ValorDR') { |n| n << valor_dr } dsc_rcg_global << create_node('IndExeDR') { |n| n << ind_exe_dr } end end |
#descuento? ⇒ Boolean
60 61 62 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 60 def descuento? tpo_mov == 'D' end |
#recargo? ⇒ Boolean
64 65 66 |
# File 'lib/facturapi/helpers/dsc_rcg_global.rb', line 64 def recargo? tpo_mov == 'R' end |