- Memperbaiki kondisi pengecekan `$this->period` yang salah (ekstra tanda kurung) pada beberapa job processing, seperti:
1. `ProcessAtmTransactionJob`
2. `ProcessBillDetailDataJob`
3. `ProcessCategoryDataJob`
4. `ProcessCompanyDataJob`
5. `ProcessCustomerDataJob`
6. `ProcessDataCaptureDataJob`
7. `ProcessFundsTransferDataJob`
8. `ProcessStmtEntryDataJob`
9. `ProcessTellerDataJob`
- Menambahkan kejelasan logging untuk kasus ketika periode tidak disediakan (`period === ''`).
- Menghapus kode komentar tidak terpakai di `ProcessFtTxnTypeConditionJob`.
Perubahan ini memastikan bahwa logika untuk kondisi periode kosong berjalan dengan benar dan menghindari potensi error di runtime.
Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
Memperbaiki pengecekan variabel `$this->period` dari `empty()` menjadi `=== ''` pada berbagai job dalam modul Webstatement untuk memastikan logika validasi berfungsi dengan baik dan lebih eksplisit.
- Job yang diperbaiki:
- `ProcessAccountDataJob`
- `ProcessArrangementDataJob`
- `ProcessAtmTransactionJob`
- `ProcessBillDetailDataJob`
- `ProcessCategoryDataJob`
- `ProcessCompanyDataJob`
- `ProcessCustomerDataJob`
- `ProcessDataCaptureDataJob`
- `ProcessFundsTransferDataJob`
- `ProcessStmtEntryDataJob`
- `ProcessTellerDataJob`
- Memastikan validasi terhadap variabel `$this->period` hanya memfokuskan pada apakah nilainya adalah string kosong (`''`).
- Menambahkan kejelasan pada logging apabila periode tidak tersedia pada setiap job.
- Perubahan ini bertujuan untuk menghindari potensi false negative pada pengecekan kondisi `empty()` yang dapat menyebabkan logika tidak berjalan sebagaimana mestinya.
Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
- Menghapus logika pengecekan dan pengabaian folder `_parameter` di seluruh job pemrosesan data berikut:
- `ProcessAccountDataJob`
- `ProcessAtmTransactionJob`
- `ProcessBillDetailDataJob`
- `ProcessCategoryDataJob`
- `ProcessCompanyDataJob`
- `ProcessCustomerDataJob`
- `ProcessDataCaptureDataJob`
- `ProcessFundsTransferDataJob`
- `ProcessStmtEntryDataJob`
- `ProcessTellerDataJob`
- Menghapus konstanta `PARAMETER_FOLDER` yang terkait dengan folder `_parameter` pada beberapa job.
- Membersihkan code redundancy yang tidak relevan untuk meningkatkan keterbacaan dan efisiensi.
- Logika ini dianggap tidak diperlukan lagi dalam proses pemrosesan data.
Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
- Mengganti parameter `$periods` (array) menjadi `$period` (string) pada semua Job terkait: `ProcessCustomerDataJob`, `ProcessFundsTransferDataJob, etc`.
- Menyederhanakan operasi loop dalam proses data dengan hanya memproses satu periode per eksekusi Job.
- Memodifikasi fungsi controller di `MigrasiController` agar sesuai dengan perubahan parameter dari array ke string.
- Menambahkan pengamanan jika `$period` kosong atau bernilai '_parameter' untuk mencegah proses yang tidak diperlukan.
- Mengurangi duplikasi kode dengan mengeliminasi metode yang mengelola array periode dan menggantinya dengan pendekatan tunggal.
Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
refactor(jobs): update file extension and sanitize transaction reference
- Mengubah konstanta `FILE_EXTENSION` pada `ProcessAtmTransactionJob` dari `.ST.ATM.csv` menjadi `.ST.ATM.TRANSACTION.csv`.
- Menambahkan logika pembersihan pada `trans_reference` dalam `ProcessStmtEntryDataJob`:
- Menghapus string `\BNK` jika ada dalam field `trans_reference`.
- Mempertahankan fungsionalitas utama untuk memastikan kompatibilitas data dan pengolahan job tetap berjalan sesuai dengan kebutuhan.
```
- Menambahkan job `ProcessAtmTransactionJob` untuk memproses data transaksi ATM dari file CSV.
- Implementasi pemrosesan file CSV termasuk pembacaan, pemetaan header, dan simpan data ke model.
- Menyediakan logging untuk pemantauan jumlah data yang diproses dan jumlah error.
- Menambahkan mekanisme penanganan error pada setiap proses baris dan file.
- Menambahkan model `AtmTransaction`:
- Mendeklarasikan atribut yang bisa diisi (`fillable`) seperti `transaction_id`, `txn_amount`, dan lainnya.
- Mendefinisikan tipe data casting untuk beberapa atribut seperti `txn_amount` dalam tipe decimal dan `booking_date` dalam tipe datetime.
- Menambahkan migration `2025_05_21_150736_create_atm_transactions_table` untuk tabel `atm_transactions`:
- Tabel memiliki kolom seperti `transaction_id`, `txn_amount`, `booking_date`, dan indeks untuk kolom tertentu.
- Meng-handle struktur kolom untuk mendukung atribut yang diperlukan di model.
- Memperbarui `MigrasiController`:
- Menambahkan fungsi `ProcessAtmTransaction` untuk menjadwalkan `ProcessAtmTransactionJob`.
- Memperbaiki pesan response pada beberapa fungsi agar lebih deskriptif dan konsisten.
- Memperbarui pemanggilan fungsi dari `__invoke` di bagian pemrosesan data (`ProcessAtmTransaction`) untuk period tertentu.
Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>