на главнуюВсе эхи RU.RAILS
войти ?

Redmine Reports

От Viktor V. Kudlak (2:5030/1374) к All

В ответ на Заголовок предыдущего сообщения в треде (Имя Автора)


Hello everybody.

Появилась у меня задача - сделать по выполненной работе. Первое что пришло в голову - RakeTask. Просто и удобно:

У кого стоит такая же задача - пользуйтесь на здоровье. ссылка на оригинал обязательна: http://src.writex.ru

1. Добавляем необходимые записи в Gemfile.local:

-+-
redmine # cat Gemfile.local
gem 'awesome_print'
-+-

2. Пишем скрипт:
-+-
redmine # cat lib/tasks/report.rake
#
# WriteX LLC by Mega
#
require 'ap'
namespace :report do
task :mega => :environment do
report={}
total=0.0
price=850.0
TimeEntry.where(user_id: 1004).where('spent_on >= ? AND spent_on <= ?', DateTime.now.beginning_of_month, DateTime.now.end_of_month).each do |t|
id=t.issue_id
report[id] = { issue: id, hours: 0.0, comment: t.issue.subject, price: 0.0 } unless report.has_key?(id)
report[id][:hours] = report[id][:hours] + t.hours
report[id][:price] = report[id][:hours] * price
total = total + t.hours
end
report.each do |k,v|
printf("%d|%s|%.02f|%.02f\n", v[:issue], v[:comment], v[:hours], v[:price])
end
# ap report
ap total
ap total * price
end
end
-+-

3. Вызываем скрипт отчета:

-+-
$ export RAILS_ENV=production
$ bundle exec rake report:mega
-+-

Viktor

--- GoldED+/LNX 1.1.5-b20110818
* Origin: ----> www.WriteX.ru <---- (2:5030/1374)

Ответы на это письмо:

From: Username
Заголовок следующего сообщения в треде может быть длинным и его придется перенести на новую строку

From: Username
Или коротким

FGHI-url этого письма: area://RU.RAILS?msgid=2:5030/1374+5b5feed8