Merge remote-tracking branch 'origin/main' into feature/bpmn_user_permissions
This commit is contained in:
commit
6b886663f1
|
@ -601,7 +601,7 @@ paths:
|
|||
description: Specifies the identifier of a report to use, if any
|
||||
schema:
|
||||
type: integer
|
||||
- name: group_identifier
|
||||
- name: user_group_identifier
|
||||
in: query
|
||||
required: false
|
||||
description: The identifier of the group to get the process instances for
|
||||
|
@ -714,7 +714,7 @@ paths:
|
|||
description: Specifies the identifier of a report to use, if any
|
||||
schema:
|
||||
type: integer
|
||||
- name: group_identifier
|
||||
- name: user_group_identifier
|
||||
in: query
|
||||
required: false
|
||||
description: The identifier of the group to get the process instances for
|
||||
|
@ -1328,7 +1328,7 @@ paths:
|
|||
|
||||
/tasks/for-my-groups:
|
||||
parameters:
|
||||
- name: group_identifier
|
||||
- name: user_group_identifier
|
||||
in: query
|
||||
required: false
|
||||
description: The identifier of the group to get the tasks for
|
||||
|
|
|
@ -380,7 +380,11 @@ class ProcessInstanceReportService:
|
|||
ProcessInstanceModel.status.in_(ProcessInstanceModel.terminal_statuses()) # type: ignore
|
||||
)
|
||||
|
||||
if report_filter.with_relation_to_me is True:
|
||||
if (
|
||||
not report_filter.with_tasks_completed_by_me
|
||||
and not report_filter.with_tasks_assigned_to_my_group
|
||||
and report_filter.with_relation_to_me is True
|
||||
):
|
||||
process_instance_query = process_instance_query.outerjoin(
|
||||
HumanTaskModel
|
||||
).outerjoin(
|
||||
|
@ -410,17 +414,14 @@ class ProcessInstanceReportService:
|
|||
)
|
||||
|
||||
if report_filter.with_tasks_assigned_to_my_group is True:
|
||||
group_model_join_conditions = [GroupModel.id == HumanTaskModel.lane_assignment_id]
|
||||
if report_filter.user_group_identifier:
|
||||
process_instance_query = process_instance_query.join(
|
||||
GroupModel,
|
||||
GroupModel.identifier == report_filter.user_group_identifier,
|
||||
)
|
||||
else:
|
||||
process_instance_query = process_instance_query.join(HumanTaskModel)
|
||||
process_instance_query = process_instance_query.join(
|
||||
GroupModel,
|
||||
GroupModel.id == HumanTaskModel.lane_assignment_id,
|
||||
)
|
||||
group_model_join_conditions.append(GroupModel.identifier == report_filter.user_group_identifier)
|
||||
process_instance_query = process_instance_query.join(HumanTaskModel)
|
||||
process_instance_query = process_instance_query.join(
|
||||
GroupModel,
|
||||
and_(*group_model_join_conditions)
|
||||
)
|
||||
process_instance_query = process_instance_query.join(
|
||||
UserGroupAssignmentModel,
|
||||
UserGroupAssignmentModel.group_id == GroupModel.id,
|
||||
|
|
Loading…
Reference in New Issue