2 Commits

Author SHA1 Message Date
Daeng Deni Mardaeni
deb702c68e feat(webstatement): tambahkan kolom dealer_desk pada model dan tabel tellers
- Menambahkan atribut baru `dealer_desk` pada properti `$fillable` di model `Teller` untuk memungkinkan atribut ini diisi secara massal.
- Membuat migration baru `2025_05_29_024729_add_dealer_desk_to_tellers_table` untuk penambahan kolom `dealer_desk` ke dalam tabel `tellers`.
  - Kolom `dealer_desk` bertipe string dan dapat bernilai null.
  - Penempatan kolom dilakukan setelah kolom `last_version`.
- Menambahkan method untuk rollback migration yang menghapus kolom `dealer_desk` dari tabel `tellers`.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-29 09:47:57 +07:00
Daeng Deni Mardaeni
e511025307 feat(webstatement): tambahkan fitur proses data teller
- Menambahkan job baru `ProcessTellerDataJob` untuk memproses data teller dari file CSV.
- Membuat controller method `ProcessTellerData` di `MigrasiController` untuk dispatch job `ProcessTellerDataJob`.
- Menambahkan model baru `Teller` yang merepresentasikan data teller dengan kolom sesuai header map pada CSV.
- Menambahkan migrasi `2025_05_21_144332_create_tellers_table.php` untuk membuat tabel database `tellers` dengan struktur data lengkap.
- Menambahkan logika pada job untuk membaca, memproses, dan menyimpan data CSV ke dalam database.
- Menyediakan mekanisme pemrosesan file CSV termasuk:
  - Validasi jumlah kolom pada CSV jika tidak sesuai dengan header.
  - Membuat dan menghapus file sementara selama pemrosesan.
  - Mapping data CSV ke atribut model `Teller`.
  - Penanganan error saat menyimpan data ke model `Teller`.
  - Logging proses meliputi jumlah data yang diproses dan error selama jalannya job.

Signed-off-by: Daeng Deni Mardaeni <ddeni05@gmail.com>
2025-05-21 22:01:31 +07:00