command('reminder:invoice')->dailyAt($schedule_time); $schedule->command('reminder:bill')->dailyAt($schedule_time); $schedule->command('recurring:check')->dailyAt($schedule_time)->runInBackground(); $schedule->command('storage-temp:clear')->dailyAt('17:00'); $schedule->command('model:prune')->dailyAt('17:00'); // 线上代发价格:每天凌晨 00:00 全量/增量同步一次钉钉线上代发业务报销流程。 // 生产环境由 business-mirror:sync-tables 的 cron 持续增量覆盖,此处保证 // 一个固定的每日零点刷新入口;命令本身在非刷新环境会安全跳过。 $schedule->command('business-mirror:sync-ding-online-daifa-price') ->dailyAt('00:00') ->withoutOverlapping(60) ->runInBackground(); if ((bool) config('services.esign.polling_enabled', false)) { $schedule->command('esign:poll-signatures --quiet') ->cron('*/2 * * * *') ->withoutOverlapping(5) ->runInBackground(); } // 账单冲减页面(500112 冲减收入)每 30 分钟续传到共享业务镜像。 // 走专用命令避开 business_data.datasets 的 clickhouse 放置策略; // refresh_enabled 仅在生产刷新节点开启,本地 schedule 不会真的拉上游。 $schedule->command('business-mirror:sync-bill-offset --max-batches=2') ->everyThirtyMinutes() ->withoutOverlapping(15) ->runInBackground(); } /** * Register the Closure based commands for the application. * * @return void */ protected function commands() { require base_path('routes/console.php'); $this->load(__DIR__ . '/Commands'); } /** * Get the timezone that should be used by default for scheduled events. * * @return \DateTimeZone|string|null */ protected function scheduleTimezone() { return config('app.timezone'); } }