Sha256: ca69f471a09a4424b8db2a97adfa26909b812ca1be32584dc86d91ce55d8e5c9
Contents?: true
Size: 1.94 KB
Versions: 8
Compression:
Stored size: 1.94 KB
Contents
require 'erb' module TaxJp class Utils class << self def gem_dir File.expand_path('../../..', __FILE__) end def data_dir File.join(gem_dir, 'data') end def load_yaml(filename) YAML.load(File.read(File.join(data_dir, filename))) end def load_file(filename) File.read(File.join(data_dir, filename)) end def render(filename) src = File.join(gem_dir, 'templates', filename + '.erb') dest = File.join(gem_dir, filename) FileUtils.mkdir_p(File.dirname(dest)) File.write(dest, ERB.new(File.read(src), 0, '-').result) end def with_database(db_path) db = SQLite3::Database.new(db_path) begin yield db ensure db.close end end def convert_to_date(value) ret = nil if value.is_a?(Date) ret = value.strftime('%Y-%m-%d') elsif value.is_a?(String) ret = value else raise TypeError.new(value.class) end ret end def convert_to_zip_code(value) ret = nil if value.is_a?(String) ret = value.sub('-', '') else raise TypeError.new(value.class) end ret end def filename_to_date(filename) title, valid_from, valid_until = File.basename(filename).split('.').first.split('-') valid_from = Date.strptime(valid_from, '%Y%m%d') valid_until = Date.strptime(valid_until, '%Y%m%d') [valid_from.strftime('%Y-%m-%d'), valid_until.strftime('%Y-%m-%d')] end def normalize_amount(amount, options = {}) ret = amount.to_s if ret == '-' ret = 2147483647 else ret = ret.gsub(',', '') if ret.index('.') ret = ret.to_f else ret = ret.to_i end end ret end end end end
Version data entries
8 entries across 8 versions & 1 rubygems