"use client" import { useState } from "react" import { Plus, Trash2, RefreshCw, MoreVertical, Check } from "lucide-react" import { Button } from "@/components/ui/button" import { Card } from "@/components/ui/card" import { Checkbox } from "@/components/ui/checkbox" import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from "@/components/ui/dropdown-menu" import { format } from "date-fns" import "regenerator-runtime/runtime" interface GroupSync { id: string name: string targetGroup: string contentLib: string creator: string sentCount: number lastSyncTime: Date createTime: Date syncStatus: "pending" | "running" | "completed" enabled: boolean } const mockData: GroupSync[] = [ { id: "1", name: "每日早安问候", targetGroup: "业务交流群1", contentLib: "早安问候语库", creator: "张三", sentCount: 156, lastSyncTime: new Date(), createTime: new Date(), syncStatus: "running", enabled: true, }, { id: "2", name: "周末营销推广", targetGroup: "产品推广群", contentLib: "营销文案库", creator: "李四", sentCount: 89, lastSyncTime: new Date(), createTime: new Date(), syncStatus: "completed", enabled: true, }, ] export default function GroupSyncPage() { const [selectedItems, setSelectedItems] = useState([]) const [searchQuery, setSearchQuery] = useState("") const toggleSelectAll = () => { if (selectedItems.length === mockData.length) { setSelectedItems([]) } else { setSelectedItems(mockData.map((item) => item.id)) } } const toggleSelectItem = (id: string) => { if (selectedItems.includes(id)) { setSelectedItems(selectedItems.filter((item) => item !== id)) } else { setSelectedItems([...selectedItems, id]) } } return (

社群同步

ID 社群同步名称 推送社群 内容库 新建人 已推送条数 上次推送时间 创建时间 循环推送 启用 操作 {mockData.map((item) => ( toggleSelectItem(item.id)} /> {item.id} {item.name} {item.targetGroup} {item.contentLib} {item.creator} {item.sentCount} {format(item.lastSyncTime, "yyyy-MM-dd HH:mm:ss")} {format(item.createTime, "yyyy-MM-dd HH:mm:ss")} {item.syncStatus === "running" ? "进行中" : item.syncStatus === "pending" ? "待执行" : "已完成"} 编辑 删除 查看详情 ))}
) }