From 5391262c3091524253368b3736767d62b72fd46a Mon Sep 17 00:00:00 2001 From: Braulio Bhavamitra Date: Sat, 14 May 2016 10:32:05 -0300 Subject: [PATCH] init: move jobs to app/jobs --- app/jobs/activities_counter_cache_job.rb | 14 ++++++++++++++ app/jobs/create_thumbnails_job.rb | 11 +++++++++++ lib/activities_counter_cache_job.rb | 14 -------------- lib/create_thumbnails_job.rb | 11 ----------- 4 files changed, 25 insertions(+), 25 deletions(-) create mode 100644 app/jobs/activities_counter_cache_job.rb create mode 100644 app/jobs/create_thumbnails_job.rb delete mode 100644 lib/activities_counter_cache_job.rb delete mode 100644 lib/create_thumbnails_job.rb diff --git a/app/jobs/activities_counter_cache_job.rb b/app/jobs/activities_counter_cache_job.rb new file mode 100644 index 0000000..09f3adf --- /dev/null +++ b/app/jobs/activities_counter_cache_job.rb @@ -0,0 +1,14 @@ +class ActivitiesCounterCacheJob + + def perform + person_activities_counts = ApplicationRecord.connection.execute("SELECT profiles.id, count(action_tracker.id) as count FROM profiles LEFT OUTER JOIN action_tracker ON profiles.id = action_tracker.user_id WHERE (action_tracker.created_at >= #{ApplicationRecord.connection.quote(ActionTracker::Record::RECENT_DELAY.days.ago.to_s(:db))}) AND ( (profiles.type = 'Person' ) ) GROUP BY profiles.id;") + organization_activities_counts = ApplicationRecord.connection.execute("SELECT profiles.id, count(action_tracker.id) as count FROM profiles LEFT OUTER JOIN action_tracker ON profiles.id = action_tracker.target_id WHERE (action_tracker.created_at >= #{ApplicationRecord.connection.quote(ActionTracker::Record::RECENT_DELAY.days.ago.to_s(:db))}) AND ( (profiles.type = 'Community' OR profiles.type = 'Enterprise' OR profiles.type = 'Organization' ) ) GROUP BY profiles.id;") + activities_counts = person_activities_counts.entries + organization_activities_counts.entries + activities_counts.each do |count| + update_sql = ApplicationRecord.__send__(:sanitize_sql, ["UPDATE profiles SET activities_count=? WHERE profiles.id=?;", count['count'].to_i, count['id'] ], '') + ApplicationRecord.connection.execute(update_sql) + end + Delayed::Job.enqueue(ActivitiesCounterCacheJob.new, {:priority => -3, :run_at => 1.day.from_now}) + end + +end diff --git a/app/jobs/create_thumbnails_job.rb b/app/jobs/create_thumbnails_job.rb new file mode 100644 index 0000000..2c3ef97 --- /dev/null +++ b/app/jobs/create_thumbnails_job.rb @@ -0,0 +1,11 @@ +class CreateThumbnailsJob < Struct.new(:class_name, :file_id) + def perform + return unless class_name.constantize.exists?(file_id) + file = class_name.constantize.find(file_id) + file.create_thumbnails + article = Article.where(:image_id => file_id).first + if article + article.touch + end + end +end diff --git a/lib/activities_counter_cache_job.rb b/lib/activities_counter_cache_job.rb deleted file mode 100644 index 09f3adf..0000000 --- a/lib/activities_counter_cache_job.rb +++ /dev/null @@ -1,14 +0,0 @@ -class ActivitiesCounterCacheJob - - def perform - person_activities_counts = ApplicationRecord.connection.execute("SELECT profiles.id, count(action_tracker.id) as count FROM profiles LEFT OUTER JOIN action_tracker ON profiles.id = action_tracker.user_id WHERE (action_tracker.created_at >= #{ApplicationRecord.connection.quote(ActionTracker::Record::RECENT_DELAY.days.ago.to_s(:db))}) AND ( (profiles.type = 'Person' ) ) GROUP BY profiles.id;") - organization_activities_counts = ApplicationRecord.connection.execute("SELECT profiles.id, count(action_tracker.id) as count FROM profiles LEFT OUTER JOIN action_tracker ON profiles.id = action_tracker.target_id WHERE (action_tracker.created_at >= #{ApplicationRecord.connection.quote(ActionTracker::Record::RECENT_DELAY.days.ago.to_s(:db))}) AND ( (profiles.type = 'Community' OR profiles.type = 'Enterprise' OR profiles.type = 'Organization' ) ) GROUP BY profiles.id;") - activities_counts = person_activities_counts.entries + organization_activities_counts.entries - activities_counts.each do |count| - update_sql = ApplicationRecord.__send__(:sanitize_sql, ["UPDATE profiles SET activities_count=? WHERE profiles.id=?;", count['count'].to_i, count['id'] ], '') - ApplicationRecord.connection.execute(update_sql) - end - Delayed::Job.enqueue(ActivitiesCounterCacheJob.new, {:priority => -3, :run_at => 1.day.from_now}) - end - -end diff --git a/lib/create_thumbnails_job.rb b/lib/create_thumbnails_job.rb deleted file mode 100644 index 2c3ef97..0000000 --- a/lib/create_thumbnails_job.rb +++ /dev/null @@ -1,11 +0,0 @@ -class CreateThumbnailsJob < Struct.new(:class_name, :file_id) - def perform - return unless class_name.constantize.exists?(file_id) - file = class_name.constantize.find(file_id) - file.create_thumbnails - article = Article.where(:image_id => file_id).first - if article - article.touch - end - end -end -- libgit2 0.21.2