Files
tbbank-new/database/seeders/Migrators/VisaMasterPaymentOrdersMigrator.php
Mekan1206 76c05ebe7c Refactor ActivityLogModule and clean up seeders
- Adjusted indentation in ActivityLogModule methods for consistency.
- Simplified ActivityLogRepository class by removing unnecessary lines.
- Updated FillJsonData seeder to streamline the run method.
- Modified various Migrator classes to change JSON data paths for testing and added sequence reset statements for better database integrity.
2025-12-21 19:16:26 +05:00

68 lines
2.6 KiB
PHP

<?php
namespace Database\Seeders\Migrators;
use Illuminate\Support\Facades\DB;
use JsonMachine\Items;
class VisaMasterPaymentOrdersMigrator
{
public function migrate(): void
{
DB::table('visa_master_payment_orders')->truncate();
$path = database_path('data/nurmuhammetsdb/visa_master_payment_orders.json');
$items = Items::fromFile($path);
foreach ($items as $id => $item) {
if (! $item) {
continue;
}
$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,
]);
}
DB::statement("SELECT setval('visa_master_payment_orders_id_seq', (SELECT MAX(id) from visa_master_payment_orders));");
DB::statement("SELECT nextval('visa_master_payment_orders_id_seq');");
}
}