Refactor VisaMasterPaymentOrdersMigrator to enhance data migration process
- Updated the migration logic to insert records into the 'visa_master_payment_orders' table. - Improved handling of sender and receiver data by decoding JSON fields and providing fallback values. - Added a test route in web.php to trigger the migration for debugging purposes.
This commit is contained in:
@@ -21,34 +21,46 @@ class VisaMasterPaymentOrdersMigrator
|
||||
continue;
|
||||
}
|
||||
|
||||
/**
|
||||
* "id": 5,
|
||||
"unique_id": "TB1304-5",
|
||||
"type": "visa",
|
||||
"passport_name": "Döwran",
|
||||
"passport_surname": "Myratlyýew",
|
||||
"phone": "+(993)-65-87-59-99",
|
||||
"email": null,
|
||||
"region": "ag",
|
||||
"branch_id": 5,
|
||||
"user_id": 3,
|
||||
"address": "Aşgabat ş. A.Gowşudow, 57, 2",
|
||||
"sender_datas": "[{\"passport_serie\":\"I-AH\",\"passport_number\":144505,\"full_name\":\"D\\u00f6wran Myratly\\u00fdew\"}]",
|
||||
"payment_reciever": "[{\"passport_serie\":\"II-AH\",\"passport_number\":121445,\"full_name\":\"Kerimberdi Myratly\\u00fdew\"}]",
|
||||
"documents": null,
|
||||
"status": "processing",
|
||||
"notes": null,
|
||||
"created_at": "2024-09-24 19:34:35",
|
||||
"updated_at": "2024-11-24 15:12:04",
|
||||
"paid": true,
|
||||
"deleted_at": "2024-11-24 15:12:04",
|
||||
"sender_full_name": null,
|
||||
"sender_passport_serie": null,
|
||||
"sender_passport_number": null,
|
||||
"sender_deposit_account": null
|
||||
*/
|
||||
|
||||
DB::table('loan_orders')->insert((array) $item);
|
||||
$sender_datas = json_decode($item->sender_datas);
|
||||
$payment_reciever = json_decode($item->payment_reciever);
|
||||
|
||||
$sender_full_name = $item->sender_full_name ?: ($sender_datas[0]->full_name ?? '');
|
||||
$sender_passport_serie = $item->sender_passport_serie ?: ($sender_datas[0]->passport_serie ?? '');
|
||||
$sender_passport_number = $item->sender_passport_number ?: ($sender_datas[0]->passport_number ?? '');
|
||||
|
||||
DB::table('visa_master_payment_orders')->insert([
|
||||
'id' => $item->id,
|
||||
'unique_id' => $item->unique_id,
|
||||
'type' => $item->type,
|
||||
'passport_name' => $item->passport_name,
|
||||
'passport_surname' => $item->passport_surname,
|
||||
'phone' => unMaskTurkmenNumber($item->phone),
|
||||
'email' => $item->email,
|
||||
'region' => $item->region,
|
||||
'branch_id' => $item->branch_id,
|
||||
'address' => $item->address,
|
||||
'status' => $item->status,
|
||||
'notes' => $item->notes,
|
||||
|
||||
'sender_full_name' => $sender_full_name,
|
||||
'sender_passport_serie' => $sender_passport_serie,
|
||||
'sender_passport_number' => $sender_passport_number,
|
||||
'sender_deposit_account' => $item->sender_deposit_account,
|
||||
|
||||
'reciever_full_name' => $payment_reciever[0]->full_name ?? '',
|
||||
'reciever_passport_serie' => $payment_reciever[0]->passport_serie ?? '',
|
||||
'reciever_passport_number' => $payment_reciever[0]->passport_number ?? '',
|
||||
|
||||
'sender_datas' => $item->sender_datas,
|
||||
'payment_reciever' => $item->payment_reciever,
|
||||
'documents' => $item->documents,
|
||||
|
||||
'created_at' => $item->created_at,
|
||||
'updated_at' => $item->updated_at,
|
||||
'paid' => $item->paid,
|
||||
'deleted_at' => $item->deleted_at,
|
||||
]);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user