Fix bug #831: Assure us order change is registered in the history independently

remotes/origin/enhancement/email-actions
Jesús Espino 2014-09-04 19:57:50 +02:00
parent eabe778b24
commit 99756050db
2 changed files with 11 additions and 0 deletions

View File

@ -85,6 +85,7 @@ class UserStoryViewSet(OCCResourceMixin, HistoryResourceMixin, WatchedResourceMi
project = Project.objects.get(id=data["project_id"])
self.check_permissions(request, 'bulk_update_order', project)
services.update_userstories_order_in_bulk(data["bulk_stories"])
services.snapshot_userstories_in_bulk(data["bulk_stories"], request.user)
return response.NoContent()

View File

@ -17,6 +17,7 @@
from django.utils import timezone
from taiga.base.utils import db, text
from taiga.projects.history.services import take_snapshot
from . import models
@ -61,6 +62,15 @@ def update_userstories_order_in_bulk(bulk_data):
new_order_values.append({"order": us_data['order']})
db.update_in_bulk_with_ids(user_story_ids, new_order_values, model=models.UserStory)
def snapshot_userstories_in_bulk(bulk_data, user):
user_story_ids = []
for us_data in bulk_data:
try:
us = models.UserStory.objects.get(pk=us_data['us_id'])
take_snapshot(us, user=user)
except models.UserStory.DoesNotExist:
pass
def calculate_userstory_is_closed(user_story):
if user_story.status is None: