Skip to main content
#P1750

GET /v2/core/application_interface/{id}

P. Show Application Interface (Single Item)

این اندپوینت برای دریافت جزئیات کامل یک رابط نرم‌افزاری خاص استفاده می‌شود. با ارسال شناسه (ID) رکورد، سیستم اطلاعات آن را از دیتابیس استخراج کرده و پس از استانداردسازی فیلدها و غنی‌سازی اطلاعات (مانند اطلاعات همکار)، خروجی را بازمی‌گرداند.

Request Overview

URL: /v2/core/application_interface/{id}
Method: GET
Controller: CoreController@showApplicationInterface
Middleware: authWithJwt

Access Control

  • نیاز به توکن احراز هویت (JWT) دارد.
  • شناسه ارسالی باید در جدول application_interface موجود باشد.

Path Parameters

Field Type Description
id integer (الزامی) شناسه منحصر به فرد (Primary Key) رکورد در جدول رابط‌های نرم‌افزاری.

Logic Details

منطق پردازش این متد به شرح زیر است:

  1. جستجو در دیتابیس: ابتدا با استفاده از DB::table('application_interface')->find($id) رکورد مورد نظر بازیابی می‌شود.
  2. بررسی نوع آبجکت (Object Expansion):
    • اگر object_type برابر با colleague باشد، سیستم شناسه موجود در فیلد object را برداشته و اطلاعات همکار (نام، نام خانوادگی، سریال، دفتر و وضعیت) را از مدل Colleague جستجو می‌کند.
    • نتیجه جایگزین مقدار عددی فیلد object می‌شود.
  3. استانداردسازی فرمت (Data Formatting):
    • فیلدهای object_type، service و type که به صورت رشته ساده هستند، به آرایه‌ای شامل id و title تبدیل می‌شوند تا ساختار پاسخ یکپارچه باشد (Front-end friendly).
  4. خروجی: داده نهایی درون آبجکت payload قرار گرفته و ارسال می‌شود.

Response Structure

نمونه پاسخ موفق (200 OK)

{
    "payload": {
        "id": 105,
        "branch": 1,
        "service": {
            "id": "nira",
            "title": "nira"
        },
        "type": {
            "id": "api",
            "title": "api"
        },
        "object_type": {
            "id": "colleague",
            "title": "colleague"
        },
        "object": {
            "id": 50,
            "first_name": "Ali",
            "last_name": "Rezaei",
            "office": 1,
            "status": 1,
            "serial": "12345"
        },
        "status": 1,
        "created_at": "2024-01-01 12:00:00"
    },
    "meta": {
        "timestamp": 1733748000
    }
}

Flowchart

Start Request (GET {id})
DB::find($id)
Is object_type == 'colleague'?
↙ (Yes)
Fetch Colleague Data
& Replace Object
↘ (No)
Keep Original Object ID
Format Fields:
Convert Strings to {id, title} Structure
Return JSON Payload