Files
shop-front/src/app/cart/payment/callback/page.tsx
T
hamid zarghami 0845ecf3e6 fix: build error
2025-09-14 16:31:22 +03:30

165 lines
6.3 KiB
TypeScript

// 'use client'
// import Layout from '@/hoc/Layout'
// import { NextPage } from 'next'
// import { useEffect, useState } from 'react'
// import { useRouter, useSearchParams } from 'next/navigation'
// import { useCheckPaymentStatus } from '../../hooks/useCartData'
// import { toast } from '@/components/Toast'
// import { Button } from '@/components/ui/button'
// import Link from 'next/link'
// const PaymentCallback: NextPage = () => {
// const searchParams = useSearchParams()
// const checkPaymentMutation = useCheckPaymentStatus()
// const [paymentStatus, setPaymentStatus] = useState<'loading' | 'success' | 'failed' | 'pending'>('loading')
// const [orderData, setOrderData] = useState(null)
// useEffect(() => {
// const authority = searchParams.get('Authority')
// const status = searchParams.get('Status')
// if (!authority) {
// toast('خطا در دریافت اطلاعات پرداخت', 'error')
// setPaymentStatus('failed')
// return
// }
// // بررسی وضعیت پرداخت - اطلاعات سفارش از سرور دریافت می‌شود
// checkPaymentStatus(authority)
// }, [searchParams])
// const checkPaymentStatus = async (authority: string) => {
// try {
// const response = await checkPaymentMutation.mutateAsync({ authority })
// // ذخیره اطلاعات سفارش از response
// if (response?.results?.orderData) {
// setOrderData(response.results.orderData)
// }
// if (response?.results?.paymentStatus === 'success') {
// setPaymentStatus('success')
// toast('پرداخت با موفقیت انجام شد', 'success')
// } else if (response?.results?.paymentStatus === 'failed') {
// setPaymentStatus('failed')
// toast('پرداخت ناموفق بود', 'error')
// } else {
// setPaymentStatus('pending')
// toast('وضعیت پرداخت در حال بررسی است', 'warning')
// }
// } catch (error: unknown) {
// setPaymentStatus('failed')
// const errorMessage = (error as { response?: { data?: { message?: string } } })?.response?.data?.message || 'خطا در بررسی وضعیت پرداخت'
// toast(errorMessage, 'error')
// }
// }
// const getStatusIcon = () => {
// switch (paymentStatus) {
// case 'success':
// return '✅'
// case 'failed':
// return '❌'
// case 'pending':
// return '⏳'
// default:
// return '🔄'
// }
// }
// const getStatusMessage = () => {
// switch (paymentStatus) {
// case 'success':
// return 'پرداخت با موفقیت انجام شد'
// case 'failed':
// return 'پرداخت ناموفق بود'
// case 'pending':
// return 'وضعیت پرداخت در حال بررسی است'
// default:
// return 'در حال بررسی وضعیت پرداخت...'
// }
// }
// const getStatusColor = () => {
// switch (paymentStatus) {
// case 'success':
// return 'text-green-600'
// case 'failed':
// return 'text-red-600'
// case 'pending':
// return 'text-yellow-600'
// default:
// return 'text-blue-600'
// }
// }
// return (
// <div className="mt-14 px-4 sm:px-8 lg:px-20">
// <div className="flex items-center justify-center min-h-[60vh]">
// <div className="text-center max-w-md w-full">
// <div className="text-6xl mb-6">
// {getStatusIcon()}
// </div>
// <h1 className={`text-2xl font-bold mb-4 ${getStatusColor()}`}>
// {getStatusMessage()}
// </h1>
// {orderData && (
// <div className="bg-gray-50 rounded-lg p-4 mb-6 text-right">
// <div className="text-sm text-gray-600 mb-2">اطلاعات سفارش:</div>
// <div className="text-sm">
// <div>شماره سفارش: {orderData.orderId}</div>
// <div>مبلغ پرداخت: {orderData.totalPaymentPrice?.toLocaleString()} تومان</div>
// <div>تاریخ: {new Date(orderData.createdAt).toLocaleDateString('fa-IR')}</div>
// </div>
// </div>
// )}
// <div className="space-y-3">
// {paymentStatus === 'success' && (
// <Button asChild className="w-full">
// <Link href="/profile/orders">
// مشاهده سفارشات
// </Link>
// </Button>
// )}
// <Button asChild variant="outline" className="w-full">
// <Link href="/">
// بازگشت به صفحه اصلی
// </Link>
// </Button>
// {paymentStatus === 'failed' && (
// <Button asChild variant="outline" className="w-full">
// <Link href="/cart/payment">
// تلاش مجدد برای پرداخت
// </Link>
// </Button>
// )}
// </div>
// </div>
// </div>
// </div>
// )
// }
// export default function PaymentCallbackWithLayout() {
// return (
// <Layout>
// <PaymentCallback />
// </Layout>
// )
// }
import React from 'react'
const page = () => {
return (
<div>page</div>
)
}
export default page