Module: SpreeAvataxOfficial::TaxAdjustmentLabelHelper

Includes:
ActionView::Helpers::NumberHelper
Included in:
CreateTaxAdjustmentsService
Defined in:
app/helpers/spree_avatax_official/tax_adjustment_label_helper.rb

Constant Summary collapse

STRIP_INSIGNIFICANT_ZEROS =
true
PRECISION_OF_PERCENT_VALUE =
10

Instance Method Summary collapse

Instance Method Details

#format_adjustment_label(adjustment_default_label, rate, order) ⇒ Object



22
23
24
25
26
27
28
29
30
# File 'app/helpers/spree_avatax_official/tax_adjustment_label_helper.rb', line 22

def format_adjustment_label(adjustment_default_label, rate, order)
  rate_in_percents = number_to_percentage(
    rate * 100.0,
    precision:                 PRECISION_OF_PERCENT_VALUE,
    strip_insignificant_zeros: STRIP_INSIGNIFICANT_ZEROS
  )
  show_rate = order.avalara_integration&.preferred_show_rate_in_label || false
  show_rate ? "#{adjustment_default_label} (#{rate_in_percents})" : adjustment_default_label
end

#included_label(item) ⇒ Object



18
19
20
# File 'app/helpers/spree_avatax_official/tax_adjustment_label_helper.rb', line 18

def included_label(item)
  item.included_in_price ? 'Included ' : ''
end

#tax_adjustment_label(item, rate) ⇒ Object



8
9
10
11
12
13
14
15
16
# File 'app/helpers/spree_avatax_official/tax_adjustment_label_helper.rb', line 8

def tax_adjustment_label(item, rate)
  item_class = item.class.name.demodulize.underscore

  format_adjustment_label(
    ::Spree.t("spree_avatax_official.create_tax_adjustments.#{item_class}_tax_adjustment_default_label", included_label: included_label(item)),
    rate,
    item.order
  )
end