Sha256: d426d222fd80f7128b4c5ef17794db5e24541f50c7b836d0b69a3eb798b424ce
Contents?: true
Size: 800 Bytes
Versions: 1
Compression:
Stored size: 800 Bytes
Contents
require "active_model" module AUB module Payroll class File::Header include ActiveModel::Model attr_accessor :company_name, :date validates :company_name, presence: true, length: { maximum: 40 } validates :date, presence: true # @param [String] company_name: # @param [Date] date: def initialize(*) super raise Errors::Invalid, errors.full_messages.to_sentence unless valid? end def to_s [ "BF", # marks the beginning of file formatted_company_name, formatted_date, ].join end private def formatted_company_name String(company_name).upcase.ljust 40 end def formatted_date date.strftime "%Y%m%d" 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/header.rb |