feat: cross project issue linking (#1609)
* dev: sub issue listing * feat: cross project issue linking * dev: project search * dev: workspace search logic * dev: return state and project details for parent issues * dev: issue state flat serializer * dev: id for lite serializer * dev: project name in for the response issues * dev: issue cross project * dev: issue project identifiers * dev: blocked and blocked by activity
This commit is contained in:
parent
e357283789
commit
73b38f4db9
4 changed files with 67 additions and 22 deletions
|
|
@ -629,7 +629,7 @@ class SubIssuesEndpoint(BaseAPIView):
|
|||
try:
|
||||
sub_issues = (
|
||||
Issue.issue_objects.filter(
|
||||
parent_id=issue_id, workspace__slug=slug, project_id=project_id
|
||||
parent_id=issue_id, workspace__slug=slug
|
||||
)
|
||||
.select_related("project")
|
||||
.select_related("workspace")
|
||||
|
|
@ -661,7 +661,7 @@ class SubIssuesEndpoint(BaseAPIView):
|
|||
|
||||
state_distribution = (
|
||||
State.objects.filter(
|
||||
~Q(name="Triage"), workspace__slug=slug, project_id=project_id
|
||||
~Q(name="Triage"), workspace__slug=slug
|
||||
)
|
||||
.annotate(
|
||||
state_count=Count(
|
||||
|
|
|
|||
|
|
@ -206,6 +206,7 @@ class IssueSearchEndpoint(BaseAPIView):
|
|||
def get(self, request, slug, project_id):
|
||||
try:
|
||||
query = request.query_params.get("search", False)
|
||||
workspace_search = request.query_params.get("workspace_search", "false")
|
||||
parent = request.query_params.get("parent", "false")
|
||||
blocker_blocked_by = request.query_params.get("blocker_blocked_by", "false")
|
||||
cycle = request.query_params.get("cycle", "false")
|
||||
|
|
@ -216,10 +217,12 @@ class IssueSearchEndpoint(BaseAPIView):
|
|||
|
||||
issues = Issue.issue_objects.filter(
|
||||
workspace__slug=slug,
|
||||
project_id=project_id,
|
||||
project__project_projectmember__member=self.request.user,
|
||||
)
|
||||
|
||||
if workspace_search == "false":
|
||||
issues = issues.filter(project_id=project_id)
|
||||
|
||||
if query:
|
||||
issues = search_issues(query, issues)
|
||||
|
||||
|
|
@ -257,6 +260,7 @@ class IssueSearchEndpoint(BaseAPIView):
|
|||
"name",
|
||||
"id",
|
||||
"sequence_id",
|
||||
"project__name",
|
||||
"project__identifier",
|
||||
"project_id",
|
||||
"workspace__slug",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue