Skip to content
Snippets Groups Projects
Commit 4691e609 authored by Jorrit Schaap's avatar Jorrit Schaap
Browse files

Task #10339: fixed type in getTasksTimeWindow. made check for tasks with...

Task #10339: fixed type in getTasksTimeWindow. made check for tasks with conflicting resource_claims more efficient
parent 9c8e12b6
No related branches found
No related tags found
No related merge requests found
......@@ -207,7 +207,11 @@ class RADatabase:
if conditions:
query += ' WHERE ' + ' AND '.join(conditions)
result = dict(self._executeQuery(query, qargs, fetch=_FETCH_ALL))
result = self._executeQuery(query, qargs, fetch=_FETCH_ALL)
if result and len(result) == 1:
result = dict(result[0])
else:
result = {'max_endtime': datetime.utcnow(), 'min_starttime': datetime.utcnow()}
return result
......@@ -1377,8 +1381,12 @@ class RADatabase:
# update each task
# depending on the task's claims in conflict/other status
conflicting_claims_for_tasks = self.getResourceClaims(task_ids=task_ids, status=conflistStatusId)
conflicting_claims_for_tasks = dict((c['task_id'],c) for c in conflicting_claims_for_tasks)
for task_id in task_ids:
if self.getResourceClaims(task_ids=task_id, status=conflistStatusId):
conflicting_claims_for_task = conflicting_claims_for_tasks.get(task_id, [])
if conflicting_claims_for_task:
# if any claims in conflict -> task: conflict
self.updateTask(task_id=task_id, task_status='conflict', commit=False)
elif self.getTask(task_id)['status'] == 'conflict':
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment