fixes for 'start' and 'move' transitions

This commit is contained in:
Helmut Merz 2015-05-19 07:10:10 +02:00
parent a83f80a1f9
commit 12a5b339ad

View file

@ -297,12 +297,12 @@ class WorkItem(Stateful, Track):
# stop any running work item of user: # stop any running work item of user:
# TODO: check: party query OK? # TODO: check: party query OK?
if (userName == self.userName and if (userName == self.userName and
self.workItemType == 'work' and self.workItemType in (None, 'work') and
self.state != 'running'): self.state != 'running'):
running = getParent(self).query( running = getParent(self).query(
party=userName, state='running') party=userName, state='running')
for wi in running: for wi in running:
if wi.workItemType == 'work': if wi.workItemType in 'work':
wi.doAction('work', userName, wi.doAction('work', userName,
end=(kw.get('start') or getTimeStamp())) end=(kw.get('start') or getTimeStamp()))
# standard creation of new work item: # standard creation of new work item:
@ -328,6 +328,9 @@ class WorkItem(Stateful, Track):
new = moved.createNew(None, userName, taskId=task, runId=0, **kw) new = moved.createNew(None, userName, taskId=task, runId=0, **kw)
new.userName = self.userName new.userName = self.userName
new.data['source'] = moved.name new.data['source'] = moved.name
if self.state == 'new':
new.state = 'planned'
else:
new.state = self.state new.state = self.state
new.reindex() new.reindex()
moved.data['target'] = new.name moved.data['target'] = new.name