Sha256: cd610dc765c557c69845f56d9da5b1dbeab1620d723e913903c7e4af709bc029
Contents?: true
Size: 763 Bytes
Versions: 1
Compression:
Stored size: 763 Bytes
Contents
require "active_model" module AUB module Payroll class File::Row include ActiveModel::Model attr_accessor :account_number, :amount validates :account_number, presence: true, length: { is: 12 } validates :amount, numericality: { greater_than: 0, less_than_or_equal_to: 99_999_999_999.99 } # @param [String] account_number: # @param [BigDecimal] amount: def initialize(*) super raise Errors::Invalid, errors.full_messages.to_sentence unless valid? end def to_s [ "01", account_number, formatted_amount, "0" * 22 ].join end private def formatted_amount "%014.2f" % amount end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
aub-payroll-0.1.0 | lib/aub/payroll/file/row.rb |