From 41c1672afc7ec11cec55ed0d2295daf9b336f233 Mon Sep 17 00:00:00 2001 From: kyy Date: Wed, 4 Feb 2026 15:47:47 +0900 Subject: [PATCH] =?UTF-8?q?=ED=81=B4=EB=9D=BC=EC=9D=B4=EC=96=B8=ED=8A=B8?= =?UTF-8?q?=20=EC=83=81=ED=83=9C=20=ED=86=A0=EA=B8=80=20=EA=B8=B0=EB=8A=A5?= =?UTF-8?q?=20=ED=99=9C=EC=84=B1=ED=99=94=20=EB=B0=8F=20=EC=A0=84=EC=97=AD?= =?UTF-8?q?=20=EC=95=8C=EB=A6=BC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- devfront/src/features/clients/ClientsPage.tsx | 17 ++++++++++++++++- devfront/src/main.tsx | 2 ++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/devfront/src/features/clients/ClientsPage.tsx b/devfront/src/features/clients/ClientsPage.tsx index a3ed28a7..57e670bd 100644 --- a/devfront/src/features/clients/ClientsPage.tsx +++ b/devfront/src/features/clients/ClientsPage.tsx @@ -55,7 +55,18 @@ function ClientsPage() { const updateStatusMutation = useMutation({ mutationFn: (payload: { id: string; status: "active" | "inactive" }) => updateClientStatus(payload.id, payload.status), - onSuccess: () => queryClient.invalidateQueries({ queryKey: ["clients"] }), + onSuccess: (_, variables) => { + const statusText = variables.status === "active" ? "활성화" : "비활성화"; + toast(`클라이언트가 ${statusText}되었습니다.`); + queryClient.invalidateQueries({ queryKey: ["clients"] }); + }, + onError: (error: AxiosError<{ error?: string }>) => { + const errMsg = + error.response?.data?.error ?? + error.message ?? + "Failed to update client status"; + toast(errMsg, "error"); + }, }); const deleteMutation = useMutation({ mutationFn: (clientId: string) => deleteClient(clientId), @@ -256,6 +267,10 @@ function ClientsPage() {
updateStatusMutation.mutate({ diff --git a/devfront/src/main.tsx b/devfront/src/main.tsx index 5bc28ec7..25106be2 100644 --- a/devfront/src/main.tsx +++ b/devfront/src/main.tsx @@ -2,6 +2,7 @@ import { QueryClientProvider } from "@tanstack/react-query"; import { StrictMode } from "react"; import { createRoot } from "react-dom/client"; import { RouterProvider } from "react-router-dom"; +import { Toaster } from "./components/ui/toaster"; import { queryClient } from "./app/queryClient"; import { router } from "./app/routes"; import "./index.css"; @@ -16,6 +17,7 @@ createRoot(rootElement).render( + , );