126 lines
4.5 KiB
PHP
126 lines
4.5 KiB
PHP
<?php
|
|
|
|
namespace App\Livewire\Mapper;
|
|
|
|
use App\Models\CompetitionGroupProvider;
|
|
use App\Models\ElementProvider;
|
|
use App\Models\Event;
|
|
use App\Models\EventBookmaker;
|
|
use App\Models\Mapper;
|
|
use Illuminate\Support\Facades\Auth;
|
|
|
|
class StoreMapped
|
|
{
|
|
public static function store($arguments, $swopped)
|
|
{
|
|
|
|
$event = Event::where('id', $arguments['id'])->first();
|
|
|
|
$mapper = Mapper::where('event_id', $arguments['event_id'])->first();
|
|
|
|
/*
|
|
EVENT
|
|
"id" => 14039120
|
|
"provider_id" => 1
|
|
"betsapi_id" => 0
|
|
"betradar_id" => 0
|
|
"bet365_id" => 0
|
|
"_1xbet_id" => 0
|
|
"bwin_id" => 0
|
|
"starttime" => "2026-01-02 13:00:00"
|
|
"sport_id" => 1
|
|
"country_id" => 365
|
|
"group_id" => 177539
|
|
"competition_group_id" => 141
|
|
"home_id" => 6963
|
|
"away_id" => 6844
|
|
MAPPER
|
|
"id" => 1
|
|
"event_id" => 11208805
|
|
"sport_id" => 1
|
|
"provider_id" => 2
|
|
"starttime" => "2026-01-02 05:00:00"
|
|
"group" => "Indonesia Liga 4"
|
|
"group_id" => 39616
|
|
"group_cc" => "ID"
|
|
"home" => "Boliyohuto FC"
|
|
"home_id" => 308421
|
|
"home_cc" => "ID"
|
|
"away" => "Panipi Raya FC"
|
|
"away_id" => 308005
|
|
"away_cc" => "ID"
|
|
"created_at" => "2026-01-02 06:33:20"
|
|
"updated_at" => "2026-01-02 06:33:20"
|
|
*/
|
|
|
|
$ele = [];
|
|
$ele['sport_id'] = $event->sport_id;
|
|
$ele['provider_id'] = Auth::user()->provider_id;
|
|
$ele['element_id'] = $event->home_id ?? 0;
|
|
$ele['add_by_method_id'] = 2;
|
|
$ele['name'] = $mapper->home;
|
|
ElementProvider::updateOrCreate(['provider_element_id' => (int) $mapper->home_id], $ele);
|
|
|
|
$ele = [];
|
|
$ele['sport_id'] = $event->sport_id;
|
|
$ele['provider_id'] = Auth::user()->provider_id;
|
|
$ele['element_id'] = $event->away_id ?? 0;
|
|
$ele['add_by_method_id'] = 2;
|
|
$ele['name'] = $mapper->away;
|
|
ElementProvider::updateOrCreate(['provider_element_id' => (int) $mapper->away_id], $ele);
|
|
|
|
$group['sport_id'] = $event->sport_id;
|
|
$group['provider_id'] = Auth::user()->provider_id;
|
|
$group['competition_group_id'] = $event->competition_group_id;
|
|
$group['add_by_method_id'] = 2;
|
|
$group['name'] = $mapper->group;
|
|
CompetitionGroupProvider::updateOrCreate(['provider_group_id' => (int) $mapper->group_id], $group);
|
|
|
|
switch ($mapper->provider_id) {
|
|
case 2:
|
|
// BETSAPI
|
|
$event->betsapi_id = $mapper->event_id;
|
|
$event->bet365_id = $mapper->bet365_id ?? 0;
|
|
break;
|
|
case 3:
|
|
// MAGLOO KENIA
|
|
EventBookmaker::updateOrCreate([
|
|
'event_id' => $arguments['id'],
|
|
'sport_id' => $event->sport_id,
|
|
'bookmaker_id' => 16,
|
|
], ['starttime' => $mapper->starttime, 'in_feed' => 1, 'bmoid' => $mapper->event_id, 'is_swopped' => $swopped]);
|
|
break;
|
|
case 4:
|
|
// MAGLOO NIGERIA
|
|
EventBookmaker::updateOrCreate([
|
|
'event_id' => $arguments['id'],
|
|
'sport_id' => $event->sport_id,
|
|
'bookmaker_id' => 10,
|
|
], ['starttime' => $mapper->starttime, 'in_feed' => 1, 'bmoid' => $mapper->event_id, 'is_swopped' => $swopped]);
|
|
break;
|
|
case 5:
|
|
// LOGIFUTUR NIGERA
|
|
EventBookmaker::updateOrCreate([
|
|
'event_id' => $arguments['id'],
|
|
'sport_id' => $event->sport_id,
|
|
'bookmaker_id' => 35,
|
|
], ['starttime' => $mapper->starttime, 'in_feed' => 1, 'bmoid' => $mapper->event_id, 'is_swopped' => $swopped]);
|
|
break;
|
|
case 6:
|
|
// LOGIFUTUR COLOMBIA
|
|
EventBookmaker::updateOrCreate([
|
|
'event_id' => $arguments['id'],
|
|
'sport_id' => $event->sport_id,
|
|
'bookmaker_id' => 36,
|
|
], ['starttime' => $mapper->starttime, 'in_feed' => 1, 'bmoid' => $mapper->event_id, 'is_swopped' => $swopped]);
|
|
break;
|
|
}
|
|
if ($mapper->betradar_id) {
|
|
$event->betradar_id = $mapper->betradar_id;
|
|
|
|
Mapper::where('id', $mapper->id)->delete();
|
|
}
|
|
$event->save();
|
|
}
|
|
}
|