Add status filter
This commit is contained in:
49
app/Nova/Filters/StatusFilter.php
Normal file
49
app/Nova/Filters/StatusFilter.php
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Nova\Filters;
|
||||||
|
|
||||||
|
use App\Repos\Order\OrderRepo;
|
||||||
|
use Laravel\Nova\Filters\Filter;
|
||||||
|
use Laravel\Nova\Http\Requests\NovaRequest;
|
||||||
|
|
||||||
|
class StatusFilter extends Filter
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* The filter's component.
|
||||||
|
*
|
||||||
|
* @var string
|
||||||
|
*/
|
||||||
|
public $component = 'select-filter';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the displayable name of the filter.
|
||||||
|
*/
|
||||||
|
public function name(): string
|
||||||
|
{
|
||||||
|
return __('Status Filter');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Apply the filter to the given query.
|
||||||
|
*
|
||||||
|
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
|
||||||
|
* @param \Illuminate\Database\Eloquent\Builder $query
|
||||||
|
* @param mixed $value
|
||||||
|
* @return \Illuminate\Database\Eloquent\Builder
|
||||||
|
*/
|
||||||
|
public function apply(NovaRequest $request, $query, $value)
|
||||||
|
{
|
||||||
|
return $query;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the filter's available options.
|
||||||
|
*
|
||||||
|
* @param \Laravel\Nova\Http\Requests\NovaRequest $request
|
||||||
|
* @return array
|
||||||
|
*/
|
||||||
|
public function options(NovaRequest $request): array
|
||||||
|
{
|
||||||
|
return array_flip(OrderRepo::statusValues());
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -7,6 +7,7 @@ use App\Models\Order\Loan\LoanOrder as LoanOrderModel;
|
|||||||
use App\Models\System\Location\Province;
|
use App\Models\System\Location\Province;
|
||||||
use App\Nova\Filters\ActiveFilter;
|
use App\Nova\Filters\ActiveFilter;
|
||||||
use App\Nova\Filters\RegionFilter;
|
use App\Nova\Filters\RegionFilter;
|
||||||
|
use App\Nova\Filters\StatusFilter;
|
||||||
use App\Nova\Resource;
|
use App\Nova\Resource;
|
||||||
use App\Nova\Resources\Order\Loan\Concerns\LoanOrderEvents;
|
use App\Nova\Resources\Order\Loan\Concerns\LoanOrderEvents;
|
||||||
use App\Nova\Resources\Order\Loan\Concerns\LoanOrderFieldsForDetail;
|
use App\Nova\Resources\Order\Loan\Concerns\LoanOrderFieldsForDetail;
|
||||||
@@ -359,6 +360,7 @@ class LoanOrder extends Resource
|
|||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
new RegionFilter(),
|
new RegionFilter(),
|
||||||
|
new StatusFilter(),
|
||||||
new ActiveFilter(),
|
new ActiveFilter(),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,9 +15,11 @@ return new class extends Migration
|
|||||||
$table->id();
|
$table->id();
|
||||||
$table->string('name');
|
$table->string('name');
|
||||||
$table->string('email')->unique();
|
$table->string('email')->unique();
|
||||||
|
$table->string('phone')->nullable()->unique();
|
||||||
$table->timestamp('email_verified_at')->nullable();
|
$table->timestamp('email_verified_at')->nullable();
|
||||||
$table->string('password');
|
$table->string('password');
|
||||||
$table->string('locale')->default('tk');
|
$table->string('locale')->default('tk');
|
||||||
|
$table->boolean('active')->default(true);
|
||||||
$table->rememberToken();
|
$table->rememberToken();
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user