Commit Graph

29 Commits

Author SHA1 Message Date
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
Daeng Deni Mardaeni
e3d92582e0 feat(webstatement): tambahkan fitur ekspor data kartu ATM ke CSV
- Menambahkan `BiayaKartuController` untuk mengelola data kartu ATM.
- Menyediakan endpoint baru `biaya-kartu.index` untuk mengunduh data kartu ATM dalam format CSV.
- Implementasi fungsi untuk:
  - Mengambil data kartu ATM yang memenuhi syarat dari database.
  - Menentukan biaya kartu berdasarkan tipe kartu.
  - Membuat file CSV dengan format khusus dan membersihkan konten dari tanda kutip ganda.
- Memodifikasi logika pembaruan data di `BiayaKartu.php` untuk memperbaiki penempatan pemanggilan fungsi `updateOrCreate`.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-08 17:20:52 +07:00
Daeng Deni Mardaeni
81157ee682 fix(webstatement): perbaiki validasi dan pembaruan data kartu
- Tambahkan validasi responseCode saat memperbarui branch dan currency kartu.
- Pastikan nilai branch dan currency tidak null sebelum pembaruan.
- Tambahkan field crdate saat membuat atau memperbarui data kartu.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-08 16:38:18 +07:00
Daeng Deni Mardaeni
0235f17b01 refactor(webstatement): optimalkan logika pembaruan kartu ATM
- Menambahkan metode untuk mendapatkan data dasar kartu (getCardBaseData).
- Menambahkan metode untuk memeriksa apakah pembaruan branch dan currency diperlukan (needBranchAndCurrencyUpdate).
- Menambahkan metode untuk memperbarui branch dan currency (updateBranchAndCurrency).
- Memisahkan logika menjadi fungsi-fungsi modular untuk meningkatkan keterbacaan dan pemeliharaan kode.
- Mengganti logika pembaruan kartu ATM untuk mendukung pembaruan selektif berdasarkan kebutuhan.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-08 16:23:43 +07:00
Daeng Deni Mardaeni
697966471a feat(webstatement): tambahkan kolom baru dan perbaiki kode job sinkronisasi ATM card
- Menambahkan kolom `crdate` pada tabel `atmcards` di database.
- Memperbaiki struktur dan penyesuaian format kode pada file `BiayaKartu.php`.
- Menyelaraskan alignment konstanta, parameter, dan body fungsi untuk meningkatkan keterbacaan.
- Menambahkan pengelolaan data `crdate` dalam proses sinkronisasi kartu ATM.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-08 16:13:09 +07:00
Daeng Deni Mardaeni
3c792429d4 refactor(webstatement): optimalkan proses sinkronisasi data kartu ATM
- Pisahkan logika sinkronisasi ke dalam metode-metode terpisah untuk meningkatkan keterbacaan kode.
- Tambahkan konstanta untuk API dan database guna mengurangi duplikasi kode.
- Ganti metode sinkronisasi kartu menjadi batch processing untuk efisiensi.
- Implementasikan logging pada berbagai titik untuk mempermudah debugging.
- Tambahkan penanganan error untuk proses batch sinkronisasi dan update data kartu.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-08 14:40:38 +07:00
daengdeni
ae520e406c feat(job): tambahkan fungsi untuk mendapatkan informasi akun
- Menambahkan metode getAccountInfo untuk mengambil informasi saldo akun dari layanan eksternal.
- Memperbarui metode syncAtmCards untuk menyertakan informasi cabang dan mata uang dari akun yang disinkronkan.
2025-05-08 11:54:08 +07:00
daengdeni
bd810389cd feat(atmcard): tambahkan model dan migrasi untuk tabel atmcards
- Menambahkan model Atmcard untuk mengelola data kartu ATM.
- Membuat migrasi untuk tabel atmcards dengan atribut yang diperlukan.
- Menambahkan job BiayaKartu untuk menyinkronkan data kartu dari database Oracle.
2025-05-08 11:20:06 +07:00
Daeng Deni Mardaeni
ca2619be9e feat(job): perbarui jalur file dan pemisah CSV pada ProcessArrangementDataJob
- Mengganti pemisah CSV dari ';' menjadi '~'.
- Menghapus pemeriksaan keberadaan data yang redundan.
2025-04-09 14:03:23 +07:00
Daeng Deni Mardaeni
0b7931b145 feat(job): perbarui jalur file dan pemisah CSV pada ProcessTransactionDataJob
- Memperbarui pemisah CSV dari ';' menjadi '~'.
- Menambahkan pengecekan untuk memastikan '_id' tidak sama dengan 'id' sebelum memperbarui atau membuat entri baru.
2025-04-09 13:56:11 +07:00
Daeng Deni Mardaeni
225ec85bad feat(job): perbarui jalur file dan pemisah CSV pada ProcessStmtNarrFormatDataJob
- Memperbarui pemisah CSV dari ';' menjadi '~'.
- Menambahkan pengecekan untuk memastikan '_id' tidak sama dengan 'id' sebelum melakukan update atau create.
2025-04-09 13:50:56 +07:00
Daeng Deni Mardaeni
8d3e6a21f2 feat(job): perbarui jalur file dan pemisah CSV pada ProcessStmtNarrParamDataJob
- Mengubah pemisah CSV dari ';' menjadi '~'.
- Menambahkan pengecekan untuk memastikan '_id' tidak sama dengan 'id' sebelum melakukan update atau create.
2025-04-09 13:48:47 +07:00
Daeng Deni Mardaeni
500cf2b26a feat(account): perbarui logika pemrosesan data akun
- Tambahkan pengecekan untuk memastikan 'account_number' tidak sama dengan string 'account_number' sebelum menyimpan data akun.
- Perbarui atribut yang dapat diisi pada model Account dengan mengganti 'customer_no' menjadi 'customer_code' dan 'co_code' menjadi 'branch_code'.
2025-04-09 13:39:16 +07:00
Daeng Deni Mardaeni
79c4aa1d39 feat(job): perbarui logika pemrosesan data customer
- Ganti model dari TempCustomer ke Customer untuk pemrosesan data.
- Perbarui jalur file CSV yang digunakan untuk pemrosesan.
- Tambahkan penanganan kesalahan untuk mencatat kesalahan saat memproses customer.
2025-04-08 18:56:57 +07:00
Daeng Deni Mardaeni
21fd3f1b99 feat(account): perbarui logika pemrosesan data akun
- Ganti penggunaan model TempAccount dengan Account.
- Perbarui jalur file CSV yang digunakan untuk pemrosesan.
- Tambahkan logika untuk mengatur nilai default untuk 'start_year_bal' dan 'closure_date'.
- Gunakan firstOrNew untuk menyimpan data akun.
2025-04-08 16:34:42 +07:00
Daeng Deni Mardaeni
ec56dcbc75 feat(email-blast): perbarui tampilan dan logika pengiriman email blast
- Tambahkan pengambilan data penerima dari model Customer.
- Modifikasi konstruktor EmailBlastMail untuk menerima objek penerima.
- Perbarui tampilan email blast untuk menampilkan subjek dan nama penerima.
- Tambahkan styling baru untuk tampilan email agar lebih menarik.
2025-02-18 21:35:51 +07:00
Daeng Deni Mardaeni
a54f32dc16 feat(email-blast): tambahkan job untuk mengirim email blast
- Membuat kelas SendEmailBlast yang mengimplementasikan ShouldQueue.
- Menyediakan konstruktor untuk menerima riwayat email blast dan daftar penerima.
- Mengirim email menggunakan EmailBlastMail untuk setiap penerima.
- Memperbarui status riwayat email blast setelah pengiriman selesai.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
23b4725d33 feat(data-processing): tambahkan job untuk memproses data pelanggan dan akun
- Menambahkan kelas ProcessCopyDataJob untuk menangani pemrosesan data.
- Implementasi metode copyCustomerData untuk menyalin data pelanggan dari TempCustomer.
- Implementasi metode copyAccountData untuk menyalin data akun dari TempAccount.
- Implementasi metode copyStmtEntryData untuk memproses data entri pernyataan dari TempStmtEntry.
- Menangani kesalahan dengan logging untuk setiap proses yang gagal.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
5a66cb6ade feat(jobs): tambahkan job untuk memproses data arrangement
- Membuat kelas ProcessArrangementDataJob untuk memproses file CSV data arrangement.
- Menangani pembacaan file dan pembaruan data menggunakan model TempArrangement.
- Menangani kesalahan dengan logging untuk memudahkan debugging.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
aee13fcba9 feat(jobs): tambahkan job untuk memproses data detail tagihan
- Membuat kelas ProcessBillDetailDataJob untuk memproses file CSV detail tagihan.
- Menangani pembacaan file dan pemrosesan data dengan penanganan kesalahan.
- Menggunakan model TempBillDetail untuk menyimpan data yang diproses.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
f5d675fde8 feat(jobs): tambahkan job untuk memproses data entry statement
- Menambahkan kelas ProcessStmtEntryDataJob untuk memproses file CSV yang berisi data entry statement.
- Membuat model TempStmtEntry untuk menyimpan data entry statement ke dalam database.
- Menambahkan migrasi untuk membuat tabel temp_stmt_entry dengan kolom yang sesuai.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
154fb642b1 feat(jobs): tambahkan job untuk memproses data format narasi
- Menambahkan kelas ProcessStmtNarrFormatDataJob untuk memproses file CSV.
- Menambahkan model TempStmtNarrFormat untuk menyimpan data format narasi.
- Membuat migrasi untuk tabel temp_stmt_narr_format dengan atribut yang diperlukan.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
e5650c6c78 feat(jobs): tambahkan job untuk memproses data parameter narasi
- Menambahkan kelas ProcessStmtNarrParamDataJob untuk memproses file CSV.
- Membuat model TempStmtNarrParam untuk menyimpan data parameter narasi.
- Menambahkan migrasi untuk membuat tabel temp_stmt_narr_param di database.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
904566b9f9 feat(jobs): tambahkan job untuk memproses data transfer dana
- Menambahkan kelas ProcessFundsTransferDataJob untuk memproses file CSV transfer dana.
- Membuat migrasi untuk tabel temp_funds_transfer dengan berbagai field yang diperlukan.
- Menangani kesalahan saat membaca file dan mencatat kesalahan ke log.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
f7362dbc5a feat(transactions): tambahkan job dan model untuk memproses data transaksi
- Menambahkan job `ProcessTransactionDataJob` untuk memproses file CSV transaksi.
- Membuat model `TempTransaction` untuk menyimpan data transaksi sementara.
- Menambahkan migrasi untuk tabel `temp_transactions` dengan atribut yang diperlukan.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
7e6bfded58 feat(jobs): tambahkan job untuk memproses data akun
- Menambahkan kelas ProcessAccountDataJob untuk memproses data akun dari file CSV.
- Mengimplementasikan logika untuk membaca file dan memperbarui atau membuat entri di tabel TempAccount.
- Menangani kesalahan dan mencatat log jika terjadi masalah saat memproses data.
- Menambahkan migrasi untuk membuat tabel temp_accounts dengan kolom yang diperlukan.
2025-02-18 16:36:20 +07:00
Daeng Deni Mardaeni
99d9f6cce1 feat(jobs): tambahkan job untuk memproses data pelanggan
- Menambahkan kelas ProcessCustomerDataJob untuk memproses file CSV cusromer.
- Menggunakan metode updateOrCreate untuk menyimpan atau memperbarui data customer.
- Menangani pengecualian jika file tidak ditemukan atau tidak dapat dibuka.
- Mengatur batas waktu eksekusi job menjadi 24 jam.
2025-02-18 16:36:20 +07:00