[#4604] Move method to model

This commit is contained in:
Eric Davis
2010-10-06 17:10:37 -07:00
parent 43a8fe27dc
commit 41b1a3cd54
2 changed files with 15 additions and 13 deletions

View File

@@ -1,3 +1,5 @@
require 'lockfile'
class Rate < ActiveRecord::Base
unloadable
class InvalidParameterException < Exception; end
@@ -67,6 +69,18 @@ class Rate < ActiveRecord::Base
return nil if rate.nil?
return rate.amount
end
def self.update_all_time_entires_with_missing_cost
Lockfile('update_cost_cache', :retries => 0) do
TimeEntry.all(:conditions => {:cost => nil}).each do |time_entry|
begin
time_entry.save_cached_cost
rescue Rate::InvalidParameterException => ex
puts "Error saving #{time_entry.id}: #{ex.message}"
end
end
end
end
private
def self.for_user_project_and_date(user, project, date)

View File

@@ -1,20 +1,8 @@
require 'lockfile'
namespace :rate_plugin do
namespace :cache do
desc "Update Time Entry cost caches"
task :update_cost_cache => :environment do
Lockfile('update_cost_cache', :retries => 0) do
TimeEntry.all(:conditions => {:cost => nil}).each do |time_entry|
begin
time_entry.save_cached_cost
rescue Rate::InvalidParameterException => ex
puts "Error saving #{time_entry.id}: #{ex.message}"
end
end
end
Rate.update_all_time_entires_with_missing_cost
end
end
end