feat(balance): implementasi service layer untuk balance management

- Menambahkan `AccountBalanceService` dengan transaksi PostgreSQL dan proper error handling.
- Implementasi `BalanceServiceProvider` untuk mendukung dependency injection pattern.
- Registrasi `BalanceServiceProvider` dalam `WebstatementServiceProvider`.
- Penambahan `CAST` ke `DECIMAL(15,2)` untuk kompatibilitas PostgreSQL.
- Perhitungan balance summary mencakup opening balance dan closing balance.
- Agregasi transaksi dengan type casting yang aman.
- Implementasi database transaction handling dengan mekanisme rollback dan commit.
- Logging komprehensif untuk debugging dan audit trail.
- Mendukung balance inquiry berdasarkan tanggal maupun periode tertentu.
- Validasi akun dengan pengecekan `exists` untuk memastikan data valid.
This commit is contained in:
Daeng Deni Mardaeni
2025-08-27 16:22:06 +07:00
parent f324f9e3f6
commit 1ff4035b98
3 changed files with 162 additions and 0 deletions

View File

@@ -57,6 +57,7 @@ class WebstatementServiceProvider extends ServiceProvider
{
$this->app->register(EventServiceProvider::class);
$this->app->register(RouteServiceProvider::class);
$this->app->register(BalanceServiceProvider::class);
$this->app->bind(UpdateAtmCardBranchCurrencyJob::class);
}