#P1562
GET /api/v2/support/departments/list
Route Info
| Method |
Endpoint |
Controller |
| GET |
/api/v2/support/departments/list |
OfficialController@listDepartmentsSupport |
شرح عملکرد (Functionality)
این متد لیست دپارتمانهای پشتیبانی فعال را جهت نمایش به کاربر برمیگرداند. نکات فنی و منطقی این روت عبارتند از:
- فیلتر و مرتبسازی: تنها دپارتمانهایی که وضعیت فعال دارند (
status = 1) از جدول support_departments انتخاب شده و بر اساس فیلد order مرتب میشوند.
- جایگزینی پویا نام برند (Brand Injection):
- در هنگام پردازش لیست، سیستم بررسی میکند که آیا کلمه "آژانس" در عنوان فارسی (
title_fa) وجود دارد یا خیر.
- اگر وجود داشته باشد، نام برند آژانس جاری (
brand_fa) از جدول offices (بر اساس branch موجود در درخواست) استخراج شده و جایگزین کلمه "آژانس" میشود.
- مثال: اگر عنوان دپارتمان "امور مالی آژانس" باشد و نام برند "تراولسیتی" باشد، خروجی به "امور مالی تراولسیتی" تغییر میکند.
- ساختار چندزبانه: عنوانها در قالب یک آبجکت شامل کلیدهای
fa و en بازگردانده میشوند.
پارامترهای ورودی (Input Parameters)
| نام پارامتر |
نوع |
الزامی؟ |
توضیحات |
| branch |
Integer |
بله |
شناسه شعبه فعال (جهت یافتن نام برند برای جایگزینی در عنوانها). معمولاً از طریق میدلور تزریق میشود. |
نمونه خروجی (Response)
{
"status": true,
"time": 1732617000,
"data": [
{
"id": 1,
"allowed_response": 1, // سطح دسترسی پاسخدهی (مثلا: 1 برای همه)
"description": "سوالات مربوط به پروازهای داخلی و خارجی",
"title": {
"fa": "فروش پرواز", // بدون تغییر چون کلمه 'آژانس' ندارد
"en": "Flight Sales"
}
},
{
"id": 2,
"allowed_response": 0,
"description": "پیگیری موارد مالی و حسابداری",
"title": {
"fa": "امور مالی آسمان سیر", // 'آژانس' با 'آسمان سیر' جایگزین شده است
"en": "Finance Department"
}
}
]
}