import React, { useState, useEffect } from "react"; import { Form, Input, Select, Button, Card, Descriptions, Tag, message, Spin } from "antd"; import { useParams, useNavigate, useLocation } from "react-router-dom"; import { ArrowLeftOutlined } from "@ant-design/icons"; import { pendingToolsApi } from "../services/api"; import moment from "moment"; import { STATUS_TAG_COLOR, STATUS_MAP } from "./PendingToolsList"; const { TextArea } = Input; const { Option } = Select; const PendingToolsDetail = () => { const [form] = Form.useForm(); const [data, setData] = useState(null); const [loading, setLoading] = useState(true); const [saving, setSaving] = useState(false); const { id } = useParams(); const navigate = useNavigate(); const location = useLocation(); const isEditMode = location.search.includes("mode=edit"); const getStatusColor = (status) => { return STATUS_TAG_COLOR[status] || "default"; }; const getStatusText = (status) => { return STATUS_MAP[status] || "未知"; }; const fetchData = async () => { try { const response = await pendingToolsApi.getDetail(id); setData(response.data); if (response.data.task) { form.setFieldsValue(response.data.task); } } catch (error) { message.error("获取详情失败"); } finally { setLoading(false); } }; const handleSave = async (values) => { setSaving(true); try { await pendingToolsApi.update(id, values); message.success("更新成功"); navigate("/pending-tools"); } catch (error) { message.error("更新失败"); } finally { setSaving(false); } }; useEffect(() => { fetchData(); }, [id]); if (loading) { return (
{data.detail.search_result || "无"}