comp wip
This commit is contained in:
1 parent
391bd1d1f3
commit
26bf5359bc
14 files changed
+256
-235
No files matched your search
@@ -4,6 +4,10 @@ namespace App\Console\Commands\Grapper\TxOdds;
|
||||
|
||||
use App\Console\Commands\Grapper\TxOdds\Odds\_3Way;
|
||||
use App\Console\Commands\Grapper\TxOdds\Odds\_Dc;
|
||||
use App\Console\Commands\Grapper\TxOdds\Odds\_Dnb;
|
||||
use App\Console\Commands\Grapper\TxOdds\Odds\_Ggng;
|
||||
use App\Console\Commands\Grapper\TxOdds\Odds\_Totals;
|
||||
use App\Console\Commands\Grapper\TxOdds\Odds\_Tq;
|
||||
use App\Console\Commands\NuhBash;
|
||||
use App\Console\Commands\Xml;
|
||||
use App\Models\CompetitionGroup;
|
||||
@@ -11,12 +15,6 @@ use App\Models\Element;
|
||||
use App\Models\Event;
|
||||
use App\Models\EventBookmaker;
|
||||
use App\Models\Group;
|
||||
use App\Models\Odds2way;
|
||||
use App\Models\Odds3way;
|
||||
use App\Models\OddsDc;
|
||||
use App\Models\OddsGgng;
|
||||
use App\Models\OddsQualify;
|
||||
use App\Models\OddsTotal;
|
||||
use App\Utilities\Notice;
|
||||
use Carbon\Carbon;
|
||||
|
||||
@@ -59,6 +57,7 @@ class Odds
|
||||
11534337 GG/NG (both teams to score)
|
||||
5242880 DOUBLE CHANCE
|
||||
7340033 TO PROGRESS (to_qualify)
|
||||
6291457 DRAW NO BET
|
||||
|
||||
Not used:
|
||||
|
||||
@@ -71,7 +70,6 @@ class Odds
|
||||
|
||||
2097153 ODD / EVEN
|
||||
4194304 TOTAL GOALS
|
||||
6291457 DRAW NO BET
|
||||
8388608 1X2 EURO HANDCIAP
|
||||
9437188 TOTAL CORNERS
|
||||
9502724 TOTAL CORNERS 1ST HALF
|
||||
@@ -85,7 +83,7 @@ class Odds
|
||||
|
||||
switch (NuhBash::$options['sport_id']) {
|
||||
case 1:
|
||||
$markets = '0,4,11534337,5242880,7340033';
|
||||
$markets = '0,4,11534337,5242880,7340033,6291457';
|
||||
break;
|
||||
case 2:
|
||||
// needs check
|
||||
@@ -184,7 +182,10 @@ class Odds
|
||||
foreach ($row->bookmaker as $book) {
|
||||
|
||||
$odds = [];
|
||||
$odds['event_id'] = NuhBash::$_event->id;
|
||||
$odds['bookmaker_id'] = (int) $book['bid'];
|
||||
$odds['sport_id'] = (int) $event['sport_id'];
|
||||
$odds['provider_id'] = 2;
|
||||
|
||||
NuhBash::$_event_bookmaker = [];
|
||||
|
||||
@@ -209,15 +210,25 @@ class Odds
|
||||
}
|
||||
}
|
||||
|
||||
Notice::note($bettypeid, 'b');
|
||||
|
||||
switch ($bettypeid) {
|
||||
case 0:
|
||||
_3Way::grap($odds, $offer);
|
||||
break;
|
||||
case 4:
|
||||
_Totals::grap($odds, $offer);
|
||||
break;
|
||||
case 5242880:
|
||||
_Dc::grap($odds, $offer);
|
||||
break;
|
||||
case 6291457:
|
||||
_Dnb::grap($odds, $offer);
|
||||
break;
|
||||
case 11534337:
|
||||
_Ggng::grap($odds, $offer);
|
||||
break;
|
||||
case 7340033:
|
||||
_Tq::grap($odds, $offer);
|
||||
break;
|
||||
|
||||
default:
|
||||
Notice::note('ERROR Bettype ID not set: '.$bettypeid, 'r');
|
||||
@@ -227,10 +238,6 @@ class Odds
|
||||
|
||||
foreach (NuhBash::$_event_bookmaker as $value) {
|
||||
|
||||
if ($debug) {
|
||||
Notice::note('Event Bookmaker', 'b');
|
||||
}
|
||||
|
||||
EventBookmaker::updateOrCreate([
|
||||
'event_id' => NuhBash::$_event->id,
|
||||
'bookmaker_id' => $odds['bookmaker_id'],
|
||||
@@ -244,213 +251,9 @@ class Odds
|
||||
}
|
||||
}
|
||||
|
||||
// foreach ($json_obj['match'] as $match) {
|
||||
|
||||
// self::$event = [];
|
||||
|
||||
// foreach ($match as $key => $v) {
|
||||
|
||||
// // if ($debug) {
|
||||
// // Notice::note($key, 'b');
|
||||
// // }
|
||||
|
||||
// switch ($key) {
|
||||
|
||||
// case '@attributes':
|
||||
// self::$event['id'] = (int) $v['id'];
|
||||
// break;
|
||||
|
||||
// case 'time':
|
||||
// self::$event['starttime'] = Carbon::createFromDate($v)->toDateTimeString();
|
||||
// break;
|
||||
|
||||
// case 'group':
|
||||
|
||||
// self::$event['sport_id'] = (int) $v['@attributes']['spid'];
|
||||
// self::$event['country_id'] = (int) $v['@attributes']['cnid'];
|
||||
// self::$event['group_id'] = (int) $v['@attributes']['id'];
|
||||
// self::$event['competition_group_id'] = (int) $v['@attributes']['cgid'];
|
||||
// break;
|
||||
|
||||
// case 'hteam':
|
||||
// self::$event['home_id'] = $v['@attributes']['id'];
|
||||
// break;
|
||||
|
||||
// case 'ateam':
|
||||
// self::$event['away_id'] = $v['@attributes']['id'];
|
||||
// break;
|
||||
|
||||
// case 'bookmaker':
|
||||
|
||||
// Event::updateOrCreate(self::$event, ['starttime' => self::$event['starttime']]);
|
||||
|
||||
// Notice::note(count($v), 'r');
|
||||
|
||||
// if (count($v) <= 2) {
|
||||
// $bkmid = (int) $v['@attributes']['bid'];
|
||||
// Notice::note($v, 'p');
|
||||
// } else {
|
||||
// foreach ($v as $books) {
|
||||
|
||||
// Notice::note($books, 'b');
|
||||
|
||||
// $bkmid = (int) $books['@attributes']['bid'];
|
||||
|
||||
// // foreach ($books['offer'] as $bk => $book) {
|
||||
|
||||
// // if ($bkmid) {
|
||||
// // foreach ($book as $type => $od) {
|
||||
|
||||
// // switch ($type) {
|
||||
// // case '@attributes':
|
||||
// // $bettypeid = (int) $od['ot'];
|
||||
// // $bmoid = (int) $od['bmoid'];
|
||||
// // break;
|
||||
// // case 'odds':
|
||||
// // switch ($bettypeid) {
|
||||
// // case '0':
|
||||
// // Odds3way::updateOrCreate(
|
||||
// // [
|
||||
// // 'event_id' => $event->id,
|
||||
// // 'bookmaker_id' => $bkmid,
|
||||
// // 'sport_id' => NuhBash::$options['sport_id'],
|
||||
// // ],
|
||||
// // [
|
||||
// // 'h3w' => (float) $od['o1'],
|
||||
// // 'd3w' => (float) $od['o2'],
|
||||
// // 'a3w' => (float) $od['o3'],
|
||||
// // 'margin' => (float) Helper::margin([$od['o1'], $od['o2'], $od['o3']], 1),
|
||||
// // 'flag' => 1,
|
||||
// // 'nuh_check' => 0,
|
||||
// // 'source_updated_at' => $od['@attributes']['time'],
|
||||
// // 'last_check_at' => Carbon::now()->toDateTimeString(),
|
||||
// // ]
|
||||
// // );
|
||||
|
||||
// // EventBookmaker::updateOrCreate([
|
||||
// // 'event_id' => $event->id,
|
||||
// // 'bookmaker_id' => $bkmid,
|
||||
// // 'bmoid' => $bmoid,
|
||||
// // ], [
|
||||
// // 'bkm_starttime' => Carbon::createFromDate($od['@attributes']['starting_time'])->toDateTimeString(),
|
||||
// // 'last_check_at' => Carbon::now()->toDateTimeString(),
|
||||
// // ]);
|
||||
|
||||
// // break;
|
||||
|
||||
// // // case '1':
|
||||
// // // Odds2way::updateOrCreate(
|
||||
// // // [
|
||||
// // // 'event_id' => $event->id,
|
||||
// // // 'bookmaker_id' => $bkmid,
|
||||
// // // 'sport_id' => NuhBash::$options['sport_id'],
|
||||
// // // ],
|
||||
// // // [
|
||||
// // // 'h2w' => (float) $od['o1'],
|
||||
// // // 'a2w' => (float) $od['o3'],
|
||||
// // // 'margin' => (float) Helper::margin([$od['o1'], $od['o3']], 1),
|
||||
// // // 'flag' => 1,
|
||||
// // // 'nuh_check' => 0,
|
||||
// // // 'source_updated_at' => $od['@attributes']['time'],
|
||||
// // // 'last_check_at' => Carbon::now()->toDateTimeString(),
|
||||
// // // ]
|
||||
// // // );
|
||||
// // // break;
|
||||
|
||||
// // // case '4':
|
||||
// // // OddsTotal::updateOrCreate(
|
||||
// // // [
|
||||
// // // 'event_id' => $event->id,
|
||||
// // // 'bookmaker_id' => $bkmid,
|
||||
// // // 'sport_id' => NuhBash::$options['sport_id'],
|
||||
// // // 'spread' => (float) $od['o3'],
|
||||
// // // ],
|
||||
// // // [
|
||||
// // // 'over' => (float) $od['o1'],
|
||||
// // // 'under' => (float) $od['o2'],
|
||||
// // // 'margin' => (float) Helper::margin([$od['o1'], $od['o2'], $od['o3']], 1),
|
||||
// // // 'flag' => 1,
|
||||
// // // 'nuh_check' => 0,
|
||||
// // // 'source_updated_at' => $od['@attributes']['time'],
|
||||
// // // 'last_check_at' => Carbon::now()->toDateTimeString(),
|
||||
// // // ]
|
||||
// // // );
|
||||
// // // break;
|
||||
|
||||
// // // case '5242880':
|
||||
// // // OddsDc::updateOrCreate(
|
||||
// // // [
|
||||
// // // 'event_id' => $event->id,
|
||||
// // // 'bookmaker_id' => $bkmid,
|
||||
// // // 'sport_id' => NuhBash::$options['sport_id'],
|
||||
// // // ],
|
||||
// // // [
|
||||
// // // 'dc1x' => (float) $od['o1'],
|
||||
// // // 'dc12' => (float) $od['o2'],
|
||||
// // // 'dc2x' => (float) $od['o3'],
|
||||
// // // 'margin' => (float) Helper::margin([$od['o1'], $od['o2'], $od['o3']], 1),
|
||||
// // // 'flag' => 1,
|
||||
// // // 'nuh_check' => 0,
|
||||
// // // 'source_updated_at' => $od['@attributes']['time'],
|
||||
// // // 'last_check_at' => Carbon::now()->toDateTimeString(),
|
||||
// // // ]
|
||||
// // // );
|
||||
// // // break;
|
||||
|
||||
// // // case '11534337':
|
||||
// // // OddsGgng::updateOrCreate(
|
||||
// // // [
|
||||
// // // 'event_id' => $event->id,
|
||||
// // // 'bookmaker_id' => $bkmid,
|
||||
// // // 'sport_id' => NuhBash::$options['sport_id'],
|
||||
// // // ],
|
||||
// // // [
|
||||
// // // 'gg' => (float) $od['o1'],
|
||||
// // // 'ng' => (float) $od['o3'],
|
||||
// // // 'margin' => (float) Helper::margin([$od['o1'], $od['o3']], 1),
|
||||
// // // 'flag' => 1,
|
||||
// // // 'nuh_check' => 0,
|
||||
// // // 'source_updated_at' => $od['@attributes']['time'],
|
||||
// // // 'last_check_at' => Carbon::now()->toDateTimeString(),
|
||||
// // // ]
|
||||
// // // );
|
||||
// // // break;
|
||||
|
||||
// // // case '11534337':
|
||||
// // // OddsQualify::updateOrCreate(
|
||||
// // // [
|
||||
// // // 'event_id' => $event->id,
|
||||
// // // 'bookmaker_id' => $bkmid,
|
||||
// // // 'sport_id' => NuhBash::$options['sport_id'],
|
||||
// // // ],
|
||||
// // // [
|
||||
// // // 'htq' => (float) $od['o1'],
|
||||
// // // 'atq' => (float) $od['o2'],
|
||||
// // // 'margin' => (float) Helper::margin([$od['o1'], $od['o3']], 1),
|
||||
// // // 'flag' => 1,
|
||||
// // // 'nuh_check' => 0,
|
||||
// // // 'source_updated_at' => $od['@attributes']['time'],
|
||||
// // // 'last_check_at' => Carbon::now()->toDateTimeString(),
|
||||
// // // ]
|
||||
// // // );
|
||||
// // // break;
|
||||
// // }
|
||||
|
||||
// // break;
|
||||
// // }
|
||||
// // }
|
||||
// // break;
|
||||
// // }
|
||||
// // }
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
// }
|
||||
// Notice::note('END', 'r', 1);
|
||||
// }
|
||||
if ($debug) {
|
||||
Notice::note('END', 'g', 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -16,7 +16,7 @@ class _3Way
|
||||
$debug = NuhBash::$options['d'] ?? 0;
|
||||
|
||||
if ($debug) {
|
||||
Notice::note('Odds 3 Way', 'b');
|
||||
Notice::note('1X2 '.$odds['bookmaker_id'], 'b');
|
||||
}
|
||||
|
||||
$update_array = [];
|
||||
@@ -41,9 +41,6 @@ class _3Way
|
||||
$update_array['last_check_at'] = Carbon::now()->toDateTimeString();
|
||||
$update_array['source_updated_at'] = $odds['source_updated_at'];
|
||||
|
||||
Odds3way::updateOrCreate([
|
||||
'event_id' => NuhBash::$_event->id,
|
||||
'bookmaker_id' => $odds['bookmaker_id'],
|
||||
], $update_array);
|
||||
Odds3way::updateOrCreate($odds, $update_array);
|
||||
}
|
||||
}
|
||||
@@ -15,7 +15,7 @@ class _Dc
|
||||
$debug = NuhBash::$options['d'] ?? 0;
|
||||
|
||||
if ($debug) {
|
||||
Notice::note('Double Chance', 'b');
|
||||
Notice::note('Double Chance '.$odds['bookmaker_id'], 'b');
|
||||
}
|
||||
|
||||
$update_array = [];
|
||||
@@ -33,9 +33,6 @@ class _Dc
|
||||
$update_array['last_check_at'] = Carbon::now()->toDateTimeString();
|
||||
$update_array['source_updated_at'] = $odds['source_updated_at'];
|
||||
|
||||
OddsDc::updateOrCreate([
|
||||
'event_id' => NuhBash::$_event->id,
|
||||
'bookmaker_id' => $odds['bookmaker_id'],
|
||||
], $update_array);
|
||||
OddsDc::updateOrCreate($odds, $update_array);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands\Grapper\TxOdds\Odds;
|
||||
|
||||
use App\Console\Commands\NuhBash;
|
||||
use App\Models\OddsDnb;
|
||||
use App\Utilities\Margin;
|
||||
use App\Utilities\Notice;
|
||||
use Illuminate\Support\Carbon;
|
||||
|
||||
class _Dnb
|
||||
{
|
||||
public static function grap($odds, $offer)
|
||||
{
|
||||
$debug = NuhBash::$options['d'] ?? 0;
|
||||
|
||||
if ($debug) {
|
||||
Notice::note('Draw No Bet '.$odds['bookmaker_id'], 'b');
|
||||
}
|
||||
|
||||
$update_array = [];
|
||||
foreach ($offer as $value) {
|
||||
$update_array['dnb1'] = (float) $value->o1;
|
||||
$update_array['dnb2'] = (float) $value->o3;
|
||||
}
|
||||
$update_array['margin'] = (float) Margin::calculate($update_array, 1);
|
||||
|
||||
$update_array['bmoid'] = $odds['bmoid'];
|
||||
$update_array['offer_id'] = $odds['offer_id'];
|
||||
$update_array['flag'] = 1;
|
||||
$update_array['nuh_check'] = 0;
|
||||
$update_array['last_check_at'] = Carbon::now()->toDateTimeString();
|
||||
$update_array['source_updated_at'] = $odds['source_updated_at'];
|
||||
|
||||
OddsDnb::updateOrCreate($odds, $update_array);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands\Grapper\TxOdds\Odds;
|
||||
|
||||
use App\Console\Commands\NuhBash;
|
||||
use App\Models\OddsGgng;
|
||||
use App\Utilities\Margin;
|
||||
use App\Utilities\Notice;
|
||||
use Illuminate\Support\Carbon;
|
||||
|
||||
class _Ggng
|
||||
{
|
||||
public static function grap($odds, $offer)
|
||||
{
|
||||
$debug = NuhBash::$options['d'] ?? 0;
|
||||
|
||||
if ($debug) {
|
||||
Notice::note('Goal No Goal '.$odds['bookmaker_id'], 'b');
|
||||
}
|
||||
|
||||
$update_array = [];
|
||||
foreach ($offer as $value) {
|
||||
$update_array['gg'] = (float) $value->o1;
|
||||
$update_array['ng'] = (float) $value->o3;
|
||||
}
|
||||
$update_array['margin'] = (float) Margin::calculate($update_array, 1);
|
||||
|
||||
$update_array['bmoid'] = $odds['bmoid'];
|
||||
$update_array['offer_id'] = $odds['offer_id'];
|
||||
$update_array['flag'] = 1;
|
||||
$update_array['nuh_check'] = 0;
|
||||
$update_array['last_check_at'] = Carbon::now()->toDateTimeString();
|
||||
$update_array['source_updated_at'] = $odds['source_updated_at'];
|
||||
|
||||
OddsGgng::updateOrCreate($odds, $update_array);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands\Grapper\TxOdds\Odds;
|
||||
|
||||
use App\Console\Commands\NuhBash;
|
||||
use App\Models\OddsTotal;
|
||||
use App\Utilities\Margin;
|
||||
use App\Utilities\Notice;
|
||||
use Illuminate\Support\Carbon;
|
||||
|
||||
class _Totals
|
||||
{
|
||||
public static function grap($odds, $offer)
|
||||
{
|
||||
$debug = NuhBash::$options['d'] ?? 0;
|
||||
|
||||
if ($debug) {
|
||||
Notice::note('Totals '.$odds['bookmaker_id'], 'b');
|
||||
}
|
||||
|
||||
$update_array = [];
|
||||
|
||||
foreach ($offer as $value) {
|
||||
$update_array['over'] = (float) $value->o1;
|
||||
$update_array['under'] = (float) $value->o2;
|
||||
$update_array['total'] = (float) $value->o3;
|
||||
}
|
||||
|
||||
if ($odds['sport_id'] == 1) {
|
||||
if ((float) $update_array['total'] != 2.5) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
$update_array['margin'] = (float) Margin::calculate([$update_array['over'], $update_array['under']], 1);
|
||||
|
||||
$update_array['bmoid'] = $odds['bmoid'];
|
||||
$update_array['offer_id'] = $odds['offer_id'];
|
||||
$update_array['flag'] = 1;
|
||||
$update_array['nuh_check'] = 0;
|
||||
$update_array['last_check_at'] = Carbon::now()->toDateTimeString();
|
||||
$update_array['source_updated_at'] = $odds['source_updated_at'];
|
||||
|
||||
OddsTotal::updateOrCreate($odds, $update_array);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
namespace App\Console\Commands\Grapper\TxOdds\Odds;
|
||||
|
||||
use App\Console\Commands\NuhBash;
|
||||
use App\Models\OddsQualify;
|
||||
use App\Utilities\Margin;
|
||||
use App\Utilities\Notice;
|
||||
use Illuminate\Support\Carbon;
|
||||
|
||||
class _Tq
|
||||
{
|
||||
public static function grap($odds, $offer)
|
||||
{
|
||||
$debug = NuhBash::$options['d'] ?? 0;
|
||||
|
||||
if ($debug) {
|
||||
Notice::note('To Qualify '.$odds['bookmaker_id'], 'b');
|
||||
}
|
||||
|
||||
$update_array = [];
|
||||
foreach ($offer as $value) {
|
||||
$update_array['hta'] = (float) $value->o1;
|
||||
$update_array['atq'] = (float) $value->o3;
|
||||
}
|
||||
$update_array['margin'] = (float) Margin::calculate($update_array, 1);
|
||||
|
||||
$update_array['bmoid'] = $odds['bmoid'];
|
||||
$update_array['offer_id'] = $odds['offer_id'];
|
||||
$update_array['flag'] = 1;
|
||||
$update_array['nuh_check'] = 0;
|
||||
$update_array['last_check_at'] = Carbon::now()->toDateTimeString();
|
||||
$update_array['source_updated_at'] = $odds['source_updated_at'];
|
||||
|
||||
OddsQualify::updateOrCreate($odds, $update_array);
|
||||
}
|
||||
}
|
||||
@@ -3,6 +3,7 @@
|
||||
namespace App\Filament\Resources\Events\Tables;
|
||||
|
||||
use App\Filament\Tables\Columns\Odds3Way;
|
||||
use App\Filament\Tables\Columns\OddsTotals;
|
||||
use Carbon\Carbon;
|
||||
use Filament\Actions\DeleteAction;
|
||||
use Filament\Actions\EditAction;
|
||||
@@ -26,7 +27,7 @@ class EventsTable
|
||||
->size(IconSize::ExtraLarge)
|
||||
->icon(fn ($record) => $record->sport->icon)
|
||||
->tooltip(fn ($record) => $record->id),
|
||||
TextColumn::make('txodds_id')->label('Match Id')->badge()->copyable(),
|
||||
TextColumn::make('txodds_id')->label('Match Id')->badge()->copyable()->searchable(),
|
||||
TextColumn::make('starttime')
|
||||
->label('Start')
|
||||
->alignCenter()
|
||||
@@ -41,7 +42,8 @@ class EventsTable
|
||||
TextColumn::make('home.name')->alignRight()->searchable(),
|
||||
TextColumn::make('away.name')->searchable(),
|
||||
|
||||
Odds3Way::make('odds_3way.bookmaker')->label('Market')->visible(auth()->user()->multiline_setting_id == 1),
|
||||
Odds3Way::make('odds_3way.bookmaker')->label('1X2')->visible(auth()->user()->multiline_setting_id == 1),
|
||||
OddsTotals::make('odds_totals.bookmaker')->label('Totals')->visible(auth()->user()->multiline_setting_id == 6),
|
||||
])
|
||||
->defaultSort('starttime', 'ASC')
|
||||
->deferFilters(false)
|
||||
|
||||
@@ -23,6 +23,12 @@ class MultilineClientResources extends Resource
|
||||
|
||||
// protected static string|\UnitEnum|null $navigationGroup = 'Settings';
|
||||
|
||||
protected static ?string $navigationLabel = 'Multiline';
|
||||
|
||||
protected static ?string $modelLabel = 'Multiline';
|
||||
|
||||
protected static ?string $title = 'Multiline';
|
||||
|
||||
public static function form(Schema $schema): Schema
|
||||
{
|
||||
return MultilineClientForm::configure($schema);
|
||||
|
||||
@@ -41,8 +41,17 @@ class MultilineClientsTable
|
||||
TextColumn::make('multiline_setting.name')->label('Bettype'),
|
||||
BookmakerIcon::make('bookmaker.icon')->label('Icon'),
|
||||
SelectColumn::make('bookmaker_id')
|
||||
->label('Bookmaker')
|
||||
->width('2rem')
|
||||
->options(Bookmaker::where('is_active', 1)->pluck('name', 'txid')),
|
||||
->options(function () {
|
||||
$books = Bookmaker::where('is_active', 1)->orderBy('txid')->pluck('name', 'txid');
|
||||
foreach ($books as $key => $value) {
|
||||
$books[$key] = $key.' - '.$value;
|
||||
}
|
||||
|
||||
return $books;
|
||||
}),
|
||||
// ->options(Bookmaker::where('is_active', 1)->pluck('name', 'txid')),
|
||||
])
|
||||
->defaultSort('sort')
|
||||
->deferFilters(false)
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
|
||||
namespace App\Filament\Tables\Columns;
|
||||
|
||||
use App\Actions\MultilineSlots;
|
||||
use Filament\Tables\Columns\Column;
|
||||
|
||||
class OddsTotals extends Column
|
||||
{
|
||||
protected string $view = 'filament.tables.columns.odds-totals';
|
||||
|
||||
protected ?array $slots = [];
|
||||
|
||||
public function loadSlots(&$data)
|
||||
{
|
||||
$this->slots = MultilineSlots::addSlots($data);
|
||||
}
|
||||
|
||||
public function getSlots(): ?array
|
||||
{
|
||||
return $this->slots;
|
||||
}
|
||||
}
|
||||
@@ -54,4 +54,9 @@ class Event extends Model
|
||||
{
|
||||
return $this->hasMany(Odds3way::class, 'event_id', 'id')->with('bookmaker');
|
||||
}
|
||||
|
||||
public function odds_totals()
|
||||
{
|
||||
return $this->hasMany(OddsTotal::class, 'event_id', 'id')->with('bookmaker');
|
||||
}
|
||||
}
|
||||
@@ -18,7 +18,7 @@ class OddsTotal extends Model
|
||||
'bmoid',
|
||||
'over',
|
||||
'under',
|
||||
'spread',
|
||||
'total',
|
||||
'margin',
|
||||
'flag',
|
||||
'nuh_check',
|
||||
|
||||
Reference in new issue
Block a user