Sha256: 15019e7c0c91862299267676068ec82bc761f7fdfc307786dcabab416f55e982
Contents?: true
Size: 1.35 KB
Versions: 1
Compression:
Stored size: 1.35 KB
Contents
# frozen_string_literal: true class TransactionType include EnumField::DefineEnum attr_reader :code def initialize(code) @code = code.to_sym end def title(params = {}) I18n.t(code, params.merge(scope: [:account, :transaction_type, :title])) end def description(params = {}) I18n.t(code, params.merge(scope: [:account, :transaction_type, :description])) end def translate(transaction) options = { order_id: transaction.order.number, amount: transaction.amount, content: transaction.content } I18n.t(code, options.merge(scope: [:account, :transactions])) end def css_class # case @code # when :income then 'paid' # when :payment then 'paid' # when :full_revert then 'paid' # when :partial_revert then 'paid' # when :reserv then 'paid' # else 'paid' # end 'paid' end define_enum do |builder| # add in crm by hands builder.member :income, object: new('income') # creates after payment paid builder.member :payment, object: new('payment') # creates after full refund builder.member :full_revert, object: new('full_revert') # creates after partial refund builder.member :partial_revert, object: new('partial_revert') # exists while payment is not approved (technical status) builder.member :reserv, object: new('reserv') end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
translation_cms-0.1.5 | app/models/enums/transaction_type.rb |