diff --git a/src/pages/invoice/Detail.tsx b/src/pages/invoice/Detail.tsx index 7b8799d..a09ed0d 100644 --- a/src/pages/invoice/Detail.tsx +++ b/src/pages/invoice/Detail.tsx @@ -13,6 +13,7 @@ import type { InvoiceItem as ApiInvoiceItem } from './types/InvoiceTypes' import { Paths } from '@/config/Paths' import { useGetPaymentInvoice } from '../payment/hooks/usePaymentData' import InvoicePaymentList from './InvoicePaymentList' +import { formatItemDiscountDisplay } from './utils/invoiceItem' interface TableInvoiceItem extends RowDataType { id: string @@ -20,7 +21,8 @@ interface TableInvoiceItem extends RowDataType { title: string quantity: string unitPrice: string - discount: string + discountValue: string + discountPercent: string totalPrice: string confirmed: boolean confirmedAt: string | null @@ -57,17 +59,20 @@ const InvoiceDetail: FC = () => { : null const items: TableInvoiceItem[] = - invoice?.items?.map((item: ApiInvoiceItem) => ({ + invoice?.items?.map((item: ApiInvoiceItem) => { + const discounts = formatItemDiscountDisplay(item) + return { id: item.id, image: item.product?.images?.[0] ?? null, title: item.product?.title || '-', quantity: String(item.quantity), unitPrice: formatPrice(item.unitPrice), - discount: item.discount ? `${NumberFormat(item.discount)}٪` : '۰', + discountValue: discounts.value, + discountPercent: discounts.percent, totalPrice: formatPrice(item.total ?? 0), confirmed: !!item.confirmedAt, confirmedAt: item.confirmedAt, - })) ?? [] + }}) ?? [] const handlePrint = () => { window.print() @@ -97,8 +102,12 @@ const InvoiceDetail: FC = () => { title: 'مبلغ واحد', }, { - key: 'discount', - title: 'تخفیف', + key: 'discountValue', + title: 'تخفیف (مبلغ)', + }, + { + key: 'discountPercent', + title: 'تخفیف (درصد)', }, { key: 'totalPrice', @@ -253,10 +262,10 @@ const InvoiceDetail: FC = () => { جمع کل: {formatPrice(invoice.subTotal)} - {invoice.discount > 0 && ( + {(invoice.discount ?? 0) > 0 && (