Skip to content

Commit 240051d

Browse files
fkdkentRedmine Patch Meetup
authored andcommitted
Implement
1 parent 159aab6 commit 240051d

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

app/models/issue.rb

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -727,6 +727,8 @@ def workflow_rule_by_attribute(user=nil)
727727
def done_ratio
728728
if Issue.use_status_for_done_ratio? && status && status.default_done_ratio
729729
status.default_done_ratio
730+
elsif Issue.use_issue_field_and_closed_status_for_done_ratio? && status && status.is_closed?
731+
100
730732
else
731733
read_attribute(:done_ratio)
732734
end
@@ -740,6 +742,10 @@ def self.use_field_for_done_ratio?
740742
Setting.issue_done_ratio == 'issue_field'
741743
end
742744

745+
def self.use_issue_field_and_closed_status_for_done_ratio?
746+
Setting.issue_done_ratio == 'issue_field_and_closed_status'
747+
end
748+
743749
def validate_issue
744750
if due_date && start_date && (start_date_changed? || due_date_changed?) && due_date < start_date
745751
errors.add :due_date, :greater_than_start_date
@@ -852,6 +858,8 @@ def validate_custom_field_values
852858
def update_done_ratio_from_issue_status
853859
if Issue.use_status_for_done_ratio? && status && status.default_done_ratio
854860
self.done_ratio = status.default_done_ratio
861+
elsif Issue.use_issue_field_and_closed_status_for_done_ratio? && status && status.is_closed?
862+
self.done_ratio = 100
855863
end
856864
end
857865

0 commit comments

Comments
 (0)