From 2716e2c691f898de477fe17c5029d940776288a6 Mon Sep 17 00:00:00 2001 From: huangzhuang_3rd Date: Wed, 12 Aug 2026 17:05:29 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=89=8D=E7=AB=AF=E6=9E=84=E5=BB=BA?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D+=E5=90=8E=E7=AB=AF=E9=9D=99=E6=80=81?= =?UTF-8?q?=E6=89=98=E7=AE=A1+Docker=E9=83=A8=E7=BD=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/pages/Tasks.tsx | 48 +++++------------------------------- 1 file changed, 6 insertions(+), 42 deletions(-) diff --git a/frontend/src/pages/Tasks.tsx b/frontend/src/pages/Tasks.tsx index a801fb8..42ae1ab 100644 --- a/frontend/src/pages/Tasks.tsx +++ b/frontend/src/pages/Tasks.tsx @@ -10,7 +10,6 @@ import { Input, Select, DatePicker, - InputNumber, Typography, Segmented, Table, @@ -30,7 +29,6 @@ import { import { taskApi, projectApi, workerApi } from '@/api'; import type { Task, TaskCreate, TaskStatus, Project, Worker } from '@/types'; import { TaskStatusTag, PriorityTag, taskStatusConfig, taskStatusList } from '@/components/constants'; -import TaskDetailModal from '@/pages/TaskDetail'; import dayjs from 'dayjs'; const { Title, Text } = Typography; @@ -49,14 +47,13 @@ export default function Tasks() { const [workers, setWorkers] = useState([]); const [loading, setLoading] = useState(false); const [viewMode, setViewMode] = useState('kanban'); - const [filterProject, setFilterProject] = useState(); + const [filterProject, setFilterProject] = useState(); const [filterStatus, setFilterStatus] = useState(); const [modalOpen, setModalOpen] = useState(false); const [editing, setEditing] = useState(null); const [form] = Form.useForm(); const [saving, setSaving] = useState(false); - const [detailTask, setDetailTask] = useState(null); const loadData = useCallback(() => { setLoading(true); @@ -81,7 +78,7 @@ export default function Tasks() { const openCreate = () => { setEditing(null); form.resetFields(); - form.setFieldsValue({ priority: 'medium', max_retries: 3 }); + form.setFieldsValue({ priority: 'medium' }); setModalOpen(true); }; @@ -91,7 +88,6 @@ export default function Tasks() { title: task.title, description: task.description, priority: task.priority, - max_retries: task.max_retries, }); setModalOpen(true); }; @@ -105,7 +101,6 @@ export default function Tasks() { title: values.title, description: values.description, priority: values.priority, - max_retries: values.max_retries, }; if (values.due_date) { @@ -114,7 +109,8 @@ export default function Tasks() { if (values.input_data) { try { - payload.input_data = JSON.parse(values.input_data); + JSON.parse(values.input_data); // validate JSON format + payload.input_data = values.input_data; } catch { message.error('输入数据 JSON 格式错误'); setSaving(false); @@ -144,7 +140,7 @@ export default function Tasks() { } }; - const handleDelete = async (id: string) => { + const handleDelete = async (id: number) => { try { await taskApi.delete(id); message.success('删除成功'); @@ -206,7 +202,6 @@ export default function Tasks() { key={task.id} size="small" className="kanban-card" - onClick={() => setDetailTask(task)} style={{ marginBottom: 8 }} >
@@ -214,9 +209,6 @@ export default function Tasks() {
- {task.cost > 0 && ( - ¥{task.cost.toFixed(2)} - )} {task.description && (
( - setDetailTask(record)}>{text} - ), + render: (text: string) => text, }, { title: '状态', @@ -265,12 +255,6 @@ export default function Tasks() { key: 'priority', render: (p: Task['priority']) => , }, - { - title: '花费', - dataIndex: 'cost', - key: 'cost', - render: (v: number) => (v > 0 ? `¥${v.toFixed(2)}` : '-'), - }, { title: '创建时间', dataIndex: 'created_at', @@ -283,13 +267,6 @@ export default function Tasks() { width: 280, render: (_: unknown, record: Task) => ( -