From d93165bfac7e29469b38a187400d1d5ea8c5f5c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B6=85=E7=BA=A7=E8=80=81=E7=99=BD=E5=85=94?= Date: Wed, 20 Aug 2025 11:19:53 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E8=87=AA=E5=8A=A8=E5=BB=BA=E7=BE=A4):=20?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=88=A0=E9=99=A4=E8=87=AA=E5=8A=A8=E5=BB=BA?= =?UTF-8?q?=E7=BE=A4=E4=BB=BB=E5=8A=A1=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增删除自动建群任务的API接口及前端交互逻辑,使用自定义确认弹窗替代原生confirm,提供更好的用户体验和错误处理 --- .../mobile/workspace/auto-group/list/api.ts | 5 ++++ .../workspace/auto-group/list/index.tsx | 30 +++++++++++++++---- 2 files changed, 29 insertions(+), 6 deletions(-) diff --git a/Cunkebao/src/pages/mobile/workspace/auto-group/list/api.ts b/Cunkebao/src/pages/mobile/workspace/auto-group/list/api.ts index 8ad39e81..fede6244 100644 --- a/Cunkebao/src/pages/mobile/workspace/auto-group/list/api.ts +++ b/Cunkebao/src/pages/mobile/workspace/auto-group/list/api.ts @@ -9,3 +9,8 @@ export const getAutoGroupList = (params: any) => export function copyAutoGroupTask(id: string): Promise { return request("/v1/workbench/copy", { id }, "POST"); } + +// 删除自动建群任务 +export function deleteAutoGroupTask(id: string): Promise { + return request("/v1/workbench/delete", { id }, "DELETE"); +} diff --git a/Cunkebao/src/pages/mobile/workspace/auto-group/list/index.tsx b/Cunkebao/src/pages/mobile/workspace/auto-group/list/index.tsx index 8e44c600..f19cc732 100644 --- a/Cunkebao/src/pages/mobile/workspace/auto-group/list/index.tsx +++ b/Cunkebao/src/pages/mobile/workspace/auto-group/list/index.tsx @@ -14,7 +14,12 @@ import { PlusOutlined, SearchOutlined, } from "@ant-design/icons"; -import { getAutoGroupList, copyAutoGroupTask } from "./api"; +import { + getAutoGroupList, + copyAutoGroupTask, + deleteAutoGroupTask, +} from "./api"; +import { comfirm } from "@/utils/common"; import Layout from "@/components/Layout/Layout"; import style from "./index.module.scss"; import NavCommon from "@/components/NavCommon"; @@ -110,14 +115,27 @@ const AutoGroupList: React.FC = () => { // eslint-disable-next-line react-hooks/exhaustive-deps }, []); - const handleDelete = (taskId: string) => { + const handleDelete = async (taskId: string) => { const taskToDelete = tasks.find(task => task.id === taskId); if (!taskToDelete) return; - window.confirm(`确定要删除"${taskToDelete.name}"吗?`) && - setTasks(tasks.filter(task => task.id !== taskId)); - Toast.show({ content: "删除成功" }); - }; + try { + await comfirm("确定要删除吗?", { + title: "删除确认", + cancelText: "取消", + confirmText: "删除", + }); + + await deleteAutoGroupTask(taskId); + setTasks(tasks.filter(task => task.id !== taskId)); + Toast.show({ content: "删除成功" }); + } catch (error) { + // 用户取消删除或删除失败 + if (error !== "cancel") { + Toast.show({ content: "删除失败" }); + } + } + }; const handleEdit = (taskId: string) => { navigate(`/workspace/auto-group/${taskId}/edit`); };