wip
This commit is contained in:
1 parent
da7d4092ac
commit
0cf815c00f
39 files changed
+582
-1760
No files matched your search
@@ -3,20 +3,8 @@
|
||||
namespace App\Filament\Resources\Events\Tables;
|
||||
|
||||
use App\Filament\Resources\Events\Tables\Tools\LoadBettypeSettings;
|
||||
use App\Filament\Resources\Events\Tables\Tools\LoadMultilineBookmaker;
|
||||
use App\Filament\Tables\Columns\Column3way;
|
||||
use App\Filament\Tables\Columns\Column3wayHt;
|
||||
use App\Filament\Tables\Columns\ColumnDc;
|
||||
use App\Filament\Tables\Columns\ColumnDnb;
|
||||
use App\Filament\Tables\Columns\ColumnGgng;
|
||||
use App\Filament\Tables\Columns\ColumnMl;
|
||||
use App\Filament\Tables\Columns\ColumnMlS1;
|
||||
use App\Filament\Tables\Columns\ColumnPoint;
|
||||
use App\Filament\Tables\Columns\ColumnPointQ1;
|
||||
use App\Filament\Tables\Columns\ColumnTotal;
|
||||
use App\Filament\Tables\Columns\ColumnTotalHt;
|
||||
use App\Filament\Tables\Columns\ColumnTotalQ1;
|
||||
use App\Filament\Tables\Columns\ColumnTq;
|
||||
use App\Filament\Resources\Events\Tables\Tools\LoadMultiline;
|
||||
use App\Filament\Tables\Columns\ColumnOdds;
|
||||
use App\Filament\Tables\Columns\EventColumn;
|
||||
use App\Filament\Tables\Columns\MatchIds;
|
||||
use App\Filament\Tables\Columns\TooltipOdds;
|
||||
@@ -52,18 +40,20 @@ class EventsTable
|
||||
|
||||
public static $bettype_settings;
|
||||
|
||||
public static $multiline_bookmaker;
|
||||
public static $slots;
|
||||
|
||||
public static $filter;
|
||||
|
||||
public static function configure(Table $table): Table
|
||||
{
|
||||
self::$user = User::getUser();
|
||||
|
||||
self::$bettype_settings = LoadBettypeSettings::load();
|
||||
LoadBettypeSettings::load();
|
||||
|
||||
self::$multiline_bookmaker = LoadMultilineBookmaker::load();
|
||||
LoadMultiline::load();
|
||||
|
||||
return $table
|
||||
->poll('10s')
|
||||
// ->poll('10s')
|
||||
->striped()
|
||||
->deferLoading()
|
||||
->defaultPaginationPageOption(5)
|
||||
@@ -93,94 +83,83 @@ class EventsTable
|
||||
EventColumn::make('event'),
|
||||
|
||||
TooltipOdds::make('ml')->bettype('odds_2ways')->label('')->visible(fn () => in_array('odds_2ways', self::$bettype_settings)),
|
||||
ColumnMl::make('odds_2ways')->bookmakers(self::$multiline_bookmaker['odds_2ways'] ?? [])
|
||||
ColumnOdds::make('odds_2ways')->bettype('odds_2ways')
|
||||
->visible(fn () => in_array('odds_2ways', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('ML'),
|
||||
|
||||
TooltipOdds::make('mls1')->bettype('odds_2ways_s1')->label('')->visible(fn () => in_array('odds_2ways_s1', self::$bettype_settings)),
|
||||
ColumnMlS1::make('odds_2ways_s1')->bookmakers(self::$multiline_bookmaker['odds_2ways'] ?? [])
|
||||
ColumnOdds::make('odds_2ways_s1')->bettype('odds_2ways_s1')
|
||||
->visible(fn () => in_array('odds_2ways_s1', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('ML S1'),
|
||||
|
||||
TooltipOdds::make('1x2')->bettype('odds_3ways')->label('')->visible(fn () => in_array('odds_3ways', self::$bettype_settings)),
|
||||
Column3way::make('odds_3ways')->bookmakers(self::$multiline_bookmaker['odds_3ways'] ?? [])
|
||||
ColumnOdds::make('odds_3ways')->bettype('odds_3ways')
|
||||
->visible(fn () => in_array('odds_3ways', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('1X2'),
|
||||
|
||||
TooltipOdds::make('total')->bettype('odds_totals')->label('')->visible(fn () => in_array('odds_totals', self::$bettype_settings)),
|
||||
ColumnTotal::make('odds_totals')->bookmakers(self::$multiline_bookmaker['odds_totals'] ?? [])
|
||||
ColumnOdds::make('odds_totals')->bettype('odds_totals')
|
||||
->visible(fn () => in_array('odds_totals', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Totals'),
|
||||
|
||||
TooltipOdds::make('1x2ht')->bettype('odds_3ways_ht')->label('')->visible(fn () => in_array('odds_3ways_ht', self::$bettype_settings)),
|
||||
Column3wayHt::make('odds_3ways_ht')->bookmakers(self::$multiline_bookmaker['odds_3ways_ht'] ?? [])
|
||||
ColumnOdds::make('odds_3ways_ht')->bettype('odds_3ways_ht')
|
||||
->visible(fn () => in_array('odds_3ways_ht', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('1X2 HT'),
|
||||
|
||||
TooltipOdds::make('total_ht')->bettype('odds_totals_ht')->label('')->visible(fn () => in_array('odds_totals_ht', self::$bettype_settings)),
|
||||
ColumnTotalHt::make('odds_totals_ht')->bookmakers(self::$multiline_bookmaker['odds_totals_ht'] ?? [])
|
||||
ColumnOdds::make('odds_totals_ht')->bettype('odds_totals_ht')
|
||||
->visible(fn () => in_array('odds_totals_ht', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Totals HT'),
|
||||
|
||||
TooltipOdds::make('ggng')->bettype('odds_ggng')->label('')->visible(fn () => in_array('odds_ggng', self::$bettype_settings)),
|
||||
ColumnGgng::make('odds_ggng')->bookmakers(self::$multiline_bookmaker['odds_ggng'] ?? [])
|
||||
ColumnOdds::make('odds_ggng')->bettype('odds_ggng')
|
||||
->visible(fn () => \in_array('odds_ggng', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Goal No Goal'),
|
||||
|
||||
TooltipOdds::make('points')->bettype('odds_points')->label('')->visible(fn () => in_array('odds_points', self::$bettype_settings)),
|
||||
ColumnPoint::make('odds_points')->bookmakers(self::$multiline_bookmaker['odds_points'] ?? [])
|
||||
ColumnOdds::make('odds_points')->bettype('odds_points')
|
||||
->width(240)
|
||||
->visible(fn () => in_array('odds_points', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Points'),
|
||||
|
||||
TooltipOdds::make('total_q1')->bettype('odds_totals_q1')->label('')->visible(fn () => in_array('odds_totals_q1', self::$bettype_settings)),
|
||||
ColumnTotalQ1::make('odds_totals_q1')->bookmakers(self::$multiline_bookmaker['odds_totals_q1'] ?? [])
|
||||
ColumnOdds::make('odds_totals_q1')->bettype('odds_totals_q1')
|
||||
->visible(fn () => in_array('odds_totals_q1', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Totals Q1'),
|
||||
|
||||
TooltipOdds::make('points_q1')->bettype('odds_points_q1')->label('')->visible(fn () => in_array('odds_points_q1', self::$bettype_settings)),
|
||||
ColumnPointQ1::make('odds_points_q1')->bookmakers(self::$multiline_bookmaker['odds_points_q1'] ?? [])
|
||||
ColumnOdds::make('odds_points_q1')->bettype('odds_points_q1')
|
||||
->visible(fn () => in_array('odds_points_q1', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Points Q1'),
|
||||
|
||||
TooltipOdds::make('dc')->bettype('odds_dc')->label('')->visible(fn () => in_array('odds_dc', self::$bettype_settings)),
|
||||
ColumnDc::make('odds_dc')->bookmakers(self::$multiline_bookmaker['odds_dc'] ?? [])
|
||||
ColumnOdds::make('odds_dc')->bettype('odds_dc')
|
||||
->visible(fn () => \in_array('odds_dc', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Double Chance'),
|
||||
|
||||
TooltipOdds::make('tq')->bettype('odds_tq')->label('')->visible(fn () => in_array('odds_tq', self::$bettype_settings)),
|
||||
ColumnTq::make('odds_tq')->bookmakers(self::$multiline_bookmaker['odds_tq'] ?? [])
|
||||
ColumnOdds::make('odds_tq')->bettype('odds_tq')
|
||||
->visible(fn () => \in_array('odds_tq', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('To Qualify'),
|
||||
|
||||
TooltipOdds::make('dnb')->bettype('odds_dnb')->label('')->visible(fn () => in_array('odds_dnb', self::$bettype_settings)),
|
||||
ColumnDnb::make('odds_dnb')->bookmakers(self::$multiline_bookmaker['odds_dnb'] ?? [])
|
||||
ColumnOdds::make('odds_dnb')->bettype('odds_dnb')
|
||||
->visible(fn () => \in_array('odds_dnb', self::$bettype_settings))
|
||||
->verticalAlignment(VerticalAlignment::Start)
|
||||
->alignCenter()
|
||||
->label('Draw No Bet'),
|
||||
|
||||
])->searchable(['id', 'home.name', 'away.name', 'betsapi_id', 'betradar_id', 'bet365_id', 'bwin_id', 'magnig_id', 'magken_id', 'lognig_id', 'logcol_id'])
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace App\Filament\Resources\Events\Tables\Tools;
|
||||
|
||||
use App\Filament\Resources\Events\Tables\EventsTable;
|
||||
use App\Models\BettypeUser;
|
||||
|
||||
class LoadBettypeSettings
|
||||
@@ -18,6 +19,6 @@ class LoadBettypeSettings
|
||||
$arr[] = $value->multiline_setting->table;
|
||||
}
|
||||
|
||||
return $arr;
|
||||
EventsTable::$bettype_settings = $arr;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Resources\Events\Tables\Tools;
|
||||
|
||||
use App\Filament\Resources\Events\Tables\EventsTable;
|
||||
use App\Models\ComparingBookmaker;
|
||||
use App\Models\MultilineClient;
|
||||
use App\Models\MultilineSetting;
|
||||
|
||||
class LoadMultiline
|
||||
{
|
||||
public static $user;
|
||||
|
||||
public static function load()
|
||||
{
|
||||
// if (EventsTable::$user->sport_id == 1) {
|
||||
// $cb = ComparingBookmaker::where('sport_id', 1)->where('client_bookmaker_id', EventsTable::$user->bookmaker_id)->orderBy('sorting')->select('bookmaker_id', 'time_lastcheck', 'margin_threshold', 'is_active')->get()->toArray();
|
||||
// } else {
|
||||
// $cb = ComparingBookmaker::where('sport_id', '!=', 1)->where('client_bookmaker_id', EventsTable::$user->bookmaker_id)->orderBy('sorting')->select('bookmaker_id', 'time_lastcheck', 'margin_threshold', 'is_active')->get()->toArray();
|
||||
// }
|
||||
|
||||
$cb = ComparingBookmaker::where('sport_id', EventsTable::$user->sport_id)->where('client_bookmaker_id', EventsTable::$user->bookmaker_id)->orderBy('sorting')->select('bookmaker_id', 'time_lastcheck', 'margin_threshold', 'is_active')->get()->toArray();
|
||||
|
||||
$bookmakers = [];
|
||||
$filter = [];
|
||||
foreach ($cb as $value) {
|
||||
$bookmakers[] = $value['bookmaker_id'];
|
||||
$filter[$value['bookmaker_id']] = [
|
||||
'time_lastcheck' => $value['time_lastcheck'],
|
||||
'margin' => $value['margin_threshold'],
|
||||
];
|
||||
}
|
||||
|
||||
$res = MultilineSetting::where('sport_id', EventsTable::$user->sport_id)->get();
|
||||
|
||||
foreach ($res as $value) {
|
||||
EventsTable::$filter[$value->table] = $filter;
|
||||
if (EventsTable::$user->is_multiline_direct) {
|
||||
EventsTable::$slots[$value->table] = $bookmakers;
|
||||
array_unshift(EventsTable::$slots[$value->table], EventsTable::$user->bookmaker_id);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (! EventsTable::$user->is_multiline_direct) {
|
||||
$res = MultilineClient::with('multiline_setting')
|
||||
->select('bookmaker_id', 'multiline_setting_id')
|
||||
->orderBy('sort')
|
||||
->get();
|
||||
|
||||
foreach ($res as $value) {
|
||||
$table = $value->multiline_setting->table;
|
||||
|
||||
if (! isset(EventsTable::$slots[$table])) {
|
||||
EventsTable::$slots[$table][] = (int) EventsTable::$user->bookmaker_id;
|
||||
}
|
||||
EventsTable::$slots[$table][] = (int) $value->bookmaker_id;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,66 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Resources\Events\Tables\Tools;
|
||||
|
||||
use App\Models\ComparingBookmaker;
|
||||
use App\Models\MultilineClient;
|
||||
use App\Models\MultilineSetting;
|
||||
use App\Models\User;
|
||||
|
||||
class LoadMultilineBookmaker
|
||||
{
|
||||
public static $user;
|
||||
|
||||
public static function load()
|
||||
{
|
||||
self::$user = User::getUser();
|
||||
|
||||
$arr = [];
|
||||
|
||||
// if (self::$user->sport_id == 1) {
|
||||
// $cb = ComparingBookmaker::where('sport_id', 1)->where('client_bookmaker_id', self::$user->bookmaker_id)->orderBy('sorting')->select('bookmaker_id', 'time_lastcheck', 'margin_threshold', 'is_active')->get()->toArray();
|
||||
// } else {
|
||||
// $cb = ComparingBookmaker::where('sport_id', '!=', 1)->where('client_bookmaker_id', self::$user->bookmaker_id)->orderBy('sorting')->select('bookmaker_id', 'time_lastcheck', 'margin_threshold', 'is_active')->get()->toArray();
|
||||
// }
|
||||
|
||||
$cb = ComparingBookmaker::where('sport_id', self::$user->sport_id)->where('client_bookmaker_id', self::$user->bookmaker_id)->orderBy('sorting')->select('bookmaker_id', 'time_lastcheck', 'margin_threshold', 'is_active')->get()->toArray();
|
||||
|
||||
$bookmakers = [];
|
||||
$filter = [];
|
||||
foreach ($cb as $value) {
|
||||
$bookmakers[] = $value['bookmaker_id'];
|
||||
$filter[$value['bookmaker_id']] = [
|
||||
'time_lastcheck' => $value['time_lastcheck'],
|
||||
'margin' => $value['margin_threshold'],
|
||||
];
|
||||
}
|
||||
|
||||
$res = MultilineSetting::where('sport_id', self::$user->sport_id)->get();
|
||||
|
||||
foreach ($res as $value) {
|
||||
$arr[$value->table]['filter'] = $filter;
|
||||
$arr[$value->table]['bookmaker'] = $bookmakers;
|
||||
if (auth()->user()->is_multiline_direct) {
|
||||
$arr[$value->table]['slots'] = $bookmakers;
|
||||
}
|
||||
}
|
||||
|
||||
if (! auth()->user()->is_multiline_direct) {
|
||||
$res = MultilineClient::with('multiline_setting')
|
||||
->select('bookmaker_id', 'multiline_setting_id')
|
||||
->orderBy('sort')
|
||||
->get();
|
||||
|
||||
foreach ($res as $value) {
|
||||
$table = $value->multiline_setting->table;
|
||||
$arr[$table]['slots'][] = (int) self::$user->bookmaker_id;
|
||||
}
|
||||
foreach ($res as $value) {
|
||||
$table = $value->multiline_setting->table;
|
||||
$arr[$table]['slots'][] = (int) $value->bookmaker_id;
|
||||
}
|
||||
}
|
||||
|
||||
return $arr;
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user