"use client" import { useState } from "react" import { useRouter } from "next/navigation" import { ChevronLeft, Plus, MoreHorizontal, Play, Pause, Edit, Trash2, Eye, TrendingUp, Users, Database, Clock, } from "lucide-react" import { Card } from "@/components/ui/card" import { Button } from "@/components/ui/button" import { Badge } from "@/components/ui/badge" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from "@/components/ui/dropdown-menu" import Link from "next/link" import BottomNav from "@/app/components/BottomNav" interface DistributionPlan { id: string name: string status: "active" | "paused" source: string sourceIcon: string targetGroups: string[] totalUsers: number dailyAverage: number deviceCount: number poolCount: number lastUpdated: string createTime: string creator: string } export default function TrafficDistributionPage() { const router = useRouter() const [plans, setPlans] = useState([ { id: "1", name: "抖音直播引流计划", status: "active", source: "douyin", sourceIcon: "🎬", targetGroups: ["新客户", "潜在客户"], totalUsers: 1250, dailyAverage: 85, deviceCount: 3, poolCount: 2, lastUpdated: "2024-03-18 10:30:00", createTime: "2024-03-10 08:30:00", creator: "admin", }, { id: "2", name: "小红书种草计划", status: "active", source: "xiaohongshu", sourceIcon: "📱", targetGroups: ["女性用户", "美妆爱好者"], totalUsers: 980, dailyAverage: 65, deviceCount: 2, poolCount: 1, lastUpdated: "2024-03-17 14:20:00", createTime: "2024-03-12 09:15:00", creator: "marketing", }, { id: "3", name: "微信社群活动", status: "paused", source: "wechat", sourceIcon: "💬", targetGroups: ["老客户", "会员"], totalUsers: 2340, dailyAverage: 0, deviceCount: 5, poolCount: 3, lastUpdated: "2024-03-15 09:45:00", createTime: "2024-02-28 11:20:00", creator: "social", }, ]) // 直接使用plans而不是filteredPlans const plansList = plans const handleDelete = (planId: string) => { setPlans(plans.filter((plan) => plan.id !== planId)) } const handleEdit = (planId: string) => { router.push(`/workspace/traffic-distribution/${planId}/edit`) } const handleView = (planId: string) => { router.push(`/workspace/traffic-distribution/${planId}`) } const togglePlanStatus = (planId: string) => { setPlans( plans.map((plan) => plan.id === planId ? { ...plan, status: plan.status === "active" ? "paused" : "active" } : plan, ), ) } return (

流量分发

{plansList.length === 0 ? (
暂无数据
) : (
{plansList.map((plan) => ( {/* 卡片头部 */}
{plan.sourceIcon}

{plan.name}

{plan.status === "active" ? "进行中" : "已暂停"} {plan.targetGroups.map((group, index) => ( {group} ))}
handleView(plan.id)}> 查看详情 handleEdit(plan.id)}> 编辑计划 togglePlanStatus(plan.id)}> {plan.status === "active" ? ( <> 暂停计划 ) : ( <> 启动计划 )} handleDelete(plan.id)} className="text-red-600"> 删除计划
{/* 卡片内容 - 参考场景获客的标签样式 */}
日均分发人数
{plan.dailyAverage}
分发设备
{plan.deviceCount}
流量池
{plan.poolCount}
日均分发量
{plan.dailyAverage}
总流量池数量
{plan.totalUsers}
{/* 底部信息 */}
上次执行: {plan.lastUpdated.split(" ")[0]}
创建人: {plan.creator}
))}
)}
) }