ФУНКЦИИ - МЕЖПРОЕКТНАЯ КОММУНИКАЦИЯ: очистка stale assignees Operational Core

This commit is contained in:
DCCONSTRUCTIONS
2026-05-09 12:33:49 +03:00
parent fa4a533d29
commit 78deab1a23
10 changed files with 110 additions and 10 deletions
@@ -9,7 +9,16 @@ from django.views import View
from django.views.decorators.csrf import csrf_exempt
from plane.authentication.views.nodedc_logout import is_internal_logout_request_authorized
from plane.db.models import ExternalIdentityLink, Profile, Project, ProjectMember, User, Workspace, WorkspaceMember
from plane.db.models import (
ExternalIdentityLink,
IssueAssignee,
Profile,
Project,
ProjectMember,
User,
Workspace,
WorkspaceMember,
)
OIDC_PROVIDER = "authentik"
@@ -384,6 +393,10 @@ class NodeDCInternalWorkspaceMembershipRemoveEndpoint(View):
member=user,
is_active=True,
).update(is_active=False)
IssueAssignee.objects.filter(
workspace=workspace,
assignee=user,
).delete()
membership.is_active = False
membership.save(update_fields=["is_active", "updated_at"])
@@ -534,6 +547,7 @@ class NodeDCInternalProjectMembershipRemoveEndpoint(View):
project_member.is_active = False
project_member.save(update_fields=["is_active", "updated_at"])
IssueAssignee.objects.filter(project=project, assignee=user).delete()
return JsonResponse(
{