supervisro tabel wip

This commit is contained in:
salam committed 2026-01-13 08:41:41 +01:00
1 parent f63ad0bc57
commit 6cf075709e
4 files changed
+97 -84

No files matched your search

@@ -17,18 +17,18 @@ class SupervisorForm
->relationship('provider', 'name')
->required()
->preload(),
Select::make('sport_id')
->relationship('sport', 'name')
->nullable(),
// Select::make('sport_id')
// ->relationship('sport', 'name')
// ->nullable(),
TextInput::make('sleep')->default(30),
TextInput::make('maxsconds')->label('Seconds till throwing an error')->default(1800),
Section::make('Run processes paralell for speed')
->description('Set start and end days if more processes grap the same data')
->schema([
TextInput::make('days_from')->columns(1)->default(0),
TextInput::make('days_to')->columns(1)->default(1),
])->columns(2)->columnSpanFull(),
// TextInput::make('sleep')->default(30),
// TextInput::make('maxsconds')->label('Seconds till throwing an error')->default(1800),
// Section::make('Run processes paralell for speed')
// ->description('Set start and end days if more processes grap the same data')
// ->schema([
// TextInput::make('days_from')->columns(1)->default(0),
// TextInput::make('days_to')->columns(1)->default(1),
// ])->columns(2)->columnSpanFull(),
]);
}
}
@@ -2,12 +2,14 @@
namespace App\Filament\Resources\Supervisors\Tables;
use App\Models\Sport;
use App\Models\Supervisor;
use Filament\Actions\BulkAction;
use Filament\Actions\BulkActionGroup;
use Filament\Actions\DeleteBulkAction;
use Filament\Actions\EditAction;
use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\Layout\Split;
use Filament\Tables\Columns\Layout\Stack;
use Filament\Tables\Columns\SelectColumn;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Columns\TextInputColumn;
@@ -26,62 +28,71 @@ class SupervisorsTable
->striped()
->poll('10s')
->columns([
TextColumn::make('id')->badge()->alignCenter(),
TextColumn::make('provider.name')->badge()
->color(fn ($record): string => match ($record->provider_id) {
1 => 'danger',
2 => 'success',
default => 'warning',
}),
SelectColumn::make('name')
->options(function ($record) {
switch ($record->provider_id) {
case 1:
case 3:
case 4:
case 5:
case 6:
return [
'Fixtures' => 'Fixtures',
'Odds' => 'Odds',
];
case 2:
return [
'Fixtures' => 'Fixtures',
'Odds' => 'Odds',
'Willhill' => 'Willhill',
'Bwin' => 'Bwin',
'Bet365' => 'Bet365',
'Betfair' => 'Betfair',
];
case 7:
return [
'Txodds Markets' => 'Txodds Markets',
];
default:
return [];
}
Split::make([
TextColumn::make('id')->badge()->alignCenter(),
TextColumn::make('provider.name')
->color(fn ($record): string => match ($record->provider_id) {
1 => 'danger',
2 => 'success',
default => 'warning',
}),
Stack::make([
SelectColumn::make('name')
->disablePlaceholderSelection()
->options(function ($record) {
switch ($record->provider_id) {
case 1:
case 3:
case 4:
case 5:
case 6:
return [
'Fixtures' => 'Fixtures',
'Odds' => 'Odds',
];
case 2:
return [
'Fixtures' => 'Fixtures',
'Odds' => 'Odds',
'Willhill' => 'Willhill',
'Bwin' => 'Bwin',
'Bet365' => 'Bet365',
'Betfair' => 'Betfair',
];
case 7:
return [
'Txodds Markets' => 'Txodds Markets',
];
default:
return [];
}
}),
TextColumn::make('sport.name')->label('Sport'),
TextColumn::make('days_from')->label('From'),
TextColumn::make('days_to')->label('To'),
TextInputColumn::make('sleep')->width('2rem'),
TextColumn::make('runtime')->label('Run Time'),
TextInputColumn::make('commandline_options')->width('2rem'),
}),
SelectColumn::make('sport_id')
->options(fn () => Sport::where('is_active', 1)->pluck('name', 'id'))
->placeholder('All'),
])->space(3),
// TextColumn::make('maxsconds')->label('Max Time'),
// IconColumn::make('is_supervisor')->boolean()->label('Cron')->falseColor('gray'),
ToggleColumn::make('use_lastcall')->label('Lastcall'),
ToggleColumn::make('is_supervisor')->label('Super')->tooltip('Create a supervisor process'),
ToggleColumn::make('is_active')->label('Active'),
Stack::make([
TextInputColumn::make('days_from')->prefix('Days Fm'),
TextInputColumn::make('days_to')->prefix('Days To'),
])->space(3),
Stack::make([
TextInputColumn::make('sleep')->prefix('Seep'),
TextInputColumn::make('commandline_options')->prefix('Bash'),
])->space(3),
ToggleColumn::make('use_lastcall')->label('Lastcall')->tooltip('Use last call parameter'),
ToggleColumn::make('is_supervisor')->label('Super')->tooltip('Run as supervisor'),
ToggleColumn::make('is_active')->label('Active')->tooltip(('On/Off'))->onColor('success'),
TextColumn::make('runtime')->label('Run Time')->badge(),
]),
])
->filters([
SelectFilter::make('provider_id')
->default(1)
->relationship('provider', 'name')
->label('Provider'),
TernaryFilter::make('is_supervisor'),
TernaryFilter::make('is_supervisor')->label('Run by supervisor'),
TernaryFilter::make('is_active'),
], layout: FiltersLayout::AboveContent)
->deferFilters(false)
+2 -1
View File
@@ -19,7 +19,8 @@ class ProvoiderSeeder extends Seeder
('3', 'MAGLOO KENIA'),
('4', 'MAGLOO NIGERIA'),
('5', 'LOGIFUTURE NIGERA'),
('6', 'LOGIFUTURE COLOMBIA');
('6', 'LOGIFUTURE COLOMBIA'),
('7', 'SERVICES');
";
DB::unprepared($sql);
+24 -23
View File
@@ -12,30 +12,31 @@ class SupervisorSeeder extends Seeder
/**
* Supervisor
*/
$sql = "INSERT INTO `supervisors` (`id`, `name`, `provider_id`, `sport_id`, `sleep`, `limit`, `runtime`, `maxsconds`, `lastcall`, `is_supervisor`, `is_active`, `days_from`, `days_to`, `created_at`, `updated_at`)
$sql = "INSERT INTO `supervisors` (`id`, `name`, `provider_id`, `sport_id`, `sleep`, `limit`, `runtime`, `commandline_options`, `maxsconds`, `lastcall`, `use_lastcall`, `is_supervisor`, `is_active`, `days_from`, `days_to`, `created_at`, `updated_at`)
VALUES
(1, 'Fixtures', 1, 1, 10, 0, '0.129', 1800, 0, 1, 1, 0, 0, '2025-08-27 07:39:55', '2026-01-09 08:15:55'),
(2, 'Odds', 1, 1, 10, 0, '0.251', 30, 0, 0, 1, 0, 10, '2025-12-01 05:41:02', '2026-01-08 17:56:27'),
(3, 'Fixtures', 2, 0, 15, 0, '0.133', 1800, 0, 1, 1, 0, 0, '2025-12-19 11:42:35', '2026-01-08 10:25:32'),
(4, 'Willhill', 2, 0, 15, 0, '2.119', 1800, 0, 1, 1, 0, 0, '2025-12-19 11:48:05', '2026-01-04 10:27:11'),
(5, 'Bwin', 2, 0, 15, 0, '0.084', 1800, 0, 1, 1, 0, 0, '2025-12-22 06:41:18', '2026-01-04 10:29:32'),
(6, 'Bet365', 2, 0, 10, 0, '0', 30, 0, 0, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-01 17:09:28'),
(7, 'Betfair', 2, 0, 10, 0, '0', 30, 0, 0, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-03 12:28:09'),
(8, 'Fixtures', 4, 0, 10, 0, '1.368', 30, 0, 1, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-03 12:24:52'),
(9, 'Odds', 4, 0, 15, 0, NULL, 1800, 0, 0, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-03 12:27:53'),
(10, 'Fixtures', 3, 0, 10, 0, '1.368', 30, 0, 1, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-03 12:24:52'),
(11, 'Odds', 3, 0, 15, 0, NULL, 1800, 0, 0, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-03 12:27:53'),
(12, 'Odds', 5, 1, 10, 0, '1.368', 30, 0, 0, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-05 06:22:27'),
(13, 'Odds', 5, 3, 15, 0, NULL, 1800, 0, 0, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-05 06:22:37'),
(14, 'Odds', 5, 2, 10, 0, '1.368', 30, 0, 0, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-05 06:22:51'),
(15, 'Odds', 5, 5, 15, 0, NULL, 1800, 0, 0, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-03 12:27:53'),
(16, 'Odds', 6, 1, 10, 0, '1.368', 30, 0, 0, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-05 06:22:27'),
(17, 'Odds', 6, 3, 15, 0, NULL, 1800, 0, 0, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-05 06:22:37'),
(18, 'Odds', 6, 2, 10, 0, '1.368', 30, 0, 0, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-05 06:22:51'),
(19, 'Odds', 6, 5, 15, 0, NULL, 30, 0, 0, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-03 12:27:53'),
(20, 'Odds', 1, 3, 15, 0, NULL, 30, 0, 0, 1, 0, 10, '2026-01-08 17:56:50', '2026-01-09 08:16:58'),
(21, 'Odds', 1, 2, 15, 0, NULL, 30, 0, 0, 1, 0, 10, '2026-01-08 17:57:14', '2026-01-09 08:16:59'),
(22, 'Odds', 1, 5, 15, 0, NULL, 30, 0, 0, 1, 0, 10, '2026-01-08 17:57:24', '2026-01-09 08:17:00');
(1, 'Fixtures', 1, 0, 10, 0, '0.14', NULL, 1800, 0, 0, 0, 1, 0, 0, '2025-08-27 07:39:55', '2026-01-13 06:06:47'),
(2, 'Odds', 1, 1, 10, 0, '0.251', NULL, 30, 0, 1, 1, 1, 0, 10, '2025-12-01 05:41:02', '2026-01-13 06:06:48'),
(3, 'Fixtures', 2, 0, 15, 0, '0.133', NULL, 1800, 0, 0, 0, 1, 0, 0, '2025-12-19 11:42:35', '2026-01-13 06:07:29'),
(4, 'Willhill', 2, 0, 15, 0, '2.119', NULL, 1800, 0, 0, 0, 1, 0, 0, '2025-12-19 11:48:05', '2026-01-13 06:07:33'),
(5, 'Bwin', 2, 0, 15, 0, '0.084', NULL, 1800, 0, 0, 0, 1, 0, 0, '2025-12-22 06:41:18', '2026-01-13 06:07:34'),
(6, 'Bet365', 2, 0, 10, 0, '0', NULL, 30, 0, 0, 1, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:07:35'),
(7, 'Betfair', 2, 0, 10, 0, '0', NULL, 30, 0, 0, 1, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:07:36'),
(8, 'Fixtures', 4, 0, 10, 0, '1.368', NULL, 30, 0, 0, 0, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:06:59'),
(9, 'Odds', 4, 0, 15, 0, NULL, NULL, 1800, 0, 0, 1, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-13 06:06:57'),
(10, 'Fixtures', 3, 0, 10, 0, '1.368', NULL, 30, 0, 0, 0, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:07:04'),
(11, 'Odds', 3, 0, 15, 0, NULL, NULL, 1800, 0, 0, 1, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-13 06:07:03'),
(12, 'Odds', 5, 1, 10, 0, '1.368', NULL, 30, 0, 0, 1, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:07:15'),
(13, 'Odds', 5, 3, 15, 0, NULL, NULL, 1800, 0, 0, 1, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-13 06:07:13'),
(14, 'Odds', 5, 2, 10, 0, '1.368', NULL, 30, 0, 0, 1, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:07:14'),
(15, 'Odds', 5, 5, 15, 0, NULL, NULL, 1800, 0, 0, 1, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-13 06:07:11'),
(16, 'Odds', 6, 1, 10, 0, '1.368', NULL, 30, 0, 0, 1, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:07:22'),
(17, 'Odds', 6, 3, 15, 0, NULL, NULL, 1800, 0, 0, 1, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-13 06:07:20'),
(18, 'Odds', 6, 2, 10, 0, '1.368', NULL, 30, 0, 0, 1, 1, 0, 0, '2025-12-18 17:44:33', '2026-01-13 06:07:20'),
(19, 'Odds', 6, 5, 15, 0, NULL, NULL, 30, 0, 0, 1, 1, 0, 0, '2026-01-03 12:27:44', '2026-01-13 06:07:19'),
(20, 'Odds', 1, 3, 15, 0, NULL, NULL, 30, 0, 0, 1, 1, 0, 10, '2026-01-08 17:56:50', '2026-01-13 06:06:49'),
(21, 'Odds', 1, 2, 15, 0, NULL, NULL, 30, 0, 0, 1, 1, 0, 10, '2026-01-08 17:57:14', '2026-01-13 06:06:50'),
(22, 'Odds', 1, 5, 15, 0, NULL, NULL, 30, 0, 0, 1, 1, 0, 10, '2026-01-08 17:57:24', '2026-01-13 06:06:51'),
(23, 'Txodds Markets', 7, NULL, 15, 0, '0.006', NULL, 1800, 0, 0, 0, 1, NULL, NULL, '2026-01-13 05:55:30', '2026-01-13 06:41:35');
";
DB::unprepared($sql);
}