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:
Mekan1206
2025-12-21 03:18:50 +05:00
parent 2ec9b28a60
commit 8e548126b2
2 changed files with 40 additions and 28 deletions

View File

@@ -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,
]);
}
}
}

View File

@@ -1,11 +1,11 @@
<?php
use Illuminate\Support\Facades\Route;
use Database\Seeders\Migrators\VisaMasterPaymentOrdersMigrator;
Route::redirect('/', filament_path());
Route::get('test', function () {
return 'done';
});
// Route::middleware(['auth'])->group(function () {