ФУНКЦИИ - МЕЖПРОЕКТНАЯ КОММУНИКАЦИЯ: очистка stale assignees Operational Core
This commit is contained in:
@@ -33,8 +33,20 @@ def issue_queryset_grouper(
|
||||
"module_ids": "issue_module__module_id",
|
||||
}
|
||||
|
||||
valid_assignee_filter = (
|
||||
Q(issue_assignee__deleted_at__isnull=True)
|
||||
& Q(assignees__is_active=True)
|
||||
& Q(assignees__member_workspace__workspace_id=F("workspace_id"))
|
||||
& Q(assignees__member_workspace__is_active=True)
|
||||
& Q(assignees__member_workspace__is_banned=False)
|
||||
& Q(assignees__member_workspace__deleted_at__isnull=True)
|
||||
& Q(assignees__member_project__project_id=F("project_id"))
|
||||
& Q(assignees__member_project__is_active=True)
|
||||
& Q(assignees__member_project__deleted_at__isnull=True)
|
||||
)
|
||||
|
||||
GROUP_FILTER_MAPPER = {
|
||||
"assignees__id": Q(issue_assignee__deleted_at__isnull=True),
|
||||
"assignees__id": valid_assignee_filter,
|
||||
"labels__id": Q(label_issue__deleted_at__isnull=True),
|
||||
"issue_module__module_id": Q(issue_module__deleted_at__isnull=True),
|
||||
}
|
||||
@@ -46,7 +58,7 @@ def issue_queryset_grouper(
|
||||
annotations_map = {
|
||||
"assignee_ids": (
|
||||
"assignees__id",
|
||||
~Q(assignees__id__isnull=True) & Q(issue_assignee__deleted_at__isnull=True),
|
||||
~Q(assignees__id__isnull=True) & valid_assignee_filter,
|
||||
),
|
||||
"label_ids": (
|
||||
"labels__id",
|
||||
|
||||
@@ -625,7 +625,14 @@ class IssueRetrievePublicEndpoint(BaseAPIView):
|
||||
distinct=True,
|
||||
filter=Q(
|
||||
~Q(assignees__id__isnull=True)
|
||||
& Q(assignees__is_active=True)
|
||||
& Q(assignees__member_workspace__workspace_id=F("workspace_id"))
|
||||
& Q(assignees__member_workspace__is_active=True)
|
||||
& Q(assignees__member_workspace__is_banned=False)
|
||||
& Q(assignees__member_workspace__deleted_at__isnull=True)
|
||||
& Q(assignees__member_project__project_id=F("project_id"))
|
||||
& Q(assignees__member_project__is_active=True)
|
||||
& Q(assignees__member_project__deleted_at__isnull=True)
|
||||
& Q(issue_assignee__deleted_at__isnull=True)
|
||||
),
|
||||
),
|
||||
|
||||
Reference in New Issue
Block a user