"use client" import { useState, useEffect, Suspense } from "react" import { Card, CardContent } from "@/components/ui/card" import { Input } from "@/components/ui/input" import { Button } from "@/components/ui/button" import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table" import { Badge } from "@/components/ui/badge" import { useStore, type User } from "@/lib/store" import { Search, UserPlus, Eye, Trash2 } from "lucide-react" function UsersContent() { const { getAllUsers, deleteUser } = useStore() const [users, setUsers] = useState([]) const [searchTerm, setSearchTerm] = useState("") useEffect(() => { setUsers(getAllUsers()) }, [getAllUsers]) const filteredUsers = users.filter((u) => u.nickname.includes(searchTerm) || u.phone.includes(searchTerm)) const handleDelete = (userId: string) => { if (confirm("确定要删除这个用户吗?")) { deleteUser(userId) setUsers(getAllUsers()) } } return (

用户管理

共 {users.length} 位注册用户

setSearchTerm(e.target.value)} />
用户信息 手机号 购买状态 分销收益 注册时间 操作 {filteredUsers.map((user) => (
{user.nickname.charAt(0)}

{user.nickname}

ID: {user.id.slice(0, 8)}

{user.phone} {user.hasFullBook ? ( 全书已购 ) : user.purchasedSections.length > 0 ? ( 已购 {user.purchasedSections.length} 节 ) : ( 未购买 )} ¥{user.earnings?.toFixed(2) || "0.00"} {new Date(user.createdAt).toLocaleDateString()}
))} {filteredUsers.length === 0 && ( 暂无用户数据 )}
) } export default function UsersPage() { return ( ) }