feat(webstatement): tambah scheduler untuk GenerateBiayaKartuCsvCommand

- Menambahkan command `GenerateBiayaKartuCsvCommand` ke dalam ServiceProvider.
- Memperbaiki typo pada pemanggilan job `GenerateBiayaKartuCsvJob`.
- Menambahkan konfigurasi scheduler untuk `GenerateBiayaKartuCsvCommand` dengan nilai default dari file `.env`.
- Menyesuaikan log output file scheduler pada perintah yang baru.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
This commit is contained in:
Daeng Deni Mardaeni
2025-05-09 11:26:24 +07:00
parent 94847b704e
commit 7bbf8b64d7
2 changed files with 16 additions and 4 deletions

View File

@@ -32,7 +32,7 @@
$this->info('Memulai proses pembuatan file CSV biaya kartu ATM'); $this->info('Memulai proses pembuatan file CSV biaya kartu ATM');
try { try {
GenerateBiayakartuCsvJob::dispatch(); GenerateBiayaKartuCsvJob::dispatch();
$this->info('Job pembuatan file CSV biaya kartu ATM berhasil dijadwalkan'); $this->info('Job pembuatan file CSV biaya kartu ATM berhasil dijadwalkan');
Log::info('Job pembuatan file CSV biaya kartu ATM berhasil dijadwalkan oleh scheduler'); Log::info('Job pembuatan file CSV biaya kartu ATM berhasil dijadwalkan oleh scheduler');
return Command::SUCCESS; return Command::SUCCESS;

View File

@@ -6,6 +6,7 @@ use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Support\Facades\Blade; use Illuminate\Support\Facades\Blade;
use Illuminate\Support\ServiceProvider; use Illuminate\Support\ServiceProvider;
use Modules\Webstatement\Console\GenerateBiayakartuCommand; use Modules\Webstatement\Console\GenerateBiayakartuCommand;
use Modules\Webstatement\Console\GenerateBiayaKartuCsvCommand;
use Nwidart\Modules\Traits\PathNamespace; use Nwidart\Modules\Traits\PathNamespace;
class WebstatementServiceProvider extends ServiceProvider class WebstatementServiceProvider extends ServiceProvider
@@ -49,7 +50,7 @@ class WebstatementServiceProvider extends ServiceProvider
{ {
$this->commands([ $this->commands([
GenerateBiayakartuCommand::class, GenerateBiayakartuCommand::class,
GenerateBiayakartuCommand::class GenerateBiayaKartuCsvCommand::class
]); ]);
} }
@@ -60,12 +61,23 @@ class WebstatementServiceProvider extends ServiceProvider
protected function registerCommandSchedules(): void protected function registerCommandSchedules(): void
{ {
$schedule = $this->app->make(Schedule::class); $schedule = $this->app->make(Schedule::class);
// Mengambil tanggal dan waktu dari file .env untuk biaya kartu
$biayaKartuDay = env('BIAYA_KARTU_SCHEDULER_DAY', 14); // Default ke tanggal 14
$biayaKartuTime = env('BIAYA_KARTU_SCHEDULER_TIME', '22:00'); // Default ke jam 22:00
// Mengambil tanggal dan waktu dari file .env untuk biaya kartu CSV
$biayaKartuCsvDay = env('BIAYA_KARTU_CSV_SCHEDULER_DAY', 15); // Default ke tanggal 15
$biayaKartuCsvTime = env('BIAYA_KARTU_CSV_SCHEDULER_TIME', '00:00'); // Default ke jam 00:00
// Menjadwalkan job biaya kartu menggunakan nilai dari .env
$schedule->command('webstatement:generate-biaya-kartu') $schedule->command('webstatement:generate-biaya-kartu')
->monthlyOn(14, '22:00') ->monthlyOn((int)$biayaKartuDay, $biayaKartuTime)
->appendOutputTo(storage_path('logs/biaya-kartu-scheduler.log')); ->appendOutputTo(storage_path('logs/biaya-kartu-scheduler.log'));
// Menjadwalkan job biaya kartu CSV menggunakan nilai dari .env
$schedule->command('webstatement:generate-biaya-kartu-csv') $schedule->command('webstatement:generate-biaya-kartu-csv')
->monthlyOn(15, '00:00') ->monthlyOn((int)$biayaKartuCsvDay, $biayaKartuCsvTime)
->appendOutputTo(storage_path('logs/biaya-kartu-csv-scheduler.log')); ->appendOutputTo(storage_path('logs/biaya-kartu-csv-scheduler.log'));