Files
boursecu_server/app/Console/Kernel.php
T
2026-06-10 18:25:05 +03:30

50 lines
1.3 KiB
PHP

<?php
namespace App\Console;
use App\Console\Commands\Price;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
class Kernel extends ConsoleKernel
{
protected $commands = [
Price::class,
];
/**
* Define the application's command schedule.
*
* @param \Illuminate\Console\Scheduling\Schedule $schedule
* @return void
*/
protected function schedule(Schedule $schedule)
{
// همگام‌سازی قیمت محصولات متغیر (reading_method) — هر ۳۰ ثانیه
$schedule->call(function () {
for ($i = 0; $i < 2; $i++) {
\Illuminate\Support\Facades\Artisan::call('product:sync-prices');
if ($i < 1) {
sleep(30);
}
}
})->everyMinute()->name('sync_product_prices_30s')->withoutOverlapping();
$schedule->command('prices:refresh-zaarbox')
->everyThirtyMinutes()
->name('refresh_zaarbox_prices')
->withoutOverlapping();
}
/**
* Register the commands for the application.
*
* @return void
*/
protected function commands()
{
$this->load(__DIR__.'/Commands');
require base_path('routes/console.php');
}
}