Add License Id and Reset Version issues_count
This commit is contained in:
parent
d9f6750797
commit
1d72256098
|
@ -196,7 +196,7 @@ class IssuesController < ApplicationController
|
|||
|
||||
if params[:status_id].to_i == 5
|
||||
@issue.issue_times.update_all(end_time: Time.now)
|
||||
@issue.update_closed_issues_count_in_project!
|
||||
# @issue.update_closed_issues_count_in_project! #已经有after_update方法了,这里就不需要了
|
||||
end
|
||||
|
||||
@issue.create_journal_detail(change_files, issue_files, issue_file_ids, current_user&.id)
|
||||
|
|
|
@ -0,0 +1,17 @@
|
|||
class ResetVersionsCount < ActiveRecord::Migration[5.2]
|
||||
def change
|
||||
execute "ALTER TABLE licenses MODIFY COLUMN id INT AUTO_INCREMENT;"
|
||||
versions = Version.includes(:issues).select(:id, :closed_issues_count, :percent,:issues_count)
|
||||
versions.each do |v|
|
||||
Version.reset_counters v.id, :issues
|
||||
closed_issues = Issue.select(:id, :fixed_version_id, :status_id).where(fixed_version_id: v.id, status_id: 5).size
|
||||
unless v.closed_issues_count.to_i == closed_issues
|
||||
percent = v.issues_count.to_i <=0 ? 0.0 : (closed_issues.to_f / v.issues_count.to_i)
|
||||
v.closed_issues_count = closed_issues
|
||||
v.percent = percent
|
||||
v.save
|
||||
end
|
||||
puts v.id
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue