Browse Source

Optimize Version#behind_schedule? by avoiding the call to completed_percent when due_date or start_date is nil (#40798).

Patch by Go MAEDA (@maeda).


git-svn-id: https://svn.redmine.org/redmine/trunk@22882 e93f8b46-1217-0410-a6f0-8f06a7374b81
pull/131/merge
Go MAEDA 2 weeks ago
parent
commit
b3308d126a
1 changed files with 5 additions and 8 deletions
  1. 5
    8
      app/models/version.rb

+ 5
- 8
app/models/version.rb View File

@@ -269,14 +269,11 @@ class Version < ApplicationRecord
end

def behind_schedule?
if completed_percent == 100
return false
elsif due_date && start_date
done_date = start_date + ((due_date - start_date+1)* completed_percent/100).floor
return done_date <= User.current.today
else
false # No issues so it's not late
end
# Blank due date, no issues, or 100% completed, so it's not late
return false if due_date.nil? || start_date.nil? || completed_percent == 100

done_date = start_date + ((due_date - start_date + 1) * completed_percent / 100).floor
done_date <= User.current.today
end

# Returns the completion percentage of this version based on the amount of open/closed issues

Loading…
Cancel
Save