Browse Source

同步version的issues数量

tags/v1
sylor_huang@126.com 6 years ago
parent
commit
df9bdf50b3
1 changed files with 24 additions and 0 deletions
  1. +24
    -0
      lib/tasks/sync_verion_issues.rake

+ 24
- 0
lib/tasks/sync_verion_issues.rake View File

@@ -0,0 +1,24 @@
# 执行示例 bundle exec rake sync_version_issues:update_issues
# 线上环境执行示例 RAILS_ENV=production bundle exec rake sync_version_issues:update_issues

namespace :sync_version_issues do
desc "update version issues_count"

task update_issues: :environment do
versions = Version.all
puts "____________sync start________________"

Version.transaction do
versions.find_each do |q|
issues = Issue.select(:id, :fixed_version_id,:status_id).where(fixed_version_id: q.id)
issues_count = issues.size
closed_issues_count = issues.where(status_id: 5).size
percent = issues_count == 0 ? 0.0 : (closed_issues_count.to_f / issues_count)
q.update_attributes(issues_count: issues_count, closed_issues_count: closed_issues_count, percent: percent)
puts "____________sync success________________"
end
end
puts "____________sync end________________"
end

end

Loading…
Cancel
Save