Class: TrueandcoAnalytics::Site::UserC::CreateOrUpdateUserIfExist
- Inherits:
-
Object
- Object
- TrueandcoAnalytics::Site::UserC::CreateOrUpdateUserIfExist
- Defined in:
- lib/trueandco_analytics/site/commands/user_c/create_or_update_user_if_exist.rb
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(user_agent, timestamp_end) ⇒ CreateOrUpdateUserIfExist
constructor
A new instance of CreateOrUpdateUserIfExist.
Constructor Details
#initialize(user_agent, timestamp_end) ⇒ CreateOrUpdateUserIfExist
Returns a new instance of CreateOrUpdateUserIfExist.
4 5 6 7 8 9 10 11 |
# File 'lib/trueandco_analytics/site/commands/user_c/create_or_update_user_if_exist.rb', line 4 def initialize(user_agent, ) if user_agent.nil? || user_agent.empty? || .nil? raise ArgumentError.new("#{self.to_s} user_agent=#{user_agent} timestamp_end=#{}") end @user_agent = user_agent['user_agent'] @timestamp_end = @user_id = user_agent['user_id'] end |
Instance Method Details
#execute ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/trueandco_analytics/site/commands/user_c/create_or_update_user_if_exist.rb', line 13 def execute user = nil user = ::TrueandcoAnalytics::MetricUser.find_by(user_id: user_id) if user_id user = ::TrueandcoAnalytics::MetricUser.find_by(hash_id: hash_id) if user.nil? user = if user.nil? ::TrueandcoAnalytics::MetricUser.create(user_id: user_id || 0, datetime_create: datetime_end, last_active_datetime: datetime_end, hash_id: hash_id) else user.update_attributes(last_active_datetime: datetime_end, user_id: @user_id) user end user end |