Files
InvoiceShelf/app/Exports/Concerns/MapsAddressColumns.php
2026-06-04 17:20:00 +02:00

49 lines
1.1 KiB
PHP

<?php
namespace App\Exports\Concerns;
use App\Models\Address;
trait MapsAddressColumns
{
/**
* @return array<int, string>
*/
protected static function addressRow(?Address $address): array
{
if (! $address) {
return array_fill(0, 9, '');
}
return [
$address->name ?? '',
$address->address_street_1 ?? '',
$address->address_street_2 ?? '',
$address->city ?? '',
$address->state ?? '',
$address->zip ?? '',
$address->country?->name ?? '',
$address->country?->code ?? '',
$address->phone ?? '',
];
}
/**
* @return array<int, string>
*/
protected static function addressHeaders(string $prefix): array
{
return [
"{$prefix}_name",
"{$prefix}_street_1",
"{$prefix}_street_2",
"{$prefix}_city",
"{$prefix}_state",
"{$prefix}_zip",
"{$prefix}_country",
"{$prefix}_country_code",
"{$prefix}_phone",
];
}
}