From 495c5f6ac8d21a50dcb8771be050fe87d5926a52 Mon Sep 17 00:00:00 2001 From: Eric Davis Date: Thu, 10 Jul 2008 17:54:50 -0700 Subject: [PATCH] Added some better details on the deliverables based on if they are hourly or fixed. #1439 --- app/models/deliverable.rb | 14 +++++++++++++- app/views/deliverables/_deliverable.html.erb | 10 ++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/app/models/deliverable.rb b/app/models/deliverable.rb index ef5effc..4644ce3 100644 --- a/app/models/deliverable.rb +++ b/app/models/deliverable.rb @@ -134,11 +134,16 @@ class Deliverable < ActiveRecord::Base return self.issues.collect(&:time_entries).flatten.collect(&:hours).sum end - # Amount spent on members. + # Grouping of members and how much they spent def members_spent return MemberSpent.find_all_by_deliverable(self) end + # Amount spent on members. + def spent_by_members + return self.members_spent.collect(&:spent) + end + # Amount of the budget remaining def left return self.budget - self.spent @@ -177,6 +182,13 @@ class Deliverable < ActiveRecord::Base (user == user && user.allowed_to?(:manage_budget, project)) end + def fixed? + return self.class == FixedDeliverable + end + + def hourly? + return self.class == HourlyDeliverable + end private def use_issue_status_for_done_ratios? diff --git a/app/views/deliverables/_deliverable.html.erb b/app/views/deliverables/_deliverable.html.erb index 6068dce..c2af7a5 100644 --- a/app/views/deliverables/_deliverable.html.erb +++ b/app/views/deliverables/_deliverable.html.erb @@ -32,10 +32,16 @@ <%= row_with_double_data "Progress: ", number_to_percentage(deliverable.progress, :precision => 0), '' %> <% if allowed_management? %> - <%= row_with_double_data "Hours Estimated: ", number_with_precision(deliverable.total_hours, 0), '' %> + + <% if deliverable.hourly? %> + <%= row_with_double_data "Hours Estimated: ", number_with_precision(deliverable.total_hours, 0), '' %> + <% end %> + <% if deliverable.fixed? %> + <%= row_with_double_data "Fixed Amount: ", '', number_to_currency(deliverable.fixed_cost, :precision => 0) %> + <% end %> <% if deliverable.hours_used > 0 %> - <%= row_with_double_data "Hours Used: ", number_with_precision(deliverable.hours_used,0), number_to_currency(deliverable.spent, :precision => 0) %> + <%= row_with_double_data "Hours Used: ", number_with_precision(deliverable.hours_used,0), number_to_currency(deliverable.spent_by_members, :precision => 0) %>