diff options
| -rw-r--r-- | lib/tasks/stats.rake | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/lib/tasks/stats.rake b/lib/tasks/stats.rake new file mode 100644 index 000000000..1d90ac6ae --- /dev/null +++ b/lib/tasks/stats.rake @@ -0,0 +1,36 @@ + +namespace :stats do + desc "send stats" + task :send => :environment do + puts "Send stats" + + File.open('/tmp/stats_users.csv','w') do |s| + User.order(:id).each { |u| s.puts "#{u.id},#{u.organisation.name},#{u.name},#{u.email},#{u.sign_in_count},#{u.last_sign_in_at}"} + end + + File.open('/tmp/stats_organisations.csv','w') do |s| + Organisation.all.each { |o| s.puts "#{o.name},#{o.users.inject(0){ |memo, u| memo = memo + u.sign_in_count}},#{o.users.count}"} + end + + File.open('/tmp/stats_counts.csv','w') do |s| + [Organisation, User, Referential, Export, Import, FileValidation].each do |class_for_stat| + stats = [] + stats << class_for_stat.all.select {|o| o.created_at.month==12 && o.created_at.year==2013}.count + 1.upto(12) do |i| + stats << class_for_stat.all.select {|o| o.created_at.month==i && o.created_at.year==2014}.count + end + s.puts stats.join(",") + end + end + + # m = ActionMailer::Base.mail(:to => "mflorisson@cityway.fr", + # :from => "jdleca@cityway.fr", + # :subject=>"Chouette stats", + # :content_type=>"multipart/mixed") + # m.attachments['stats.csv'] = File.read("/tmp/stats.csv") + # m.deliver + + puts "Send stats complete" + end +end + |
