From: Go MAEDA Date: Sun, 6 Dec 2020 01:36:39 +0000 (+0000) Subject: Use sum { ... } instead of map { ... }.sum (#34399). X-Git-Tag: 4.2.0~238 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=f43b3685ffb0f7e666e44e3338a8c13b689aa4e5;p=redmine.git Use sum { ... } instead of map { ... }.sum (#34399). git-svn-id: http://svn.redmine.org/redmine/trunk@20581 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/app/models/issue.rb b/app/models/issue.rb index bda93ddc8..6132f71e6 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -1743,16 +1743,16 @@ class Issue < ActiveRecord::Base if children.any? child_with_total_estimated_hours = children.select {|c| c.total_estimated_hours.to_f > 0.0} if child_with_total_estimated_hours.any? - average = child_with_total_estimated_hours.map(&:total_estimated_hours).sum.to_d / child_with_total_estimated_hours.count + average = child_with_total_estimated_hours.sum(&:total_estimated_hours).to_d / child_with_total_estimated_hours.count else average = 1.0.to_d end - done = children.map do |c| + done = children.sum do |c| estimated = (c.total_estimated_hours || 0.0).to_d estimated = average unless estimated > 0.0 ratio = c.closed? ? 100 : (c.done_ratio || 0) estimated * ratio - end.sum + end progress = done / (average * children.count) p.done_ratio = progress.floor end diff --git a/app/models/project.rb b/app/models/project.rb index 9ffcd1421..44adeea58 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -677,12 +677,12 @@ class Project < ActiveRecord::Base # progress on it's versions. def completed_percent(options={:include_subprojects => false}) if options.delete(:include_subprojects) - total = self_and_descendants.collect(&:completed_percent).sum + total = self_and_descendants.sum(&:completed_percent) total / self_and_descendants.count else if versions.count > 0 - total = versions.collect(&:completed_percent).sum + total = versions.sum(&:completed_percent) total / versions.count else