diff --git a/db/migrate/20200521090205_add_closed_issues_count_to_projects.rb b/db/migrate/20200521090205_add_closed_issues_count_to_projects.rb new file mode 100644 index 000000000..0dba48e0d --- /dev/null +++ b/db/migrate/20200521090205_add_closed_issues_count_to_projects.rb @@ -0,0 +1,11 @@ +class AddClosedIssuesCountToProjects < ActiveRecord::Migration[5.2] + def change + add_column :projects, :closed_issues_count, :integer, default: 0 + + projects = Project.joins(:issues).where('status_id = 5').select("projects.id, count('issues.id') as closed_issues_count").group("projects.id") + projects.each do |pro| + project = Project.find pro.id + project.update_column(:closed_issues_count, pro.closed_issues_count) if project.closed_issues_count == 0 + end + end +end