improvements and fixes for work items and movement of work items to other tasks

This commit is contained in:
Helmut Merz 2012-07-31 17:54:54 +02:00
parent 5904b3a9e8
commit e802a8bc6e

View file

@ -143,12 +143,12 @@ workItemTypes = Jeep((
WorkItemType('work', u'Unit of Work'),
WorkItemType('scheduled', u'Scheduled Event',
actions=('plan', 'accept', 'finish', 'cancel',
'modify', 'delegate', 'close', 'reopen'),
'modify', 'delegate', 'move', 'close', 'reopen'),
fields =('start-end', 'duration-effort',),
color ='#aaaaff'),
WorkItemType('deadline', u'Deadline',
actions=('plan', 'accept', 'finish', 'cancel',
'modify', 'delegate', 'close', 'reopen'),
'modify', 'delegate', 'move', 'close', 'reopen'),
fields =('deadline',),
color ='#ffffaa')
))
@ -267,17 +267,18 @@ class WorkItem(Stateful, Track):
return new
def move(self, userName, **kw):
moved = self.createNew('move', userName, **kw)
xkw = dict(kw)
for k in ('deadline', 'start', 'end'):
xkw.pop(k, None) # do not change on source item
moved = self.createNew('move', userName, **xkw)
moved.userName = self.userName
moved.state = 'moved'
#moved.reindex('state')
moved.reindex()
task = kw.pop('task', None)
new = moved.createNew(None, userName, taskId=task, runId=0, **kw)
new.userName = self.userName
new.data['source'] = moved.name
new.state = self.state
#new.reindex('state')
new.reindex()
moved.data['target'] = new.name
if self.state in ('planned', 'accepted', 'delegated', 'moved', 'done'):