make all like slectet in multiline

This commit is contained in:
salam committed 2026-02-08 16:35:53 +01:00
1 parent 08c674438a
commit 3317ac1d56
2 files changed
+20 -1

No files matched your search

@@ -63,7 +63,7 @@ class EventsTable
return $table
->striped()
// ->poll('10s')
->poll('10s')
->deferLoading()
->defaultPaginationPageOption(4)
->extremePaginationLinks()
+19
View File
@@ -6,6 +6,7 @@ use App\Filament\Tables\Columns\BookmakerIcon;
use App\Models\Bookmaker;
use App\Models\MultilineClient;
use App\Models\MultilineSetting;
use Filament\Actions\Action;
use Filament\Actions\Concerns\InteractsWithActions;
use Filament\Actions\Contracts\HasActions;
use Filament\Forms\Components\Radio;
@@ -29,6 +30,8 @@ class MultilineBookmaker extends Component implements HasActions, HasSchemas, Ha
use InteractsWithSchemas;
use InteractsWithTable;
public $option_selected = 0;
protected $listeners = [
'refreshMultilineBookmaker' => '$refresh',
];
@@ -61,6 +64,19 @@ class MultilineBookmaker extends Component implements HasActions, HasSchemas, Ha
])
->defaultSort('sort')
->deferFilters(false)
->headerActions([
Action::make(name: 'make_all_like_selected')->action(function () {
$res = MultilineClient::where('sport_id', auth()->user()->sport_id)
->where('client_bookmaker_id', auth()->user()->bookmaker_id)
->where('multiline_setting_id', $this->option_selected)->get();
foreach ($res as $value) {
MultilineClient::where('sport_id', auth()->user()->sport_id)
->where('client_bookmaker_id', auth()->user()->bookmaker_id)
->where('position', $value->position)
->update(['bookmaker_id' => $value->bookmaker_id]);
}
}),
])
->filters([
Filter::make('multiline_setting_id')
->schema([
@@ -74,6 +90,9 @@ class MultilineBookmaker extends Component implements HasActions, HasSchemas, Ha
->options(fn () => MultilineSetting::where('sport_id', auth()->user()->sport_id)->orderBy('name')->pluck('name', 'id')),
])
->query(function (Builder $query, array $data): Builder {
$this->option_selected = $data['multiline_setting_id'];
return $query
->when(
$data['multiline_setting_id'],