wip
This commit is contained in:
1 parent
f5fc937311
commit
d81af0b02b
30 files changed
+381
-267
No files matched your search
@@ -16,6 +16,7 @@ use App\Models\Sport;
|
|||||||
use App\Utilities\Margin;
|
use App\Utilities\Margin;
|
||||||
use App\Utilities\Notice;
|
use App\Utilities\Notice;
|
||||||
use Illuminate\Support\Carbon;
|
use Illuminate\Support\Carbon;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class Bet365
|
class Bet365
|
||||||
{
|
{
|
||||||
@@ -31,7 +32,7 @@ class Bet365
|
|||||||
|
|
||||||
$sportmap = Sport::map('bapi', 1, [1, 2, 3, 5]);
|
$sportmap = Sport::map('bapi', 1, [1, 2, 3, 5]);
|
||||||
|
|
||||||
$flags = [];
|
$events_collector = [];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Bet365
|
* Bet365
|
||||||
@@ -92,88 +93,29 @@ class Bet365
|
|||||||
* 1X2
|
* 1X2
|
||||||
*/
|
*/
|
||||||
if (isset($offer['full_time_result'])) {
|
if (isset($offer['full_time_result'])) {
|
||||||
$odds = [];
|
|
||||||
$odds['h3w'] = number_format($offer['full_time_result']['odds'][0]['odds'], 2) ?? 1;
|
|
||||||
$odds['d3w'] = number_format($offer['full_time_result']['odds'][1]['odds'], 2) ?? 1;
|
|
||||||
$odds['a3w'] = number_format($offer['full_time_result']['odds'][2]['odds'], 2) ?? 1;
|
|
||||||
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
|
||||||
|
|
||||||
$odds = array_merge($odds, $base);
|
$data = $offer['full_time_result']['odds'] ?? [];
|
||||||
|
|
||||||
$flags['odds_3ways'][] = $event->id;
|
if ($data) {
|
||||||
|
|
||||||
$res = Odds3way::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
$odds = [];
|
||||||
|
$odds['h3w'] = number_format($data[0]['odds'], 2) ?? 1;
|
||||||
|
$odds['d3w'] = number_format($data[1]['odds'], 2) ?? 1;
|
||||||
|
$odds['a3w'] = number_format($data[2]['odds'], 2) ?? 1;
|
||||||
|
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
||||||
|
|
||||||
if (! $res) {
|
$odds = array_merge($odds, $base);
|
||||||
Odds3way::create($odds);
|
|
||||||
} else {
|
|
||||||
$res->h3w = $odds['h3w'];
|
|
||||||
$res->a3w = $odds['d3w'];
|
|
||||||
$res->d3w = $odds['a3w'];
|
|
||||||
$res->flags = 1;
|
|
||||||
$res->margin = $odds['margin'];
|
|
||||||
$res->save();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
$events_collector['odds_3ways'][] = $event->id;
|
||||||
* DC
|
|
||||||
*/
|
|
||||||
if (isset($offer['double_chance'])) {
|
|
||||||
$odds = [];
|
|
||||||
$odds['dc1x'] = number_format($offer['double_chance']['odds'][0]['odds'], 2) ?? 1;
|
|
||||||
$odds['dc12'] = number_format($offer['double_chance']['odds'][1]['odds'], 2) ?? 1;
|
|
||||||
$odds['dcx2'] = number_format($offer['double_chance']['odds'][2]['odds'], 2) ?? 1;
|
|
||||||
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
|
||||||
|
|
||||||
$odds = array_merge($odds, $base);
|
$res = Odds3way::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
||||||
|
|
||||||
$flags['odds_dc'][] = $event->id;
|
|
||||||
|
|
||||||
$res = OddsDc::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
|
||||||
|
|
||||||
if (! $res) {
|
|
||||||
OddsDc::create($odds);
|
|
||||||
} else {
|
|
||||||
$res->dc1x = $odds['dc1x'];
|
|
||||||
$res->dc12 = $odds['dc12'];
|
|
||||||
$res->dcx2 = $odds['dcx2'];
|
|
||||||
$res->flags = 1;
|
|
||||||
$res->margin = $odds['margin'];
|
|
||||||
$res->save();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* OU
|
|
||||||
*/
|
|
||||||
if (isset($offer['goals_over_under'])) {
|
|
||||||
|
|
||||||
$odds = [];
|
|
||||||
$odds['over'] = number_format($offer['goals_over_under']['odds'][0]['odds'], 2) ?? 1;
|
|
||||||
$odds['under'] = number_format($offer['goals_over_under']['odds'][1]['odds'], 2) ?? 1;
|
|
||||||
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
|
||||||
if ($base['sport_id'] == 1) {
|
|
||||||
$odds['active_spread'] = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
$odds = array_merge($odds, $base);
|
|
||||||
|
|
||||||
$flags['odds_totals'][] = $event->id;
|
|
||||||
|
|
||||||
if ($offer['goals_over_under']['odds'][1]['name'] == '2.5') {
|
|
||||||
$odds['total'] = 2.5;
|
|
||||||
$res = OddsTotal::where('event_id', $event->id)
|
|
||||||
->where('bookmaker_id', $bookmaker_id)
|
|
||||||
->where('total', $odds['total'])
|
|
||||||
->first();
|
|
||||||
|
|
||||||
if (! $res) {
|
if (! $res) {
|
||||||
OddsTotal::create($odds);
|
Odds3way::create($odds);
|
||||||
} else {
|
} else {
|
||||||
$res->over = $odds['over'];
|
$res->h3w = $odds['h3w'];
|
||||||
$res->under = $odds['under'];
|
$res->a3w = $odds['d3w'];
|
||||||
$res->difference = abs(1 / $odds['over'] - 1 / $odds['under']);
|
$res->d3w = $odds['a3w'];
|
||||||
$res->flags = 1;
|
$res->flags = 1;
|
||||||
$res->margin = $odds['margin'];
|
$res->margin = $odds['margin'];
|
||||||
$res->save();
|
$res->save();
|
||||||
@@ -181,29 +123,111 @@ class Bet365
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* DC
|
||||||
|
*/
|
||||||
|
if (isset($offer['double_chance'])) {
|
||||||
|
|
||||||
|
$data = $offer['double_chance']['odds'] ?? [];
|
||||||
|
|
||||||
|
if ($data) {
|
||||||
|
|
||||||
|
$odds = [];
|
||||||
|
$odds['dc1x'] = number_format($data[0]['odds'], 2) ?? 1;
|
||||||
|
$odds['dc12'] = number_format($data[1]['odds'], 2) ?? 1;
|
||||||
|
$odds['dcx2'] = number_format($data[2]['odds'], 2) ?? 1;
|
||||||
|
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
||||||
|
|
||||||
|
$odds = array_merge($odds, $base);
|
||||||
|
|
||||||
|
$events_collector['odds_dc'][] = $event->id;
|
||||||
|
|
||||||
|
$res = OddsDc::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
||||||
|
|
||||||
|
if (! $res) {
|
||||||
|
OddsDc::create($odds);
|
||||||
|
} else {
|
||||||
|
$res->dc1x = $odds['dc1x'];
|
||||||
|
$res->dc12 = $odds['dc12'];
|
||||||
|
$res->dcx2 = $odds['dcx2'];
|
||||||
|
$res->flags = 1;
|
||||||
|
$res->margin = $odds['margin'];
|
||||||
|
$res->save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* OU
|
||||||
|
*/
|
||||||
|
if (isset($offer['goals_over_under'])) {
|
||||||
|
|
||||||
|
$data = $offer['goals_over_under']['odds'] ?? [];
|
||||||
|
|
||||||
|
if ($data) {
|
||||||
|
|
||||||
|
$odds = [];
|
||||||
|
$odds['over'] = number_format($data[0]['odds'], 2) ?? 1;
|
||||||
|
$odds['under'] = number_format($data[1]['odds'], 2) ?? 1;
|
||||||
|
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
||||||
|
if ($base['sport_id'] == 1) {
|
||||||
|
$odds['active_spread'] = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
$odds = array_merge($odds, $base);
|
||||||
|
|
||||||
|
$events_collector['odds_totals'][] = $event->id;
|
||||||
|
|
||||||
|
if ($offer['goals_over_under']['odds'][1]['name'] == '2.5') {
|
||||||
|
$odds['total'] = 2.5;
|
||||||
|
$res = OddsTotal::where('event_id', $event->id)
|
||||||
|
->where('bookmaker_id', $bookmaker_id)
|
||||||
|
->where('total', $odds['total'])
|
||||||
|
->first();
|
||||||
|
|
||||||
|
if (! $res) {
|
||||||
|
OddsTotal::create($odds);
|
||||||
|
} else {
|
||||||
|
$res->over = $odds['over'];
|
||||||
|
$res->under = $odds['under'];
|
||||||
|
$res->difference = abs(1 / $odds['over'] - 1 / $odds['under']);
|
||||||
|
$res->flags = 1;
|
||||||
|
$res->margin = $odds['margin'];
|
||||||
|
$res->save();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* GG NG
|
* GG NG
|
||||||
*/
|
*/
|
||||||
if (isset($offer['both_teams_to_score'])) {
|
if (isset($offer['both_teams_to_score'])) {
|
||||||
$odds = [];
|
|
||||||
$odds['gg'] = number_format($offer['both_teams_to_score']['odds'][0]['odds'], 2) ?? 1;
|
|
||||||
$odds['ng'] = number_format($offer['both_teams_to_score']['odds'][1]['odds'], 2) ?? 1;
|
|
||||||
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
|
||||||
|
|
||||||
$odds = array_merge($odds, $base);
|
$data = $offer['both_teams_to_score']['odds'] ?? [];
|
||||||
|
|
||||||
$flags['odds_ggng'][] = $event->id;
|
if ($data) {
|
||||||
|
|
||||||
$res = OddsGgng::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
$odds = [];
|
||||||
|
$odds['gg'] = number_format($data[0]['odds'], 2) ?? 1;
|
||||||
|
$odds['ng'] = number_format($data[1]['odds'], 2) ?? 1;
|
||||||
|
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
||||||
|
|
||||||
if (! $res) {
|
$odds = array_merge($odds, $base);
|
||||||
OddsGgng::create($odds);
|
|
||||||
} else {
|
$events_collector['odds_ggng'][] = $event->id;
|
||||||
$res->gg = $odds['gg'];
|
|
||||||
$res->ng = $odds['ng'];
|
$res = OddsGgng::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
||||||
$res->flags = 1;
|
|
||||||
$res->margin = $odds['margin'];
|
if (! $res) {
|
||||||
$res->save();
|
OddsGgng::create($odds);
|
||||||
|
} else {
|
||||||
|
$res->gg = $odds['gg'];
|
||||||
|
$res->ng = $odds['ng'];
|
||||||
|
$res->flags = 1;
|
||||||
|
$res->margin = $odds['margin'];
|
||||||
|
$res->save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -211,25 +235,31 @@ class Bet365
|
|||||||
* DNB
|
* DNB
|
||||||
*/
|
*/
|
||||||
if (isset($offer['draw_no_bet'])) {
|
if (isset($offer['draw_no_bet'])) {
|
||||||
$odds = [];
|
|
||||||
$odds['dnb1'] = number_format($offer['draw_no_bet']['odds'][0]['odds'], 2) ?? 1;
|
|
||||||
$odds['dnb2'] = number_format($offer['draw_no_bet']['odds'][1]['odds'], 2) ?? 1;
|
|
||||||
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
|
||||||
|
|
||||||
$res = OddsDnb::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
$data = $offer['draw_no_bet']['odds'] ?? [];
|
||||||
|
|
||||||
$odds = array_merge($odds, $base);
|
if ($data) {
|
||||||
|
|
||||||
$flags['odds_dnb'][] = $event->id;
|
$odds = [];
|
||||||
|
$odds['dnb1'] = number_format($data[0]['odds'], 2) ?? 1;
|
||||||
|
$odds['dnb2'] = number_format($data[1]['odds'], 2) ?? 1;
|
||||||
|
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
||||||
|
|
||||||
if (! $res) {
|
$res = OddsDnb::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
||||||
OddsDnb::create($odds);
|
|
||||||
} else {
|
$odds = array_merge($odds, $base);
|
||||||
$res->dnb1 = $odds['dnb1'];
|
|
||||||
$res->dnb2 = $odds['dnb2'];
|
$events_collector['odds_dnb'][] = $event->id;
|
||||||
$res->flags = 1;
|
|
||||||
$res->margin = $odds['margin'];
|
if (! $res) {
|
||||||
$res->save();
|
OddsDnb::create($odds);
|
||||||
|
} else {
|
||||||
|
$res->dnb1 = $odds['dnb1'];
|
||||||
|
$res->dnb2 = $odds['dnb2'];
|
||||||
|
$res->flags = 1;
|
||||||
|
$res->margin = $odds['margin'];
|
||||||
|
$res->save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -237,34 +267,40 @@ class Bet365
|
|||||||
* 1X2 HT
|
* 1X2 HT
|
||||||
*/
|
*/
|
||||||
if (isset($offer['half_time_result'])) {
|
if (isset($offer['half_time_result'])) {
|
||||||
$odds = [];
|
|
||||||
$odds['h3w'] = number_format($offer['half_time_result']['odds'][0]['odds'], 2) ?? 1;
|
|
||||||
$odds['d3w'] = number_format($offer['half_time_result']['odds'][1]['odds'], 2) ?? 1;
|
|
||||||
$odds['a3w'] = number_format($offer['half_time_result']['odds'][2]['odds'], 2) ?? 1;
|
|
||||||
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
|
||||||
|
|
||||||
$odds = array_merge($odds, $base);
|
$data = $offer['half_time_result']['odds'] ?? [];
|
||||||
|
|
||||||
$flags['odds_3ways_ht'][] = $event->id;
|
if ($data) {
|
||||||
|
|
||||||
$res = Odds3wayHt::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
$odds = [];
|
||||||
|
$odds['h3w'] = number_format($data[0]['odds'], 2) ?? 1;
|
||||||
|
$odds['d3w'] = number_format($data[1]['odds'], 2) ?? 1;
|
||||||
|
$odds['a3w'] = number_format($data[2]['odds'], 2) ?? 1;
|
||||||
|
$odds['margin'] = (float) Margin::calculate($odds, 1);
|
||||||
|
|
||||||
if (! $res) {
|
$odds = array_merge($odds, $base);
|
||||||
Odds3wayHt::create($odds);
|
|
||||||
} else {
|
$events_collector['odds_3ways_ht'][] = $event->id;
|
||||||
$res->h3w = $odds['h3w'];
|
|
||||||
$res->d3w = $odds['d3w'];
|
$res = Odds3wayHt::where('event_id', $event->id)->where('bookmaker_id', $bookmaker_id)->first();
|
||||||
$res->d3w = $odds['a3w'];
|
|
||||||
$res->flags = 1;
|
if (! $res) {
|
||||||
$res->margin = $odds['margin'];
|
Odds3wayHt::create($odds);
|
||||||
$res->save();
|
} else {
|
||||||
|
$res->h3w = $odds['h3w'];
|
||||||
|
$res->d3w = $odds['d3w'];
|
||||||
|
$res->d3w = $odds['a3w'];
|
||||||
|
$res->flags = 1;
|
||||||
|
$res->margin = $odds['margin'];
|
||||||
|
$res->save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach ($flags as $table => $event_ids) {
|
foreach ($events_collector as $table => $event_ids) {
|
||||||
DB::table($table)->where('bookmaker_id', $bookmaker_id)->whereNotIn('event_id', $event_ids)->update(['flags' => 0]);
|
DB::table($table)->where('bookmaker_id', $bookmaker_id)->whereNotIn('event_id', $event_ids)->update(['flags' => 0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ use App\Console\Commands\Nuh;
|
|||||||
use App\Models\EventBookmaker;
|
use App\Models\EventBookmaker;
|
||||||
use App\Models\Sport;
|
use App\Models\Sport;
|
||||||
use App\Utilities\Notice;
|
use App\Utilities\Notice;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class Logifuture
|
class Logifuture
|
||||||
{
|
{
|
||||||
@@ -35,8 +36,6 @@ class Logifuture
|
|||||||
|
|
||||||
Authentication::authenticate();
|
Authentication::authenticate();
|
||||||
|
|
||||||
$flags = [];
|
|
||||||
|
|
||||||
foreach ($sportmap as $logifuture_sport_id => $sport_id) {
|
foreach ($sportmap as $logifuture_sport_id => $sport_id) {
|
||||||
|
|
||||||
$matches = LogifutureData::load($logifuture_sport_id);
|
$matches = LogifutureData::load($logifuture_sport_id);
|
||||||
@@ -65,8 +64,6 @@ class Logifuture
|
|||||||
'bookmaker_id' => Nuh::$options['bookmaker_id'],
|
'bookmaker_id' => Nuh::$options['bookmaker_id'],
|
||||||
], ['in_feed' => 1, 'bmoid' => $event['event_id'], 'startime' => $event['starttime']]);
|
], ['in_feed' => 1, 'bmoid' => $event['event_id'], 'startime' => $event['starttime']]);
|
||||||
|
|
||||||
$flags[$sport_id][] = $event['id'];
|
|
||||||
|
|
||||||
switch ($sport_id) {
|
switch ($sport_id) {
|
||||||
case 1:
|
case 1:
|
||||||
Soccer::get($event, $match);
|
Soccer::get($event, $match);
|
||||||
@@ -94,15 +91,11 @@ class Logifuture
|
|||||||
}
|
}
|
||||||
if ($event_id_collector) {
|
if ($event_id_collector) {
|
||||||
EventBookmaker::whereNotIn('event_id', $event_id_collector)->where('bookmaker_id', Nuh::$options['bookmaker_id'])->update(['in_feed' => 0]);
|
EventBookmaker::whereNotIn('event_id', $event_id_collector)->where('bookmaker_id', Nuh::$options['bookmaker_id'])->update(['in_feed' => 0]);
|
||||||
}
|
|
||||||
|
|
||||||
$tables = [];
|
$tables = ['odds_2ways', 'odds_2ways_s1', 'odds_3ways', 'odds_totals', 'odds_points', 'odds_ggng', 'odds_dc', 'odds_tq', 'odds_points_q1', 'odds_totals_q1'];
|
||||||
$tables[1] = ['odds_3ways', 'odds_totals', 'odds_ggng', 'odds_dc', 'odds_tq'];
|
foreach ($tables as $table) {
|
||||||
$tables[2] = ['odds_2ways', 'odds_2ways_s1', 'odds_3ways', 'odds_totals', 'odds_points', 'odds_points_q1', 'odds_totals_q1'];
|
DB::table($table)->where('bookmaker_id', Nuh::$options['bookmaker_id'])->whereNotIn('event_id', $event_id_collector)->update(['flags' => 0]);
|
||||||
$tables[3] = ['odds_totals', 'odds_points', 'odds_points_q1', 'odds_totals_q1'];
|
}
|
||||||
$tables[5] = ['odds_2ways', 'odds_2ways_s1', 'odds_totals', 'odds_points'];
|
|
||||||
foreach ($tables as $sport_id => $table) {
|
|
||||||
DB::table($table)->where('bookmaker_id', $bookmaker_id)->whereNotIn('event_id', $flags[$sport_id])->update(['flags' => 0]);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -21,6 +21,7 @@ use App\Models\EventBookmaker;
|
|||||||
use App\Models\Sport;
|
use App\Models\Sport;
|
||||||
use App\Utilities\Notice;
|
use App\Utilities\Notice;
|
||||||
use Illuminate\Support\Carbon;
|
use Illuminate\Support\Carbon;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
class Odds
|
class Odds
|
||||||
{
|
{
|
||||||
@@ -149,7 +150,7 @@ class Odds
|
|||||||
|
|
||||||
$tables = ['odds_3ways', 'odds_dc', 'odds_ggng', 'odds_points', 'odds_points_q1', 'odds_totals', 'odds_totals_q1', 'odds_tq'];
|
$tables = ['odds_3ways', 'odds_dc', 'odds_ggng', 'odds_points', 'odds_points_q1', 'odds_totals', 'odds_totals_q1', 'odds_tq'];
|
||||||
foreach ($tables as $table) {
|
foreach ($tables as $table) {
|
||||||
DB::table($table)->where('bookmaker_id', $bookmaker_id)->whereNotIn('event_id', $event_id_collector)->update(['flags' => 0]);
|
DB::table($table)->where('bookmaker_id', Nuh::$options['bookmaker_id'])->whereNotIn('event_id', $event_id_collector)->update(['flags' => 0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -4,7 +4,7 @@ namespace App\Console\Commands\Services;
|
|||||||
|
|
||||||
use App\Console\Commands\Nuh;
|
use App\Console\Commands\Nuh;
|
||||||
use App\Console\Commands\Services\Tasks\DBMapper;
|
use App\Console\Commands\Services\Tasks\DBMapper;
|
||||||
use App\Console\Commands\Services\Tasks\GenerateAlarm;
|
use App\Console\Commands\Services\Tasks\GenerateAlarms;
|
||||||
use App\Console\Commands\Services\Tasks\GenerateSetting;
|
use App\Console\Commands\Services\Tasks\GenerateSetting;
|
||||||
use App\Console\Commands\Services\Tasks\MarketsList;
|
use App\Console\Commands\Services\Tasks\MarketsList;
|
||||||
use App\Console\Commands\Services\Tasks\MarketsState;
|
use App\Console\Commands\Services\Tasks\MarketsState;
|
||||||
@@ -26,8 +26,8 @@ class Services
|
|||||||
case 'Generate Setting':
|
case 'Generate Setting':
|
||||||
GenerateSetting::run();
|
GenerateSetting::run();
|
||||||
break;
|
break;
|
||||||
case 'Generate Alarm':
|
case 'Generate Alarms':
|
||||||
GenerateAlarm::run();
|
GenerateAlarms::run();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,14 +2,13 @@
|
|||||||
|
|
||||||
namespace App\Console\Commands\Services\Tasks\Alarm;
|
namespace App\Console\Commands\Services\Tasks\Alarm;
|
||||||
|
|
||||||
use App\Console\Commands\Nuh;
|
|
||||||
use App\Models\ComparingBookmaker;
|
use App\Models\ComparingBookmaker;
|
||||||
|
|
||||||
class AlarmBookmakerFilter
|
class AlarmBookmakerFilter
|
||||||
{
|
{
|
||||||
public static function get($client_bookmaker_id)
|
public static function get($client_bookmaker_id, $sport_id)
|
||||||
{
|
{
|
||||||
$res = ComparingBookmaker::where('sport_id', Nuh::$options['sport_id'])
|
$res = ComparingBookmaker::where('sport_id', $sport_id)
|
||||||
->where('client_bookmaker_id', $client_bookmaker_id)
|
->where('client_bookmaker_id', $client_bookmaker_id)
|
||||||
->where('is_active', 1)
|
->where('is_active', 1)
|
||||||
->orderBy('sorting', 'asc')
|
->orderBy('sorting', 'asc')
|
||||||
|
|||||||
@@ -2,14 +2,13 @@
|
|||||||
|
|
||||||
namespace App\Console\Commands\Services\Tasks\Alarm;
|
namespace App\Console\Commands\Services\Tasks\Alarm;
|
||||||
|
|
||||||
use App\Console\Commands\Nuh;
|
|
||||||
use App\Models\MultilineSetting;
|
use App\Models\MultilineSetting;
|
||||||
|
|
||||||
class AlarmMultilineSetting
|
class AlarmMultilineSetting
|
||||||
{
|
{
|
||||||
public static function get()
|
public static function get($sport_id)
|
||||||
{
|
{
|
||||||
$res = MultilineSetting::where('sport_id', Nuh::$options['sport_id'])->get();
|
$res = MultilineSetting::where('sport_id', $sport_id)->get();
|
||||||
|
|
||||||
$arr = [];
|
$arr = [];
|
||||||
foreach ($res as $value) {
|
foreach ($res as $value) {
|
||||||
|
|||||||
@@ -2,14 +2,13 @@
|
|||||||
|
|
||||||
namespace App\Console\Commands\Services\Tasks\Alarm;
|
namespace App\Console\Commands\Services\Tasks\Alarm;
|
||||||
|
|
||||||
use App\Console\Commands\Nuh;
|
|
||||||
use App\Models\AlarmSetting;
|
use App\Models\AlarmSetting;
|
||||||
|
|
||||||
class AlarmSettings
|
class AlarmSettings
|
||||||
{
|
{
|
||||||
public static function get($client_bookmaker_id)
|
public static function get($client_bookmaker_id, $sport_id)
|
||||||
{
|
{
|
||||||
$res = AlarmSetting::where('sport_id', Nuh::$options['sport_id'])
|
$res = AlarmSetting::where('sport_id', $sport_id)
|
||||||
->where('client_bookmaker_id', $client_bookmaker_id)
|
->where('client_bookmaker_id', $client_bookmaker_id)
|
||||||
->where('disabled', 0)
|
->where('disabled', 0)
|
||||||
->select('multiline_setting_id', 'level_id', 'alarm_threshold')
|
->select('multiline_setting_id', 'level_id', 'alarm_threshold')
|
||||||
|
|||||||
@@ -3,12 +3,16 @@
|
|||||||
namespace App\Console\Commands\Services\Tasks\Alarm;
|
namespace App\Console\Commands\Services\Tasks\Alarm;
|
||||||
|
|
||||||
use App\Models\EventBookmaker;
|
use App\Models\EventBookmaker;
|
||||||
|
use App\Models\OddsTable;
|
||||||
|
|
||||||
class AlarmStore
|
class AlarmStore
|
||||||
{
|
{
|
||||||
public static function get($event_id, $table, $client_bookmaker_id, $alarm_threshold, $compare_odds, $client_odds)
|
public static function get($event_id, $table, $client_bookmaker_id, $alarm_threshold, $compare_odds, $client_odds)
|
||||||
{
|
{
|
||||||
$oddnames = AlarmMap::get($table);
|
$res = OddsTable::where($table)->value('oddnames');
|
||||||
|
$oddnames = explode(',', $res);
|
||||||
|
|
||||||
|
dd($oddnames);
|
||||||
|
|
||||||
if (! $compare_odds) {
|
if (! $compare_odds) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -1,57 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Console\Commands\Services\Tasks;
|
|
||||||
|
|
||||||
use App\Console\Commands\Nuh;
|
|
||||||
use App\Console\Commands\Services\Tasks\Alarm\AlarmBookmakerFilter;
|
|
||||||
use App\Console\Commands\Services\Tasks\Alarm\AlarmFilterClient;
|
|
||||||
use App\Console\Commands\Services\Tasks\Alarm\AlarmFilterCompare;
|
|
||||||
use App\Console\Commands\Services\Tasks\Alarm\AlarmLoadOdds;
|
|
||||||
use App\Console\Commands\Services\Tasks\Alarm\AlarmMultilineSetting;
|
|
||||||
use App\Console\Commands\Services\Tasks\Alarm\AlarmSettings;
|
|
||||||
use App\Console\Commands\Services\Tasks\Alarm\AlarmStore;
|
|
||||||
use App\Models\Client;
|
|
||||||
use App\Models\EventBookmaker;
|
|
||||||
use App\Utilities\Notice;
|
|
||||||
|
|
||||||
class GenerateAlarm
|
|
||||||
{
|
|
||||||
public static function run()
|
|
||||||
{
|
|
||||||
$debug = Nuh::$options['d'] ?? 0;
|
|
||||||
|
|
||||||
if ($debug) {
|
|
||||||
Notice::note('ALARM GENERATOR', 'b');
|
|
||||||
}
|
|
||||||
|
|
||||||
$clients = Client::get();
|
|
||||||
|
|
||||||
$multilines = AlarmMultilineSetting::get();
|
|
||||||
|
|
||||||
foreach ($clients as $client) {
|
|
||||||
|
|
||||||
foreach ($client->bookmaker as $client_bookmaker_id) {
|
|
||||||
|
|
||||||
$alarm_threshold = AlarmSettings::get($client_bookmaker_id);
|
|
||||||
|
|
||||||
$filter = AlarmBookmakerFilter::get($client_bookmaker_id);
|
|
||||||
|
|
||||||
$res = EventBookmaker::where('bookmaker_id', $client_bookmaker_id)->where('sport_id', Nuh::$options['sport_id'])->get();
|
|
||||||
|
|
||||||
foreach ($res as $event) {
|
|
||||||
|
|
||||||
foreach ($multilines as $multiline_id => $multiline) {
|
|
||||||
|
|
||||||
$odds = AlarmLoadOdds::get($event->event_id, $multiline['table'], $multiline['oddnames']);
|
|
||||||
|
|
||||||
$compare_odds = AlarmFilterCompare::get($odds, $filter);
|
|
||||||
|
|
||||||
$client_odds = AlarmFilterClient::get($odds, $client_bookmaker_id);
|
|
||||||
|
|
||||||
AlarmStore::get($event->event_id, $multiline['table'], $client_bookmaker_id, $alarm_threshold[$multiline_id], $compare_odds, $client_odds);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Console\Commands\Services\Tasks;
|
||||||
|
|
||||||
|
use App\Console\Commands\Nuh;
|
||||||
|
use App\Console\Commands\Services\Tasks\Alarm\AlarmBookmakerFilter;
|
||||||
|
use App\Console\Commands\Services\Tasks\Alarm\AlarmFilterClient;
|
||||||
|
use App\Console\Commands\Services\Tasks\Alarm\AlarmFilterCompare;
|
||||||
|
use App\Console\Commands\Services\Tasks\Alarm\AlarmLoadOdds;
|
||||||
|
use App\Console\Commands\Services\Tasks\Alarm\AlarmMultilineSetting;
|
||||||
|
use App\Console\Commands\Services\Tasks\Alarm\AlarmSettings;
|
||||||
|
use App\Console\Commands\Services\Tasks\Alarm\AlarmStore;
|
||||||
|
use App\Models\Client;
|
||||||
|
use App\Models\EventBookmaker;
|
||||||
|
use App\Models\Sport;
|
||||||
|
use App\Utilities\Notice;
|
||||||
|
|
||||||
|
class GenerateAlarms
|
||||||
|
{
|
||||||
|
public static function run()
|
||||||
|
{
|
||||||
|
|
||||||
|
$debug = Nuh::$options['d'] ?? 0;
|
||||||
|
|
||||||
|
if ($debug) {
|
||||||
|
Notice::note('GENERATE ALARMS', 'b');
|
||||||
|
}
|
||||||
|
|
||||||
|
$clients = Client::get();
|
||||||
|
|
||||||
|
$sports = Sport::where('is_active', 1)->pluck('id');
|
||||||
|
|
||||||
|
foreach ($sports as $sport_id) {
|
||||||
|
|
||||||
|
$multilines = AlarmMultilineSetting::get($sport_id);
|
||||||
|
|
||||||
|
foreach ($clients as $client) {
|
||||||
|
|
||||||
|
foreach ($client->bookmaker as $client_bookmaker_id) {
|
||||||
|
|
||||||
|
$alarm_threshold = AlarmSettings::get($client_bookmaker_id, $sport_id);
|
||||||
|
|
||||||
|
$filter = AlarmBookmakerFilter::get($client_bookmaker_id, $sport_id);
|
||||||
|
|
||||||
|
$res = EventBookmaker::where('bookmaker_id', $client_bookmaker_id)->where('sport_id', $sport_id)->get();
|
||||||
|
|
||||||
|
foreach ($res as $event) {
|
||||||
|
|
||||||
|
foreach ($multilines as $multiline_id => $multiline) {
|
||||||
|
|
||||||
|
$odds = AlarmLoadOdds::get($event->event_id, $multiline['table'], $multiline['oddnames']);
|
||||||
|
|
||||||
|
$compare_odds = AlarmFilterCompare::get($odds, $filter);
|
||||||
|
|
||||||
|
$client_odds = AlarmFilterClient::get($odds, $client_bookmaker_id);
|
||||||
|
|
||||||
|
AlarmStore::get($event->event_id, $multiline['table'], $client_bookmaker_id, $alarm_threshold[$multiline_id], $compare_odds, $client_odds);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
class OddsTable extends Model
|
||||||
|
{
|
||||||
|
//
|
||||||
|
}
|
||||||
Generated
+38
-38
@@ -1429,16 +1429,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/actions",
|
"name": "filament/actions",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/actions.git",
|
"url": "https://github.com/filamentphp/actions.git",
|
||||||
"reference": "483fcb61b551cf524c943e75c4747c4aa2728bed"
|
"reference": "e9936617c3f74b18bf24a0645a6314a719c74a33"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/filamentphp/actions/zipball/483fcb61b551cf524c943e75c4747c4aa2728bed",
|
"url": "https://api.github.com/repos/filamentphp/actions/zipball/e9936617c3f74b18bf24a0645a6314a719c74a33",
|
||||||
"reference": "483fcb61b551cf524c943e75c4747c4aa2728bed",
|
"reference": "e9936617c3f74b18bf24a0645a6314a719c74a33",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1474,20 +1474,20 @@
|
|||||||
"issues": "https://github.com/filamentphp/filament/issues",
|
"issues": "https://github.com/filamentphp/filament/issues",
|
||||||
"source": "https://github.com/filamentphp/filament"
|
"source": "https://github.com/filamentphp/filament"
|
||||||
},
|
},
|
||||||
"time": "2026-01-23T10:57:02+00:00"
|
"time": "2026-01-27T12:10:55+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/filament",
|
"name": "filament/filament",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/panels.git",
|
"url": "https://github.com/filamentphp/panels.git",
|
||||||
"reference": "7edac0aed33cac262766439f331cb1070ac974d5"
|
"reference": "2fe37fa96447cc61a70354b43f854b3632e388cc"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/filamentphp/panels/zipball/7edac0aed33cac262766439f331cb1070ac974d5",
|
"url": "https://api.github.com/repos/filamentphp/panels/zipball/2fe37fa96447cc61a70354b43f854b3632e388cc",
|
||||||
"reference": "7edac0aed33cac262766439f331cb1070ac974d5",
|
"reference": "2fe37fa96447cc61a70354b43f854b3632e388cc",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1531,20 +1531,20 @@
|
|||||||
"issues": "https://github.com/filamentphp/filament/issues",
|
"issues": "https://github.com/filamentphp/filament/issues",
|
||||||
"source": "https://github.com/filamentphp/filament"
|
"source": "https://github.com/filamentphp/filament"
|
||||||
},
|
},
|
||||||
"time": "2026-01-23T10:54:16+00:00"
|
"time": "2026-01-27T12:10:56+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/forms",
|
"name": "filament/forms",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/forms.git",
|
"url": "https://github.com/filamentphp/forms.git",
|
||||||
"reference": "847c1afe671bd3d5937eb0113413e581dd1ce019"
|
"reference": "63dfeb69b3823e0effde1cefcdaae21c1ddf0814"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/filamentphp/forms/zipball/847c1afe671bd3d5937eb0113413e581dd1ce019",
|
"url": "https://api.github.com/repos/filamentphp/forms/zipball/63dfeb69b3823e0effde1cefcdaae21c1ddf0814",
|
||||||
"reference": "847c1afe671bd3d5937eb0113413e581dd1ce019",
|
"reference": "63dfeb69b3823e0effde1cefcdaae21c1ddf0814",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1581,11 +1581,11 @@
|
|||||||
"issues": "https://github.com/filamentphp/filament/issues",
|
"issues": "https://github.com/filamentphp/filament/issues",
|
||||||
"source": "https://github.com/filamentphp/filament"
|
"source": "https://github.com/filamentphp/filament"
|
||||||
},
|
},
|
||||||
"time": "2026-01-23T10:52:10+00:00"
|
"time": "2026-01-27T12:10:56+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/infolists",
|
"name": "filament/infolists",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/infolists.git",
|
"url": "https://github.com/filamentphp/infolists.git",
|
||||||
@@ -1630,7 +1630,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/notifications",
|
"name": "filament/notifications",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/notifications.git",
|
"url": "https://github.com/filamentphp/notifications.git",
|
||||||
@@ -1677,7 +1677,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/query-builder",
|
"name": "filament/query-builder",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/query-builder.git",
|
"url": "https://github.com/filamentphp/query-builder.git",
|
||||||
@@ -1723,16 +1723,16 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/schemas",
|
"name": "filament/schemas",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/schemas.git",
|
"url": "https://github.com/filamentphp/schemas.git",
|
||||||
"reference": "4fd5207083308290c6fa14b34b9ade36c7e8d3d9"
|
"reference": "1638d2b16f7684b7925d9c6253592ecd308d7f12"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/filamentphp/schemas/zipball/4fd5207083308290c6fa14b34b9ade36c7e8d3d9",
|
"url": "https://api.github.com/repos/filamentphp/schemas/zipball/1638d2b16f7684b7925d9c6253592ecd308d7f12",
|
||||||
"reference": "4fd5207083308290c6fa14b34b9ade36c7e8d3d9",
|
"reference": "1638d2b16f7684b7925d9c6253592ecd308d7f12",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1764,20 +1764,20 @@
|
|||||||
"issues": "https://github.com/filamentphp/filament/issues",
|
"issues": "https://github.com/filamentphp/filament/issues",
|
||||||
"source": "https://github.com/filamentphp/filament"
|
"source": "https://github.com/filamentphp/filament"
|
||||||
},
|
},
|
||||||
"time": "2026-01-23T10:52:09+00:00"
|
"time": "2026-01-27T12:11:14+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/support",
|
"name": "filament/support",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/support.git",
|
"url": "https://github.com/filamentphp/support.git",
|
||||||
"reference": "63698913952f41922f74d632c2dd9adff600bf7c"
|
"reference": "26894b15b989f89c83b004b38e513b9b2843a0c4"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/filamentphp/support/zipball/63698913952f41922f74d632c2dd9adff600bf7c",
|
"url": "https://api.github.com/repos/filamentphp/support/zipball/26894b15b989f89c83b004b38e513b9b2843a0c4",
|
||||||
"reference": "63698913952f41922f74d632c2dd9adff600bf7c",
|
"reference": "26894b15b989f89c83b004b38e513b9b2843a0c4",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1822,20 +1822,20 @@
|
|||||||
"issues": "https://github.com/filamentphp/filament/issues",
|
"issues": "https://github.com/filamentphp/filament/issues",
|
||||||
"source": "https://github.com/filamentphp/filament"
|
"source": "https://github.com/filamentphp/filament"
|
||||||
},
|
},
|
||||||
"time": "2026-01-23T10:52:20+00:00"
|
"time": "2026-01-27T12:11:14+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/tables",
|
"name": "filament/tables",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/tables.git",
|
"url": "https://github.com/filamentphp/tables.git",
|
||||||
"reference": "28107cc36098d86a4ac1511a3761bef7dc2cb986"
|
"reference": "ae5a17dfc442b9ac9ff6d3f91a96538c3771ee3c"
|
||||||
},
|
},
|
||||||
"dist": {
|
"dist": {
|
||||||
"type": "zip",
|
"type": "zip",
|
||||||
"url": "https://api.github.com/repos/filamentphp/tables/zipball/28107cc36098d86a4ac1511a3761bef7dc2cb986",
|
"url": "https://api.github.com/repos/filamentphp/tables/zipball/ae5a17dfc442b9ac9ff6d3f91a96538c3771ee3c",
|
||||||
"reference": "28107cc36098d86a4ac1511a3761bef7dc2cb986",
|
"reference": "ae5a17dfc442b9ac9ff6d3f91a96538c3771ee3c",
|
||||||
"shasum": ""
|
"shasum": ""
|
||||||
},
|
},
|
||||||
"require": {
|
"require": {
|
||||||
@@ -1868,11 +1868,11 @@
|
|||||||
"issues": "https://github.com/filamentphp/filament/issues",
|
"issues": "https://github.com/filamentphp/filament/issues",
|
||||||
"source": "https://github.com/filamentphp/filament"
|
"source": "https://github.com/filamentphp/filament"
|
||||||
},
|
},
|
||||||
"time": "2026-01-23T10:52:09+00:00"
|
"time": "2026-01-27T12:10:54+00:00"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/widgets",
|
"name": "filament/widgets",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/widgets.git",
|
"url": "https://github.com/filamentphp/widgets.git",
|
||||||
@@ -9479,7 +9479,7 @@
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "filament/upgrade",
|
"name": "filament/upgrade",
|
||||||
"version": "v4.6.0",
|
"version": "v4.6.1",
|
||||||
"source": {
|
"source": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "https://github.com/filamentphp/upgrade.git",
|
"url": "https://github.com/filamentphp/upgrade.git",
|
||||||
@@ -12814,12 +12814,12 @@
|
|||||||
],
|
],
|
||||||
"aliases": [],
|
"aliases": [],
|
||||||
"minimum-stability": "stable",
|
"minimum-stability": "stable",
|
||||||
"stability-flags": [],
|
"stability-flags": {},
|
||||||
"prefer-stable": true,
|
"prefer-stable": true,
|
||||||
"prefer-lowest": false,
|
"prefer-lowest": false,
|
||||||
"platform": {
|
"platform": {
|
||||||
"php": "^8.3"
|
"php": "^8.3"
|
||||||
},
|
},
|
||||||
"platform-dev": [],
|
"platform-dev": {},
|
||||||
"plugin-api-version": "2.6.0"
|
"plugin-api-version": "2.9.0"
|
||||||
}
|
}
|
||||||
@@ -25,7 +25,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ return new class extends Migration
|
|||||||
$table->decimal('margin', 5, 1)->default(0);
|
$table->decimal('margin', 5, 1)->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ return new class extends Migration
|
|||||||
$table->boolean('active_spread')->default(0);
|
$table->boolean('active_spread')->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ return new class extends Migration
|
|||||||
$table->boolean('active_spread')->default(0);
|
$table->boolean('active_spread')->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ return new class extends Migration
|
|||||||
$table->boolean('active_spread')->default(0);
|
$table->boolean('active_spread')->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ return new class extends Migration
|
|||||||
$table->boolean('active_spread')->default(0);
|
$table->boolean('active_spread')->default(0);
|
||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ return new class extends Migration
|
|||||||
$table->boolean('flags')->default(0);
|
$table->boolean('flags')->default(0);
|
||||||
$table->boolean('active_spread')->default(0);
|
$table->boolean('active_spread')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ return new class extends Migration
|
|||||||
$table->decimal('difference', 5, 4)->default(0);
|
$table->decimal('difference', 5, 4)->default(0);
|
||||||
$table->boolean('active_spread')->default(0);
|
$table->boolean('active_spread')->default(0);
|
||||||
$table->boolean('nuh_check')->default(0);
|
$table->boolean('nuh_check')->default(0);
|
||||||
|
$table->timestamp('last_updated');
|
||||||
$table->timestamps();
|
$table->timestamps();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
return new class extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*/
|
||||||
|
public function up(): void
|
||||||
|
{
|
||||||
|
Schema::create('odds_tables', function (Blueprint $table) {
|
||||||
|
$table->id();
|
||||||
|
$table->string('name');
|
||||||
|
$table->string('oddnames');
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*/
|
||||||
|
public function down(): void
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('odds_tables');
|
||||||
|
}
|
||||||
|
};
|
||||||
@@ -23,6 +23,7 @@ class DatabaseSeeder extends Seeder
|
|||||||
MultilineSettingSeeder::class,
|
MultilineSettingSeeder::class,
|
||||||
TxoddsMarketsSeeder::class,
|
TxoddsMarketsSeeder::class,
|
||||||
CountryItalianSeeder::class,
|
CountryItalianSeeder::class,
|
||||||
|
OddsTableSeeder::class,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,36 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace Database\Seeders;
|
||||||
|
|
||||||
|
use Illuminate\Database\Seeder;
|
||||||
|
use Illuminate\Support\Facades\DB;
|
||||||
|
|
||||||
|
class OddsTableSeeder extends Seeder
|
||||||
|
{
|
||||||
|
public function run(): void
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Provoider
|
||||||
|
*/
|
||||||
|
$sql = "INSERT INTO `odds_tables` (`id`, `name`, `oddnames`, `created_at`, `updated_at`)
|
||||||
|
VALUES
|
||||||
|
(1, 'odds_2ways', 'h2w,a2w', NULL, NULL),
|
||||||
|
(2, 'odds_2ways_s1', 'h2w,a2w', NULL, NULL),
|
||||||
|
(3, 'odds_3ways', 'h3w,d3w,a3w', NULL, NULL),
|
||||||
|
(4, 'odds_3ways_ht', 'h3w,d3w,a3w', NULL, NULL),
|
||||||
|
(5, 'odds_dc', 'dc1x,dc12,dcx2', NULL, NULL),
|
||||||
|
(6, 'odds_dnb', 'dnb1,dnb2', NULL, NULL),
|
||||||
|
(7, 'odds_ggng', 'gg,ng', NULL, NULL),
|
||||||
|
(8, 'odds_points', 'home,away', NULL, NULL),
|
||||||
|
(9, 'odds_points_ht', 'home,away', NULL, NULL),
|
||||||
|
(10, 'odds_points_q1', 'home,away', NULL, NULL),
|
||||||
|
(11, 'odds_totals', 'over,under', NULL, NULL),
|
||||||
|
(12, 'odds_totals_ht', 'over,under', NULL, NULL),
|
||||||
|
(13, 'odds_totals_q1', 'over,under', NULL, NULL),
|
||||||
|
(14, 'odds_tq', 'htq,atq', NULL, NULL);
|
||||||
|
;
|
||||||
|
";
|
||||||
|
DB::unprepared($sql);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -14,15 +14,15 @@ class SupervisorSeeder extends Seeder
|
|||||||
*/
|
*/
|
||||||
$sql = "INSERT INTO `supervisors` (`id`, `name`, `provider_id`, `sport_id`, `txodds_market_id`, `sleep`, `limit`, `runtime`, `commandline_options`, `maxsconds`, `lastcall`, `use_lastcall`, `is_supervisor`, `is_active`, `days_from`, `days_to`, `created_at`, `updated_at`)
|
$sql = "INSERT INTO `supervisors` (`id`, `name`, `provider_id`, `sport_id`, `txodds_market_id`, `sleep`, `limit`, `runtime`, `commandline_options`, `maxsconds`, `lastcall`, `use_lastcall`, `is_supervisor`, `is_active`, `days_from`, `days_to`, `created_at`, `updated_at`)
|
||||||
VALUES
|
VALUES
|
||||||
(1, 'Fixtures', 1, NULL, NULL, 10, 0, '0.279', NULL, 1800, 0, 0, 0, 0, 0, 30, '2025-08-27 07:39:55', '2026-01-27 09:34:20'),
|
(1, 'Fixtures', 1, NULL, NULL, 10, 0, '0.264', NULL, 1800, 0, 0, 0, 0, 0, 30, '2025-08-27 07:39:55', '2026-01-27 13:37:24'),
|
||||||
(2, 'Odds', 1, 1, NULL, 10, 0, '2.912', NULL, 30, 0, 0, 1, 0, 0, 10, '2025-12-01 05:41:02', '2026-01-27 09:37:32'),
|
(2, 'Odds', 1, 1, NULL, 10, 0, '0.167', NULL, 30, 0, 0, 1, 0, 0, 10, '2025-12-01 05:41:02', '2026-01-27 13:38:33'),
|
||||||
(3, 'Fixtures', 2, 0, NULL, 15, 0, '0.266', NULL, 1800, 0, 0, 0, 0, 0, 0, '2025-12-19 11:42:35', '2026-01-16 09:34:05'),
|
(3, 'Fixtures', 2, 0, NULL, 15, 0, '0.266', NULL, 1800, 0, 0, 0, 0, 0, 0, '2025-12-19 11:42:35', '2026-01-16 09:34:05'),
|
||||||
(4, 'Willhill', 2, 0, NULL, 15, 0, '0.842', NULL, 1800, 0, 0, 0, 0, 0, 0, '2025-12-19 11:48:05', '2026-01-16 09:34:57'),
|
(4, 'Willhill', 2, 0, NULL, 15, 0, '0.062', NULL, 1800, 0, 0, 0, 0, 0, 0, '2025-12-19 11:48:05', '2026-01-27 13:44:40'),
|
||||||
(5, 'Bwin', 2, 0, NULL, 15, 0, '0.278', NULL, 1800, 0, 0, 0, 0, 0, 0, '2025-12-22 06:41:18', '2026-01-16 09:35:14'),
|
(5, 'Bwin', 2, 0, NULL, 15, 0, '0.389', NULL, 1800, 0, 0, 0, 0, 0, 0, '2025-12-22 06:41:18', '2026-01-27 13:45:17'),
|
||||||
(6, 'Bet365', 2, 0, NULL, 10, 0, '2.339', NULL, 30, 0, 0, 1, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-16 09:37:35'),
|
(6, 'Bet365', 2, 0, NULL, 10, 0, '0.264', NULL, 30, 0, 0, 1, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-27 13:52:44'),
|
||||||
(7, 'Odds', 2, 0, NULL, 10, 0, '0', NULL, 30, 0, 0, 1, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-14 15:56:02'),
|
(7, 'Odds', 2, 0, NULL, 10, 0, '0', NULL, 30, 0, 0, 1, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-14 15:56:02'),
|
||||||
(8, 'Fixtures', 4, 1, NULL, 10, 0, '1.097', NULL, 30, 0, 0, 0, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-16 10:36:29'),
|
(8, 'Fixtures', 4, 1, NULL, 10, 0, '0.987', NULL, 30, 0, 0, 0, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-27 13:55:15'),
|
||||||
(9, 'Odds', 4, 0, NULL, 15, 0, '0.032', NULL, 1800, 0, 0, 1, 0, 0, 0, '2026-01-03 12:27:44', '2026-01-16 10:57:56'),
|
(9, 'Odds', 4, 0, NULL, 15, 0, '0.031', NULL, 1800, 0, 0, 1, 0, 0, 0, '2026-01-03 12:27:44', '2026-01-27 13:56:28'),
|
||||||
(10, 'Fixtures', 3, 0, NULL, 10, 0, '1.368', NULL, 30, 0, 0, 0, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-14 15:55:25'),
|
(10, 'Fixtures', 3, 0, NULL, 10, 0, '1.368', NULL, 30, 0, 0, 0, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-14 15:55:25'),
|
||||||
(11, 'Odds', 3, 0, NULL, 15, 0, NULL, NULL, 1800, 0, 0, 1, 0, 0, 0, '2026-01-03 12:27:44', '2026-01-14 15:55:24'),
|
(11, 'Odds', 3, 0, NULL, 15, 0, NULL, NULL, 1800, 0, 0, 1, 0, 0, 0, '2026-01-03 12:27:44', '2026-01-14 15:55:24'),
|
||||||
(12, 'Odds', 5, 1, NULL, 10, 0, '0.284', NULL, 30, 0, 0, 1, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-16 11:02:04'),
|
(12, 'Odds', 5, 1, NULL, 10, 0, '0.284', NULL, 30, 0, 0, 1, 0, 0, 0, '2025-12-18 17:44:33', '2026-01-16 11:02:04'),
|
||||||
@@ -37,7 +37,7 @@ class SupervisorSeeder extends Seeder
|
|||||||
(21, 'Odds', 1, 2, NULL, 15, 0, NULL, NULL, 30, 0, 0, 1, 0, 0, 10, '2026-01-08 17:57:14', '2026-01-14 15:52:43'),
|
(21, 'Odds', 1, 2, NULL, 15, 0, NULL, NULL, 30, 0, 0, 1, 0, 0, 10, '2026-01-08 17:57:14', '2026-01-14 15:52:43'),
|
||||||
(22, 'Odds', 1, 5, NULL, 15, 0, NULL, NULL, 30, 0, 0, 1, 0, 0, 10, '2026-01-08 17:57:24', '2026-01-14 15:52:44'),
|
(22, 'Odds', 1, 5, NULL, 15, 0, NULL, NULL, 30, 0, 0, 1, 0, 0, 10, '2026-01-08 17:57:24', '2026-01-14 15:52:44'),
|
||||||
(23, 'DB Mapper', 7, NULL, NULL, 15, 0, '0.006', NULL, 1800, 0, 0, 0, 0, 0, 0, '2026-01-13 05:55:30', '2026-01-19 04:17:21'),
|
(23, 'DB Mapper', 7, NULL, NULL, 15, 0, '0.006', NULL, 1800, 0, 0, 0, 0, 0, 0, '2026-01-13 05:55:30', '2026-01-19 04:17:21'),
|
||||||
(24, '', 8, 2, 0, 30, 0, '0.067', NULL, 30, 1768405759, 0, 1, 0, 10, 10, '2026-01-14 15:42:40', '2026-01-27 10:28:17'),
|
(24, '', 8, 1, 0, 30, 0, '0.067', NULL, 30, 1768405759, 0, 1, 0, 10, 10, '2026-01-14 15:42:40', '2026-01-27 13:57:23'),
|
||||||
(25, '', 8, 1, 4, 30, 0, NULL, NULL, 30, 0, 0, 1, 0, 10, 10, '2026-01-14 16:56:25', '2026-01-14 17:20:08'),
|
(25, '', 8, 1, 4, 30, 0, NULL, NULL, 30, 0, 0, 1, 0, 10, 10, '2026-01-14 16:56:25', '2026-01-14 17:20:08'),
|
||||||
(26, '', 8, 1, 65536, 30, 0, NULL, NULL, 30, 0, 0, 1, 0, 10, 10, '2026-01-14 16:56:28', '2026-01-14 17:20:08'),
|
(26, '', 8, 1, 65536, 30, 0, NULL, NULL, 30, 0, 0, 1, 0, 10, 10, '2026-01-14 16:56:28', '2026-01-14 17:20:08'),
|
||||||
(27, '', 8, 1, 65540, 30, 0, NULL, NULL, 30, 0, 0, 1, 0, 10, 10, '2026-01-14 16:56:31', '2026-01-14 17:20:08'),
|
(27, '', 8, 1, 65540, 30, 0, NULL, NULL, 30, 0, 0, 1, 0, 10, 10, '2026-01-14 16:56:31', '2026-01-14 17:20:08'),
|
||||||
@@ -66,11 +66,10 @@ class SupervisorSeeder extends Seeder
|
|||||||
(50, '', 8, 5, 131073, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-14 17:41:16', '2026-01-14 17:41:25'),
|
(50, '', 8, 5, 131073, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-14 17:41:16', '2026-01-14 17:41:25'),
|
||||||
(51, '', 9, 1, NULL, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-16 12:05:14'),
|
(51, '', 9, 1, NULL, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-16 12:05:14'),
|
||||||
(52, '', 10, 0, NULL, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-16 12:05:14'),
|
(52, '', 10, 0, NULL, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-16 12:05:14'),
|
||||||
(53, 'Generate Default Setting', 7, 0, NULL, 30, 0, '0.017', NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-27 11:23:00'),
|
(53, 'Generate Setting', 7, 0, NULL, 30, 0, '0.02', NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-27 13:39:46'),
|
||||||
(54, 'Generate Alarms', 7, 1, NULL, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-27 11:25:41'),
|
(54, 'Generate Alarms', 7, 1, NULL, 30, 0, '0', NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-16 12:05:14', '2026-01-27 13:42:39'),
|
||||||
(55, 'Txodds Offerstatus', 7, NULL, NULL, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-27 11:25:56', '2026-01-27 11:26:05');
|
(55, 'Txodds Offerstatus', 7, NULL, NULL, 30, 0, NULL, NULL, 30, 0, 0, 0, 0, 10, 10, '2026-01-27 11:25:56', '2026-01-27 11:26:05');
|
||||||
";
|
";
|
||||||
|
|
||||||
DB::unprepared($sql);
|
DB::unprepared($sql);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user