lib/litexbrl/utils.rb in litexbrl-0.0.3 vs lib/litexbrl/utils.rb in litexbrl-0.1.0

- old
+ new

@@ -1,8 +1,12 @@ module LiteXBRL module Utils + SECURITIES_CODE = /([\d|0-9]{4})/ + CONSOLIDATED = "Consolidated" + NON_CONSOLIDATED = "NonConsolidated" + def hash_with_default(default, hash) hash.default = default hash end @@ -10,11 +14,11 @@ # 証券コードを取得します # def to_securities_code(elm_code) raise StandardError.new("証券コードを取得できません。") unless elm_code - elm_code.content.slice(0, 4).tr("0-9", "0-9") + SECURITIES_CODE =~ elm_code.content && $1.tr("0-9", "0-9") end # # 決算年を取得します # @@ -32,10 +36,24 @@ elm_end.content.split('-')[1].to_i end # + # 連結・非連結を取得します + # + def to_consolidation(consolidation) + case consolidation + when CONSOLIDATED + 1 + when NON_CONSOLIDATED + 0 + else + raise StandardError.new("連結・非連結を取得できません。") + end + end + + # # 単位を100万円にします # def to_mill(val) val.to_i / (1000 * 1000) if present? val end @@ -51,10 +69,10 @@ def percent_to_f(val) (to_f(val) / 100).round(3) if present? val end def present?(val) - val && val != "" + !!(val && val != "") end end end \ No newline at end of file