- 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>
46 lines
1.1 KiB
PHP
46 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace Modules\Webstatement\Models;
|
|
|
|
use Illuminate\Database\Eloquent\Model;
|
|
|
|
class AtmTransaction extends Model
|
|
{
|
|
/**
|
|
* The attributes that are mass assignable.
|
|
*
|
|
* @var array<int, string>
|
|
*/
|
|
protected $fillable = [
|
|
'transaction_id',
|
|
'card_acc_id',
|
|
'pan_number',
|
|
'txn_type',
|
|
'merchant_id',
|
|
'txn_amount',
|
|
'booking_date',
|
|
'trans_ref',
|
|
'retrieval_ref_no',
|
|
'stmt_nos',
|
|
'debit_acct_no',
|
|
'credit_acct_no',
|
|
'chrg_amount',
|
|
'value_date',
|
|
'stan_no',
|
|
'trans_status',
|
|
'proc_code',
|
|
];
|
|
|
|
/**
|
|
* The attributes that should be cast.
|
|
*
|
|
* @var array<string, string>
|
|
*/
|
|
protected $casts = [
|
|
'booking_date' => 'datetime',
|
|
'value_date' => 'datetime',
|
|
'txn_amount' => 'decimal:2',
|
|
'chrg_amount' => 'decimal:2',
|
|
];
|
|
}
|