diff --git a/src/pages/Customer/components/CustomerSummaryTable.vue b/src/pages/Customer/components/CustomerSummaryTable.vue index f6013dea9..ff1474fb9 100644 --- a/src/pages/Customer/components/CustomerSummaryTable.vue +++ b/src/pages/Customer/components/CustomerSummaryTable.vue @@ -101,7 +101,7 @@ const columns = computed(() => [ align: 'left', name: 'itemPackingTypeFk', label: t('ticketSale.packaging'), - format: (row) => getItemPackagingType(row), + format: (row) => getItemPackagingType(row.ticketSales), }, { align: 'right', @@ -151,13 +151,18 @@ const setShippedColor = (date) => { if (difference < 0) return 'success'; }; -const getItemPackagingType = (row) => { - const packagingType = row?.ticketSales - .map((sale) => sale.item?.itemPackingTypeFk || '-') - .filter((value) => value !== '-') - .join(', '); +const getItemPackagingType = (ticketSales) => { + if (!ticketSales || ticketSales.length === 0) return '-'; - return dashIfEmpty(packagingType); + const packagingTypes = ticketSales + .map((sale) => sale.item?.itemPackingTypeFk) + .filter((type) => type !== undefined && type !== null); + + const uniquePackagingTypes = [...new Set(packagingTypes)]; + + return dashIfEmpty( + uniquePackagingTypes.length > 0 ? uniquePackagingTypes.join(', ') : '-' + ); };