51 lines
1.3 KiB
PHP
51 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace App\Actions;
|
|
|
|
use App\Models\MultilineClient;
|
|
use App\Models\MultilineSetting;
|
|
use DB;
|
|
use Filament\Notifications\Notification;
|
|
|
|
class MultilineGenerator
|
|
{
|
|
public static function run($record)
|
|
{
|
|
$client_id = $record->id;
|
|
|
|
MultilineClient::where('client_id', $client_id)->update(['disabled' => 1]);
|
|
|
|
$bookmaker = [0, 6, 30, 649, 117];
|
|
|
|
foreach ($record->sport as $sport_id) {
|
|
|
|
$multilines = MultilineSetting::where('sport_id', $sport_id)->get();
|
|
|
|
foreach ($multilines as $multiline) {
|
|
|
|
for ($i = 1; $i <= 4; $i++) {
|
|
|
|
$setting = [];
|
|
$setting['client_id'] = $client_id;
|
|
$setting['sport_id'] = $sport_id;
|
|
$setting['multiline_setting_id'] = $multiline->id;
|
|
$setting['position'] = $i;
|
|
|
|
DB::table('multiline_clients')->updateOrInsert($setting, [
|
|
'bookmaker_id' => $bookmaker[$i],
|
|
'sort' => $i,
|
|
'disabled' => 0,
|
|
]);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
Notification::make()
|
|
->title('Multiline generated successfully')
|
|
->success()
|
|
->send();
|
|
|
|
}
|
|
}
|