feat: add ticket solution closure loop
This commit is contained in:
@@ -7,6 +7,7 @@ from apps.solutions.schemas import (
|
||||
SolutionOut,
|
||||
TicketSolutionLinkIn,
|
||||
TicketSolutionLinkOut,
|
||||
TicketSolutionOut,
|
||||
)
|
||||
from apps.tickets.models import Ticket
|
||||
|
||||
@@ -38,6 +39,25 @@ def list_solutions(request, status: str | None = None):
|
||||
return queryset[:100]
|
||||
|
||||
|
||||
@router.get("/tickets/{ticket_id}", response=list[TicketSolutionOut])
|
||||
def list_ticket_solutions(request, ticket_id: int):
|
||||
require_permission(request, "solution.view")
|
||||
queryset = TicketSolutionLink.objects.select_related("solution", "ticket").filter(
|
||||
ticket_id=ticket_id
|
||||
)
|
||||
return [
|
||||
{
|
||||
"id": link.id,
|
||||
"ticket_id": link.ticket_id,
|
||||
"solution_id": link.solution_id,
|
||||
"link_type": link.link_type,
|
||||
"solution": link.solution,
|
||||
"created_at": link.created_at,
|
||||
}
|
||||
for link in queryset
|
||||
]
|
||||
|
||||
|
||||
@router.get("/{solution_id}", response=SolutionOut)
|
||||
def get_solution(request, solution_id: int):
|
||||
require_permission(request, "solution.view")
|
||||
|
||||
Reference in New Issue
Block a user