new: display the default address checkbox on profile load

This commit is contained in:
Valentin Lab
2025-10-04 11:44:04 +02:00
parent e69487f73e
commit 8d8528f6fb
5 changed files with 18 additions and 1 deletions

View File

@@ -106,6 +106,7 @@ class CustomerController extends Controller
'address' => $address->toArray(),
'prefix' => $prefix,
'with_name' => true,
'selected' => $address->id,
])->render();
return response()->json([

View File

@@ -6,6 +6,7 @@ use App\Datatables\Shop\CustomerInvoicesDataTable;
use App\Datatables\Shop\CustomerOrdersDataTable;
use App\Models\Shop\Customer;
use App\Traits\Model\Basic;
use App\Repositories\Shop\CustomerAddresses;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Str;
@@ -95,6 +96,16 @@ class Customers
$data = $customer->toArray();
$data['sale_channels'] = $customer->sale_channels->pluck('id')->toArray();
$data['deliveries'] = Deliveries::getBySaleChannels($data['sale_channels'])->toArray();
$data['delivery_address_id'] = optional(CustomerAddresses::getDeliveryAddress($id))->id;
$data['invoice_address_id'] = optional(CustomerAddresses::getInvoiceAddress($id))->id;
if (! $data['delivery_address_id'] && ! empty($data['delivery_addresses'])) {
$data['delivery_address_id'] = $data['delivery_addresses'][0]['id'] ?? null;
}
if (! $data['invoice_address_id'] && ! empty($data['invoice_addresses'])) {
$data['invoice_address_id'] = $data['invoice_addresses'][0]['id'] ?? null;
}
return $data;
}

View File

@@ -24,6 +24,7 @@
'prefix' => 'deliveries',
'addresses' => $customer['delivery_addresses'],
'with_name' => true,
'selected' => $customer['delivery_address_id'] ?? null,
])
</x-card>
@@ -32,6 +33,7 @@
'prefix' => 'invoices',
'addresses' => $customer['invoice_addresses'],
'with_name' => true,
'selected' => $customer['invoice_address_id'] ?? null,
])
</x-card>

View File

@@ -2,8 +2,10 @@
<div class="col-1">
@php
$inputName = isset($prefix) && $prefix ? $prefix.'[address_id]' : 'address_id';
$currentValue = $selected ?? null;
@endphp
<x-form.radios.icheck name="{{ $inputName }}" val="{{ $address['id'] }}" id="address_{{ $address['id'] }}" />
<x-form.radios.icheck name="{{ $inputName }}" val="{{ $address['id'] }}"
:value="$currentValue" id="address_{{ $address['id'] }}" />
</div>
<div class="col-10">
@if ($with_name ?? false)

View File

@@ -4,6 +4,7 @@
'address' => $address,
'prefix' => $prefix ?? null,
'with_name' => $with_name ?? false,
'selected' => $selected ?? null,
])
@endforeach
</div>