From 4dd121fac79d303e55cc18640c1922a9b63e2b4f Mon Sep 17 00:00:00 2001 From: jasquat Date: Fri, 11 Nov 2022 17:15:38 -0500 Subject: [PATCH] add the username to the task list w/ burnettk --- .../routes/process_api_blueprint.py | 22 ++++++++++--------- .../MyTasksForProcessesStartedByOthers.tsx | 2 ++ 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/spiffworkflow-backend/src/spiffworkflow_backend/routes/process_api_blueprint.py b/spiffworkflow-backend/src/spiffworkflow_backend/routes/process_api_blueprint.py index ae704584..0c5ed42f 100644 --- a/spiffworkflow-backend/src/spiffworkflow_backend/routes/process_api_blueprint.py +++ b/spiffworkflow-backend/src/spiffworkflow_backend/routes/process_api_blueprint.py @@ -1012,32 +1012,34 @@ def get_tasks(processes_started_by_user: bool = True, page: int = 1, per_page: i user_id = g.user.id active_tasks_query = ( ActiveTaskModel.query + .outerjoin(GroupModel, GroupModel.id == ActiveTaskModel.lane_assignment_id) .join(ProcessInstanceModel) - .order_by(desc(ProcessInstanceModel.created_at_in_seconds)) # type: ignore - ) + .join(UserModel, UserModel.id == ProcessInstanceModel.process_initiator_id) + ) if processes_started_by_user: - active_tasks_query = active_tasks_query.filter_by(process_initiator_id=user_id) + active_tasks_query = (active_tasks_query.filter(ProcessInstanceModel.process_initiator_id==user_id) + .outerjoin(ActiveTaskUserModel, and_(ActiveTaskUserModel.user_id == user_id)) + ) else: - active_tasks_query = active_tasks_query.filter(ProcessInstanceModel.process_initiator_id != user_id) + active_tasks_query = (active_tasks_query.filter(ProcessInstanceModel.process_initiator_id != user_id) + .join(ActiveTaskUserModel, and_(ActiveTaskUserModel.user_id == user_id)) + ) active_tasks = ( - active_tasks_query.outerjoin(GroupModel) - .outerjoin(ActiveTaskUserModel, and_(ActiveTaskUserModel.user_id == user_id)) - # just need this add_columns to add the process_model_identifier. Then add everything back that was removed. - .add_columns( + active_tasks_query.add_columns( ProcessInstanceModel.process_model_identifier, ProcessInstanceModel.status.label("process_instance_status"), ProcessInstanceModel.updated_at_in_seconds, ProcessInstanceModel.created_at_in_seconds, + UserModel.username, GroupModel.identifier.label("group_identifier"), ActiveTaskModel.task_name, ActiveTaskModel.task_title, ActiveTaskModel.process_model_display_name, ActiveTaskModel.process_instance_id, ActiveTaskUserModel.user_id.label("current_user_is_potential_owner") - ) - .paginate(page=page, per_page=per_page, error_out=False) + ).paginate(page=page, per_page=per_page, error_out=False) ) response_json = { diff --git a/spiffworkflow-frontend/src/components/MyTasksForProcessesStartedByOthers.tsx b/spiffworkflow-frontend/src/components/MyTasksForProcessesStartedByOthers.tsx index d8de933d..d1fafd39 100644 --- a/spiffworkflow-frontend/src/components/MyTasksForProcessesStartedByOthers.tsx +++ b/spiffworkflow-frontend/src/components/MyTasksForProcessesStartedByOthers.tsx @@ -63,6 +63,7 @@ export default function MyTasksForProcessesStartedByOthers() { > {rowToUse.task_title} + {rowToUse.username} {rowToUse.process_instance_status} {rowToUse.group_identifier || '-'} @@ -95,6 +96,7 @@ export default function MyTasksForProcessesStartedByOthers() { Process Model Process Instance Task Name + Process Started By Process Instance Status Assigned Group Process Started