return locations
def get_tasks_with_details(self, projId):
- for taskSeries in self._get_taskseries(projId):
+ for realProjId, taskSeries in self._get_taskseries(projId):
for task in self._get_tasks(taskSeries):
- taskId = self._pack_ids(projId, taskSeries.id, task.id)
+ taskId = self._pack_ids(realProjId, taskSeries.id, task.id)
priority = task.priority if task.priority != "N" else ""
yield {
"id": taskId,
def get_task_details(self, taskId):
projId, seriesId, taskId = self._unpack_ids(taskId)
- for taskSeries in self._get_taskseries(projId):
+ for realProjId, taskSeries in self._get_taskseries(projId):
+ assert projId == realProjId, "%s != %s, looks like we let leak a metalist id when packing a task id" % (projId, realProjId)
curSeriesId = taskSeries.id
if seriesId != curSeriesId:
continue
continue
return {
"id": taskId,
- "projId": projId,
+ "projId": realProjId,
"name": taskSeries.name,
"url": fix_url(taskSeries.url),
"locationId": taskSeries.location_id,
rspTasksList = (rspTasksList, )
for something in rspTasksList:
+ realProjId = something.id
try:
something.taskseries
except AttributeError:
somethingsTaskseries = (something.taskseries, )
for taskSeries in somethingsTaskseries:
- yield taskSeries
+ yield realProjId, taskSeries
def _get_tasks(self, taskSeries):
if isinstance(taskSeries.task, list):