fix(ticket): close final integration gaps

This commit is contained in:
mlogclub
2026-05-02 21:00:00 +08:00
parent d9130d6d56
commit 6d75ea9988
7 changed files with 42 additions and 4 deletions
+10
View File
@@ -1,6 +1,7 @@
"use client"
import { PlusIcon, RefreshCcwIcon, SearchXIcon } from "lucide-react"
import { useSearchParams } from "next/navigation"
import { useCallback, useEffect, useMemo, useRef, useState } from "react"
import { toast } from "sonner"
@@ -103,6 +104,7 @@ function assigneeLabel(ticket: TicketItem) {
}
export default function TicketsPage() {
const searchParams = useSearchParams()
const [tickets, setTickets] = useState<TicketItem[]>([])
const [summary, setSummary] = useState<TicketSummary>(emptySummary)
const [quickView, setQuickView] = useState<QuickViewKey>("all")
@@ -191,6 +193,14 @@ export default function TicketsPage() {
void loadData()
}, [loadData])
useEffect(() => {
const ticketId = Number(searchParams.get("ticketId"))
if (ticketId > 0) {
setSelectedTicketId(ticketId)
setDetailOpen(true)
}
}, [searchParams])
useEffect(() => {
let active = true
Promise.all([fetchAgentProfilesAll(), fetchTagsAll()])
+1 -1
View File
@@ -211,7 +211,7 @@ export function createTicketProgress(payload: {
ticketId: number
content: string
}) {
return request<TicketProgress>("/api/dashboard/ticket/add_progress", {
return request<TicketProgress>("/api/dashboard/ticket/progress/create", {
method: "POST",
body: JSON.stringify(payload),
})