@@ -14,11 +14,6 @@ import moment from 'moment-jalaali'
|
||||
import StatusWithText from '@/components/StatusWithText'
|
||||
import { Eye } from 'iconsax-react'
|
||||
|
||||
const getConfirmStatus = (invoice: Invoice): 'confirmed' | 'not_confirmed' => {
|
||||
const allConfirmed = invoice.items.length > 0 && invoice.items.every((item) => item.confirmedAt !== null)
|
||||
return allConfirmed ? 'confirmed' : 'not_confirmed'
|
||||
}
|
||||
|
||||
const getServiceNames = (invoice: Invoice): string => {
|
||||
const names = [...new Set(invoice.items.map((item) => item.product.title))]
|
||||
return names.join('، ') || '-'
|
||||
@@ -37,9 +32,9 @@ const ProformaInvoice: FC = () => {
|
||||
|
||||
// فیلتر تب
|
||||
if (activeTab === ProformaInvoiceStatusEnum.NOT_CONFIRMED) {
|
||||
result = result.filter((inv) => getConfirmStatus(inv) === 'not_confirmed')
|
||||
result = result.filter((inv) => inv.confirmStatus === 'pending')
|
||||
} else if (activeTab === ProformaInvoiceStatusEnum.CONFIRMED) {
|
||||
result = result.filter((inv) => getConfirmStatus(inv) === 'confirmed')
|
||||
result = result.filter((inv) => inv.confirmStatus === 'confirmed')
|
||||
}
|
||||
|
||||
// فیلتر جستجو
|
||||
@@ -97,11 +92,11 @@ const ProformaInvoice: FC = () => {
|
||||
key: 'confirmStatus',
|
||||
title: 'وضعیت تایید',
|
||||
render: (item) => {
|
||||
const status = getConfirmStatus(item)
|
||||
const confirmed = item.confirmStatus === 'confirmed'
|
||||
return (
|
||||
<StatusWithText
|
||||
variant={status === 'confirmed' ? 'success' : 'warning'}
|
||||
text={status === 'confirmed' ? 'تایید شده' : 'تایید نشده'}
|
||||
variant={confirmed ? 'success' : 'warning'}
|
||||
text={confirmed ? 'تایید شده' : 'تایید نشده'}
|
||||
/>
|
||||
)
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user