ФУНКЦИИ - МЕЖПРОЕКТНАЯ КОММУНИКАЦИЯ: Voice Tasker preview и трейс активности

This commit is contained in:
DCCONSTRUCTIONS
2026-04-26 20:41:38 +03:00
parent d867a89a1b
commit 9a91af372e
10 changed files with 588 additions and 289 deletions
@@ -406,6 +406,35 @@ class WorkspaceUserActivityEndpoint(BaseAPIView):
)
class WorkspaceActivityEndpoint(BaseAPIView):
permission_classes = [WorkspaceEntityPermission]
def get(self, request, slug):
projects = request.query_params.getlist("project", [])
queryset = (
IssueActivity.objects.filter(
~Q(field__in=["comment", "vote", "reaction", "draft"]),
workspace__slug=slug,
project__project_projectmember__member=request.user,
project__project_projectmember__is_active=True,
project__archived_at__isnull=True,
)
.select_related("actor", "workspace", "issue", "project")
.distinct()
)
if projects:
queryset = queryset.filter(project__in=projects)
return self.paginate(
order_by=request.GET.get("order_by", "-created_at"),
request=request,
queryset=queryset,
on_results=lambda issue_activities: IssueActivitySerializer(issue_activities, many=True).data,
)
class WorkspaceUserProfileStatsEndpoint(BaseAPIView):
def get(self, request, slug, user_id):
filters = issue_filters(request.query_params, "GET")