Makes Version#start_date return the minimum start_date of its issues.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@4574 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
Jean-Philippe Lang 2010-12-23 14:58:52 +00:00
parent 07fe46e9df
commit df9ea24136
3 changed files with 4 additions and 5 deletions

View File

@ -454,7 +454,7 @@ class Project < ActiveRecord::Base
[ [
issues.minimum('start_date'), issues.minimum('start_date'),
shared_versions.collect(&:effective_date), shared_versions.collect(&:effective_date),
shared_versions.collect {|v| v.fixed_issues.minimum('start_date')} shared_versions.collect(&:start_date)
].flatten.compact.min ].flatten.compact.min
end end

View File

@ -43,7 +43,7 @@ class Version < ActiveRecord::Base
end end
def start_date def start_date
effective_date @start_date ||= fixed_issues.minimum('start_date')
end end
def due_date def due_date
@ -77,8 +77,7 @@ class Version < ActiveRecord::Base
def behind_schedule? def behind_schedule?
if completed_pourcent == 100 if completed_pourcent == 100
return false return false
elsif due_date && fixed_issues.present? && fixed_issues.minimum('start_date') # TODO: should use #start_date but that method is wrong... elsif due_date && start_date
start_date = fixed_issues.minimum('start_date')
done_date = start_date + ((due_date - start_date+1)* completed_pourcent/100).floor done_date = start_date + ((due_date - start_date+1)* completed_pourcent/100).floor
return done_date <= Date.today return done_date <= Date.today
else else

View File

@ -319,7 +319,7 @@ module Redmine
options[:zoom] ||= 1 options[:zoom] ||= 1
options[:g_width] ||= (self.date_to - self.date_from + 1) * options[:zoom] options[:g_width] ||= (self.date_to - self.date_from + 1) * options[:zoom]
coords = coordinates(version.fixed_issues.minimum('start_date'), version.due_date, version.completed_pourcent, options[:zoom]) coords = coordinates(version.start_date, version.due_date, version.completed_pourcent, options[:zoom])
label = "#{h version } #{h version.completed_pourcent.to_i.to_s}%" label = "#{h version } #{h version.completed_pourcent.to_i.to_s}%"
label = h("#{version.project} -") + label unless @project && @project == version.project label = h("#{version.project} -") + label unless @project && @project == version.project