#P1443
POST /api/v2/passenger/update
Route Info
| Method | Endpoint | Controller | Middleware | Purpose |
| POST | /api/v2/passenger/update | UserController@updatePassenger | authWithJwt | ویرایش دادههای هویتی موجود در جدول customers برای یک مسافر مشخص. |
منطق عملکرد
- واکشی رکورد قبلی
customersبر اساسpassenger_id. - آمادهسازی آرایه بروزرسانی و بررسی وجود اعتبار هویت (
identity_check). - در صورت فعال بودن احراز هویت، حذف فیلدهای حساس با سطح اعتماد ≥90.
- ثبت در DB و محاسبه تغییرات با
Functions::arrayDiff(). - در پایان، تولید لاگ type=
UpdatePassenger.
پارامترهای ورودی کلیدی
| نام | نوع | ضروری | توضیح |
| passenger_id | integer | بله | شناسه مسافر هدف. |
| name_fa, lastname_fa | string | خیر | نام فارسی مسافر. |
| citizenship.id | integer | بله | شناسه کشور تابعیت. |
| birthday | string | بله | تاریخ تولد. |
| phone_number | string | بله | شماره موبایل. |
| operator | object | بله | اپراتور JWT. |
نمونه خروجی موفق
{ "status": true, "time": 1732038210 }
امنیت
ورود نیازمند JWT و مطابقت شعبه. حذف پویا فیلدهای هویتی ایمن در زمان احراز هویت فعال.
- DB Facade
- Carbon
- Functions::arrayDiff()
- SystemLog
عملیات تکجدولی کوچک؛ اجرا در ~2ms.
در خطاها، پاسخ JSON شامل status=false و پیام عمومی.
بروزرسانی مستقیم دادهها، بدون cascade به جداول رزرو یا مالی.
ثبت کامل لاگ نوع UpdatePassenger در صف snailJob با تأخیر ۱۰ دقیقه.
- افزودن اعتبارسنجی شماره پاسپورت و فرمت موبایل.
- بهینهسازی حذف فیلدها با mapping سطوح اطمینان پویاتر.
این Endpoint ویرایش رسمی اطلاعات مسافر را انجام میدهد و به صورت امن، فیلدهای دارای احراز هویت معتبر را حفظ میکند.