106 lines
3.6 KiB
PHP
106 lines
3.6 KiB
PHP
<?php
|
|
|
|
namespace App\Mapper;
|
|
|
|
use App\Models\Event;
|
|
use App\Models\Mapper;
|
|
use Illuminate\Support\Carbon;
|
|
|
|
class FindEvent
|
|
{
|
|
public static function search($event, &$groups, &$elements)
|
|
{
|
|
|
|
$event_id = $event['event_id'];
|
|
|
|
unset($event['event_id']);
|
|
|
|
switch ($event['provider_id']) {
|
|
case 2:
|
|
// BETSAPI
|
|
$match_id = Event::where('betsapi_id', $event_id)->value('id');
|
|
break;
|
|
case 3:
|
|
// MAGLOO KENIA
|
|
$match_id = Event::where('magken_id', $event_id)->value('id');
|
|
break;
|
|
case 4:
|
|
// MAGLOO NIGERIA
|
|
$match_id = Event::where('magnig_id', $event_id)->value('id');
|
|
break;
|
|
case 5:
|
|
// LOGIFUTUR NIGERA
|
|
$match_id = Event::where('lognig_id', $event_id)->value('id');
|
|
break;
|
|
case 6:
|
|
// LOGIFUTUR COLOMBIA
|
|
$match_id = Event::where('logcol_id', $event_id)->value('id');
|
|
break;
|
|
default:
|
|
Notice::note('unknown provider', 'r', 1);
|
|
break;
|
|
}
|
|
if ($match_id) {
|
|
Mapper::where('event_id', $event_id)->delete();
|
|
} else {
|
|
|
|
$home_id = $elements[$event['home_id']] ?? 0;
|
|
|
|
$away_id = $elements[$event['away_id']] ?? 0;
|
|
|
|
$cgid = $groups[$event['group_id']] ?? 0;
|
|
|
|
$startime = $event['starttime'];
|
|
|
|
if ($home_id && $away_id && $cgid) {
|
|
|
|
$from = Carbon::createFromDate($startime)->remvoDay();
|
|
|
|
$to = Carbon::createFromDate($starttime_period['end'])->subDay();
|
|
|
|
$match_id = Event::query()
|
|
->where('home_id', $home_id)
|
|
->where('away_id', $away_id)
|
|
->where('competition_group_id', $competition_group_id)
|
|
->where('starttime', '>', $from)
|
|
->where('starttime', '<', $to)
|
|
->value('id')
|
|
->get();
|
|
|
|
if ($match_id) {
|
|
|
|
Event::where('betsapi_id', (int) $betsapi_id)->update(['betradar_id' => $betradar_id, 'bwin_id' => $bwin_id]);
|
|
|
|
switch ($event['provider_id']) {
|
|
case 2:
|
|
// BETSAPI
|
|
Event::where('id', $match_id)->update(['betsapi_id' => $event_id]);
|
|
break;
|
|
case 3:
|
|
// MAGLOO KENIA
|
|
Event::where('id', $match_id)->update(['magken_id' => $event_id]);
|
|
break;
|
|
case 4:
|
|
// MAGLOO NIGERIA
|
|
Event::where('id', $match_id)->update(['magnig_id' => $event_id]);
|
|
break;
|
|
case 5:
|
|
// LOGIFUTUR NIGERA
|
|
Event::where('id', $match_id)->update(['lognig_id' => $event_id]);
|
|
break;
|
|
case 6:
|
|
// LOGIFUTUR COLOMBIA
|
|
Event::where('id', $match_id)->update(['logcol_id' => $event_id]);
|
|
break;
|
|
default:
|
|
}
|
|
} else {
|
|
Mapper::updateOrCreate(['event_id' => $event_id], $event);
|
|
}
|
|
} else {
|
|
Mapper::updateOrCreate(['event_id' => $event_id], $event);
|
|
}
|
|
}
|
|
}
|
|
}
|