From bcb6472a603ee81ff8441b8e7b4847c194f83fa1 Mon Sep 17 00:00:00 2001 From: hamid zarghami Date: Thu, 6 Nov 2025 10:16:09 +0330 Subject: [PATCH] detail product fix status text --- .../orders/[id]/components/OrderMainContent.tsx | 6 +++--- src/app/profile/orders/[id]/page.tsx | 13 ++----------- src/app/profile/orders/page.tsx | 15 +++------------ src/config/func.ts | 13 +++++++++++++ 4 files changed, 21 insertions(+), 26 deletions(-) diff --git a/src/app/profile/orders/[id]/components/OrderMainContent.tsx b/src/app/profile/orders/[id]/components/OrderMainContent.tsx index 6d13f1d..eb47335 100644 --- a/src/app/profile/orders/[id]/components/OrderMainContent.tsx +++ b/src/app/profile/orders/[id]/components/OrderMainContent.tsx @@ -6,14 +6,14 @@ import { OrderItemDetail } from '../../types/Types' interface OrderMainContentProps { orderItems: OrderItemDetail[] orderId: string - getStatusText: (status: string) => string + statusText: string onCancelClick: () => void } const OrderMainContent: React.FC = ({ orderItems, orderId, - getStatusText, + statusText, onCancelClick }) => { // محاسبه تعداد مرسوله (length of orderItems) @@ -46,7 +46,7 @@ const OrderMainContent: React.FC = ({
- {firstOrderItem ? getStatusText(firstOrderItem.status) : ''} + {statusText}
diff --git a/src/app/profile/orders/[id]/page.tsx b/src/app/profile/orders/[id]/page.tsx index 2a04ae8..cf3582f 100644 --- a/src/app/profile/orders/[id]/page.tsx +++ b/src/app/profile/orders/[id]/page.tsx @@ -11,6 +11,7 @@ import CancelOrderModal from './components/CancelOrderModal' import { useCancelOrder, useGetOrderDetail } from '../hooks/useOrdersData' import { toast } from '@/components/Toast' import { PRIMARY_COLOR } from '@/config/const' +import { getStatusText } from '@/config/func' const OrderDetail: FC = () => { @@ -20,16 +21,6 @@ const OrderDetail: FC = () => { const cancelOrderMutation = useCancelOrder() const router = useRouter() - const getStatusText = (status: string) => { - const statusMap: Record = { - 'processing': 'در حال پردازش', - 'shipped': 'ارسال شده', - 'delivered': 'تحویل داده شده', - 'cancelled': 'لغو شده' - } - return statusMap[status] || status - } - const onSubmit = async (cancelData: { reason: string; count: string; description: string }) => { try { // Prepare cancel items from all order items @@ -104,7 +95,7 @@ const OrderDetail: FC = () => { setShowModalCancel(true)} /> diff --git a/src/app/profile/orders/page.tsx b/src/app/profile/orders/page.tsx index ea14e81..bf345a1 100644 --- a/src/app/profile/orders/page.tsx +++ b/src/app/profile/orders/page.tsx @@ -4,10 +4,11 @@ import { NextPage } from 'next' import React, { useState } from 'react' import Menu from '../components/Menu' import { useGetOrders, useGetReturnOrder } from './hooks/useOrdersData' -import { Order, ReturnOrder, OrdersStatus } from './types/Types' +import { Order, ReturnOrder } from './types/Types' import OrderTabs from './components/OrderTabs' import OrderItem from './components/OrderItem' import ReturnOrderItem from './components/ReturnOrderItem' +import { getStatusText } from '@/config/func' const Orders: NextPage = () => { @@ -17,17 +18,7 @@ const Orders: NextPage = () => { const { data: returnOrderData } = useGetReturnOrder(); // تابع تبدیل وضعیت به فارسی - const getStatusText = (status: string) => { - const statusMap: { [key: string]: string } = { - [OrdersStatus.wait_payment]: 'در انتظار پرداخت', - [OrdersStatus.process_by_seller]: 'در حال پردازش', - [OrdersStatus.shipped]: 'در حال ارسال', - [OrdersStatus.Delivered]: 'تحویل شده', - [OrdersStatus.Cancelled]: 'لغو شده', - [OrdersStatus.cancelled_system]: 'لغو شده توسط سیستم' - }; - return statusMap[status] || status; - }; + return (
diff --git a/src/config/func.ts b/src/config/func.ts index d8a3784..176531c 100644 --- a/src/config/func.ts +++ b/src/config/func.ts @@ -1,3 +1,4 @@ +import { OrdersStatus } from "@/app/profile/orders/types/Types"; import { TOKEN_NAME, REFRESH_TOKEN_NAME } from "./const"; export function isEmail(input: string): boolean { @@ -156,3 +157,15 @@ export function limitHtmlWords(htmlString: string, wordLimit: number): string { return result; } + +export const getStatusText = (status: string) => { + const statusMap: { [key: string]: string } = { + [OrdersStatus.wait_payment]: "در انتظار پرداخت", + [OrdersStatus.process_by_seller]: "در حال پردازش", + [OrdersStatus.shipped]: "در حال ارسال", + [OrdersStatus.Delivered]: "تحویل شده", + [OrdersStatus.Cancelled]: "لغو شده", + [OrdersStatus.cancelled_system]: "لغو شده توسط سیستم", + }; + return statusMap[status] || status; +};