43 lines
1.0 KiB
PHP
43 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Datatables\Admin\Shop;
|
|
|
|
use App\Datatables\ParentDataTable as DataTable;
|
|
use App\Models\Shop\CustomerAddress;
|
|
use Yajra\DataTables\Html\Column;
|
|
|
|
class CustomerAddressesDataTable extends DataTable
|
|
{
|
|
public $model_name = 'customer_addresses';
|
|
|
|
public function __construct()
|
|
{
|
|
$this->url = route('Admin.Shop.CustomerAddresses.index');
|
|
}
|
|
|
|
public function query(CustomerAddress $model)
|
|
{
|
|
$model = self::filterByCustomer($model);
|
|
|
|
return $this->buildQuery($model);
|
|
}
|
|
|
|
public static function filterByCustomer($model, $customerId = false)
|
|
{
|
|
$customerId = $customerId ? $customerId : self::isFilteredByField('customer_id');
|
|
|
|
return $customerId ? $model->byCustomer($customerId) : $model;
|
|
}
|
|
|
|
|
|
protected function getColumns()
|
|
{
|
|
return [
|
|
Column::make('address')->title('Adresse'),
|
|
Column::make('zipcode')->title('Code postal'),
|
|
Column::make('city')->title('Ville'),
|
|
$this->makeColumnButtons(),
|
|
];
|
|
}
|
|
}
|