move into sonardesk

This commit is contained in:
Mark Gregory
2026-10-12 14:50:13 +01:00
parent 5f0d2ceb72
commit 38b4a7406f
879 changed files with 24021 additions and 1 deletions
@@ -0,0 +1,32 @@
<?php
namespace Modules\Analytics\Providers;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Support\ServiceProvider;
use Modules\Analytics\Console\AggregateAnalytics;
use Modules\Analytics\Console\PruneAnalytics;
use Modules\Analytics\Console\RunScheduledReports;
final class AnalyticsServiceProvider extends ServiceProvider
{
public function register(): void
{
$this->app->register(RouteServiceProvider::class);
$this->mergeConfigFrom(module_path('Analytics', 'Config/config.php'), 'analytics');
}
public function boot(): void
{
$this->loadMigrationsFrom(module_path('Analytics', 'Database/Migrations'));
$this->loadViewsFrom(module_path('Analytics', 'Resources/views'), 'analytics');
if ($this->app->runningInConsole()) {
$this->commands([AggregateAnalytics::class, PruneAnalytics::class, RunScheduledReports::class]);
$this->callAfterResolving(Schedule::class, function (Schedule $schedule): void {
$schedule->command('analytics:aggregate')->hourly()->withoutOverlapping();
$schedule->command('analytics:reports')->everyFifteenMinutes()->withoutOverlapping();
$schedule->command('analytics:prune')->dailyAt('02:30')->withoutOverlapping();
});
}
}
}