Commit Graph

8 Commits

Author SHA1 Message Date
Daeng Deni Mardaeni
012d1629c9 refactor(webstatement): perbaikan struktur dan penyempurnaan kode pada GenerateBiayaKartuCsvJob
- Mengubah konversi konstanta MAX_EXECUTION_TIME menjadi properti.
- Memindahkan dan merapikan fungsi-fungsi `updateCsvLogStart`, `updateCsvLogSuccess`, dan `updateCsvLogFailed` untuk meningkatkan keterbacaan.
- Mengubah format deklarasi fungsi untuk konsistensi dalam penggunaan tipe data return.
- Memperbaiki logika pengambilan file info pada proses pembuatan dan pengunggahan CSV.
- Menambahkan logging yang lebih terstruktur untuk setiap proses (mulai, sukses, gagal).

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-11 17:14:08 +07:00
Daeng Deni Mardaeni
404085f2e7 feat(sync-log): tambahkan integrasi log sinkronisasi untuk BiayaKartu dan GenerateBiayaKartuCsvJob
Penambahan dan perubahan:
- Tambah model `KartuSyncLog` untuk mencatat status sinkronisasi, pembuatan CSV, dan upload SFTP.
- Implementasi logging status sinkronisasi di `BiayaKartu`:
  - Logging status saat sinkronisasi dimulai, berhasil, atau gagal.
  - Statistik sinkronisasi mencakup jumlah data total, sukses, dan gagal.
  - Catatan progres sinkronisasi secara periodik.
- Update proses CSV di `GenerateBiayaKartuCsvJob`:
  - Pembuatan log untuk status pembuatan CSV dan upload ke SFTP.
  - Kanalisasi dan pembaruan log saat pembuatan atau upload dimulai, berhasil, atau gagal.
- Random delay untuk job update branch dan currency dimodifikasi menggunakan ID log sinkronisasi.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-10 15:59:21 +07:00
Daeng Deni Mardaeni
1a62bda959 feat(webstatement): improve CSV generation and database handling
- Tambahkan date-time pada penamaan file CSV untuk meningkatkan traceability.
- Perubahan konstanta nama tabel database dari 'IST77.VW_CMS_VCARD' menjadi 'IST77.CMS_VCARD'.
- Ubah nilai batch size dari 100 menjadi 1000 untuk meningkatkan efisiensi proses.
- Tambahkan join dengan tabel 'IST77.CMS_VCARDTYP' untuk mendapatkan data tambahan pada query database.
- Tambahkan select fields yang lebih lengkap pada query database untuk kebutuhan data yang lebih spesifik.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-10 13:19:39 +07:00
Daeng Deni Mardaeni
ec99361833 refactor(webstatement): ubah pengelolaan default biaya kartu
- Pindahkan pengelolaan default biaya kartu dari konstanta dalam job ke metode `JenisKartu::getDefaultFees`.
- Tambahkan metode `getDefaultFees` pada model `JenisKartu` untuk mengambil data biaya kartu dari database.
- Sesuaikan job `GenerateBiayaKartuCsvJob` agar menggunakan data biaya kartu dari metode `getDefaultFees`.
- Hapus konstanta `DEFAULT_FEES` dan ganti penggunaannya dengan data dari database.
- Tingkatkan fleksibilitas pengambilan data biaya kartu untuk mendukung perubahan data secara dinamis.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-10 10:51:28 +07:00
Daeng Deni Mardaeni
cfde23457f fix(webstatement): update database table references and join logic
- Mengubah referensi tabel database dari 'IST77.VW_CMS_VCARD' menjadi 'IST77.CMS_VCARD'.
- Menambahkan join dengan tabel 'IST77.CMS_VCARDTYP' berdasarkan kolom 'CRTYPE'.
- Memperbaiki urutan logika pengecekan 'getExistingCard' untuk menghindari konflik data.
- Mengubah nilai default pada GenerateBiayaKartuCsvJob dari 'AC' menjadi 'ACAT'.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-09 15:04:42 +07:00
Daeng Deni Mardaeni
94847b704e refactor(webstatement): ubah konstanta CSV_FILENAME menjadi properti dinamis
- Mengubah `CSV_FILENAME` dari konstanta menjadi properti untuk memungkinkan konfigurasi lebih fleksibel.
- Menambahkan `csvFilename` yang diinisialisasi melalui nilai environment `BIAYA_KARTU_CSV_FILENAME` dengan default `biaya_kartu_atm.csv`.
- Memperbarui referensi dari `self::CSV_FILENAME` menjadi `$this->csvFilename` pada proses penulisan file CSV.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-09 09:50:25 +07:00
Daeng Deni Mardaeni
47ad46f664 feat(webstatement): tambahkan fitur upload CSV biaya kartu ATM ke SFTP
- Menambah fungsi `uploadToSftpKartu` untuk mengunggah file CSV ke server SFTP.
- Memperbarui fungsi `generateAtmCardCsv` agar mengembalikan informasi terkait file yang dihasilkan dan status upload.
- Log ditingkatkan untuk mencatat status upload dan error secara lebih rinci.
- Menambahkan mekanisme pengecekan dan logging jika upload ke SFTP gagal, file tetap tersedia secara lokal.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-09 09:48:38 +07:00
Daeng Deni Mardaeni
de93c0d072 feat(webstatement): tambahkan job untuk generate file CSV biaya kartu ATM
- Menambahkan job `GenerateBiayaKartuCsvJob` dengan kemampuan untuk membuat file CSV berisi data biaya kartu ATM.
- File CSV dihasilkan berdasarkan data kartu ATM yang memenuhi kriteria tertentu dari database.
- Penentuan biaya kartu berdasarkan jenis kartu atau nilai default jika tidak ada biaya spesifik.
- Melakukan pembersihan isi file CSV untuk menghapus tanda kutip ganda.
- Logging disertakan untuk mencatat keberhasilan atau kegagalan proses.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-09 09:02:15 +07:00