import React, { useEffect, useState } from 'react'; import { useParams, useNavigate } from 'react-router-dom'; import { ArrowLeft, Users, TrendingUp, Calendar, Settings, Play, Pause, Edit } from 'lucide-react'; interface PlanData { id: string; name: string; status: 'active' | 'paused' | 'completed'; createdAt: string; totalCustomers: number; todayCustomers: number; growth: string; description?: string; scenario: string; } export default function PlanDetail() { const { planId } = useParams<{ planId: string }>(); const navigate = useNavigate(); const [plan, setPlan] = useState(null); const [loading, setLoading] = useState(true); const [error, setError] = useState(''); useEffect(() => { const fetchPlanData = async () => { setLoading(true); try { // 模拟API调用 const mockPlan: PlanData = { id: planId || '', name: '春季营销计划', status: 'active', createdAt: '2024-03-15', totalCustomers: 456, todayCustomers: 23, growth: '+8.2%', description: '针对春季市场的营销推广计划,通过多种渠道获取潜在客户', scenario: 'douyin', }; setPlan(mockPlan); } catch (error) { setError('获取计划数据失败'); console.error('获取计划数据失败:', error); } finally { setLoading(false); } }; fetchPlanData(); }, [planId]); const handleStatusChange = async (newStatus: 'active' | 'paused') => { if (!plan) return; try { // 这里可以调用实际的API // await fetch(`/api/plans/${plan.id}/status`, { // method: 'PATCH', // headers: { 'Content-Type': 'application/json' }, // body: JSON.stringify({ status: newStatus }), // }); setPlan({ ...plan, status: newStatus }); } catch (error) { console.error('更新计划状态失败:', error); alert('更新失败,请重试'); } }; if (loading) { return (
加载中...
); } if (error || !plan) { return (
{error || '计划不存在'}
); } return (

{plan.name}

{/* 计划描述 */} {plan.description && (

{plan.description}

)} {/* 数据统计 */}

总获客数

{plan.totalCustomers}

{plan.growth}

今日获客

{plan.todayCustomers}

创建于 {plan.createdAt}
{/* 状态控制 */}

计划状态

{plan.status === 'active' ? '进行中' : plan.status === 'paused' ? '已暂停' : '已完成'}
{plan.status === 'active' ? ( ) : plan.status === 'paused' ? ( ) : null}
{/* 功能区域 */}
navigate(`/plans/${plan.id}/customers`)}>

客户管理

查看和管理获客客户

navigate(`/plans/${plan.id}/analytics`)}>

数据分析

查看获客数据统计

navigate(`/plans/${plan.id}/content`)}>

内容管理

管理营销内容

navigate(`/plans/${plan.id}/settings`)}>

计划设置

配置计划参数

); }