Sha256: 726045389038fce6f66c1e60b1e1dc4afd102d03051a4e0b0520e7fb830553e0
Contents?: true
Size: 1.86 KB
Versions: 1
Compression:
Stored size: 1.86 KB
Contents
module AppCache class SystemParam < ActiveRecord::Base validates_presence_of :param_code after_save :auto_cache_update def auto_cache_update if AppCache.storage params = AppCache::SystemParam.all.to_json AppCache.storage.del "system_params" AppCache.storage.set("system_params", params) end end def self.cache_update params = AppCache::SystemParam.all.to_json AppCache.storage.del "system_params" AppCache.storage.set("system_params", params) end def self.get_cache params = JSON.load AppCache.storage.get "system_params" params end def self.get_params_cache json = self.get_cache h = {} json.each do |sp| h.store(sp['param_code'], sp['param_value']) end return h end def self.get_level_params_cache(level_id) json = self.get_cache h = {} json.each do |sp| if sp['param_level_id'].to_i == level_id h.store(sp['param_code'], sp['param_value']) end end return h end def self.get_params_db h = {} AppCache::SystemParam.all.each do |sp| h.store(sp.param_code, sp.param_value) end h end def self.get_level_params_db(level_id) h = {} AppCache::SystemParam.where(:param_level_id => level_id).each do |sp| h.store(sp.param_code, sp.param_value) end h end def self.get_params if AppCache.storage self.get_params_cache else self.get_params_db end end def self.get_level_params(level_id) if AppCache.storage self.get_level_params_cache(level_id) else self.get_level_params_db(level_id) end end def self.get_param_value(key) params = self.get_params param_val = params[key] || '' param_val end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
app_cache-0.1.2 | app/models/app_cache/system_param.rb |