"use client"
import { useState } from "react"
import { useRouter } from "next/navigation"
import { ChevronLeft, Download, Filter, Search } from "lucide-react"
import { Button } from "@/components/ui/button"
import { Card, CardContent } from "@/components/ui/card"
import { Input } from "@/components/ui/input"
import { Badge } from "@/components/ui/badge"
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select"
import { DatePickerWithRange } from "@/components/ui/date-picker"
import {
Pagination,
PaginationContent,
PaginationItem,
PaginationLink,
PaginationNext,
PaginationPrevious,
} from "@/components/ui/pagination"
import { toast } from "@/components/ui/use-toast"
export default function PaymentRecordsPage({ params }: { params: { id: string } }) {
const router = useRouter()
const [searchTerm, setSearchTerm] = useState("")
const [statusFilter, setStatusFilter] = useState("all")
const [currentPage, setCurrentPage] = useState(1)
const [showFilters, setShowFilters] = useState(false)
// 模拟数据
const paymentRecords = Array.from({ length: 50 }, (_, i) => ({
id: i + 1,
transactionId: `WX${Date.now()}${i}`,
user: `用户${i + 1}`,
platformUserId: `oq_${Math.random().toString(36).substr(2, 9)}`,
amount: "19.9",
paymentTime: new Date(Date.now() - i * 3600000).toLocaleString(),
status: i % 10 === 0 ? "refunded" : "success",
paymentMethod: "wechat",
customerTags: ["付款客户", "社群会员"],
}))
const itemsPerPage = 10
const totalPages = Math.ceil(paymentRecords.length / itemsPerPage)
const startIndex = (currentPage - 1) * itemsPerPage
const endIndex = startIndex + itemsPerPage
const currentRecords = paymentRecords.slice(startIndex, endIndex)
const handleExport = () => {
toast({
title: "导出成功",
description: "支付记录已导出为Excel文件",
})
}
const getStatusBadge = (status: string) => {
switch (status) {
case "success":
return (
总支付笔数
{paymentRecords.length}
总支付金额
¥{(paymentRecords.length * 19.9).toFixed(2)}
成功率
90%
{record.user}
交易ID: {record.transactionId}