diff options
| author | George Andrinopoulos <geoandri@gmail.com> | 2017-10-29 22:58:49 +0200 |
|---|---|---|
| committer | George Andrinopoulos <geoandri@gmail.com> | 2017-11-11 16:47:39 +0200 |
| commit | f39fe4d8db2d7fc6443c68aefff60f3eafcdf602 (patch) | |
| tree | 632b6308200d934dab60d3c812473207bd3067f2 /app | |
| parent | d180affa210bd6e5474746bcfed006cee9d3730e (diff) | |
| download | gitlab-ce-f39fe4d8db2d7fc6443c68aefff60f3eafcdf602.tar.gz | |
Add total time spent to milestones
Diffstat (limited to 'app')
| -rw-r--r-- | app/models/global_milestone.rb | 8 | ||||
| -rw-r--r-- | app/models/milestone.rb | 8 | ||||
| -rw-r--r-- | app/views/shared/milestones/_sidebar.html.haml | 10 |
3 files changed, 26 insertions, 0 deletions
diff --git a/app/models/global_milestone.rb b/app/models/global_milestone.rb index c0864769314..af4780f78d0 100644 --- a/app/models/global_milestone.rb +++ b/app/models/global_milestone.rb @@ -152,4 +152,12 @@ class GlobalMilestone @milestones.first.start_date end end + + def total_time_spent + issues.joins(:timelogs).sum(:time_spent) + merge_requests.joins(:timelogs).sum(:time_spent) + end + + def human_total_time_spent + Gitlab::TimeTrackingFormatter.output(total_time_spent) || 0 + end end diff --git a/app/models/milestone.rb b/app/models/milestone.rb index 47e6b785c39..5e174a15c91 100644 --- a/app/models/milestone.rb +++ b/app/models/milestone.rb @@ -213,6 +213,14 @@ class Milestone < ActiveRecord::Base project_id.present? end + def total_time_spent + issues.joins(:timelogs).sum(:time_spent) + merge_requests.joins(:timelogs).sum(:time_spent) + end + + def human_total_time_spent + Gitlab::TimeTrackingFormatter.output(total_time_spent) || 0 + end + private # Milestone titles must be unique across project milestones and group milestones diff --git a/app/views/shared/milestones/_sidebar.html.haml b/app/views/shared/milestones/_sidebar.html.haml index f03e0ab154c..6267151f460 100644 --- a/app/views/shared/milestones/_sidebar.html.haml +++ b/app/views/shared/milestones/_sidebar.html.haml @@ -85,6 +85,16 @@ Closed: = milestone.issues_visible_to_user(current_user).closed.count + .block.time_spent + .sidebar-collapsed-icon + %strong + = custom_icon('icon_clock_o') + %span= milestone.human_total_time_spent + .title.hide-collapsed + Total time spent + .value.hide-collapsed + = milestone.human_total_time_spent + .block.merge-requests .sidebar-collapsed-icon %strong |
