From 77f80308f07fdef8432ee908cf60ba56fa7f01be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Espino?= Date: Tue, 5 Nov 2013 12:45:44 +0100 Subject: [PATCH] Reviewed cases for US on tasks graph --- greenmine/projects/milestones/api.py | 8 +++++--- greenmine/projects/milestones/models.py | 3 ++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/greenmine/projects/milestones/api.py b/greenmine/projects/milestones/api.py index 829b9345..b8460afd 100644 --- a/greenmine/projects/milestones/api.py +++ b/greenmine/projects/milestones/api.py @@ -59,13 +59,15 @@ class MilestoneViewSet(NotificationSenderMixin, ModelCrudViewSet): 'days': [] } current_date = milestone.estimated_start - optimal_points = sum(total_points.values()) - optimal_points_per_day = sum(total_points.values()) / (milestone.estimated_finish - milestone.estimated_start).days + sumTotalPoints = sum(total_points.values()) + optimal_points = sumTotalPoints + milestone_days = (milestone.estimated_finish - milestone.estimated_start).days + optimal_points_per_day = sumTotalPoints / milestone_days if milestone_days else 0 while current_date <= milestone.estimated_finish: milestone_stats['days'].append({ 'day': current_date, 'name': current_date.day, - 'open_points': sum(total_points.values()) - sum(milestone.closed_points_by_date(current_date).values()), + 'open_points': sumTotalPoints - sum(milestone.closed_points_by_date(current_date).values()), 'optimal_points': optimal_points, }) current_date = current_date + datetime.timedelta(days=1) diff --git a/greenmine/projects/milestones/models.py b/greenmine/projects/milestones/models.py index 54eb1e12..d8bccb31 100644 --- a/greenmine/projects/milestones/models.py +++ b/greenmine/projects/milestones/models.py @@ -12,6 +12,7 @@ from greenmine.projects.userstories.models import UserStory import reversion import itertools import copy +import datetime class Milestone(WatchedMixin): @@ -152,7 +153,7 @@ class Milestone(WatchedMixin): } def closed_points_by_date(self, date): - return self._get_user_stories_points([us for us in self.user_stories.filter(finish_date__lte=date) + return self._get_user_stories_points([us for us in self.user_stories.filter(finish_date__lt=date + datetime.timedelta(days=1)) if us.is_closed])