Skip to main content
#P1108

Function getCommunicationsCharter

·  هدف:

این متد استاتیک برای واکشی اطلاعات اولیه و ضروری یک چارتر برای استفاده در ماژول “ارتباطات” (Communications) طراحی شده است. هدف آن، فراهم کردن یک لیست از آیتم‌های محاسباتی (کلاس‌ها/اتاق‌ها) موجود در آن چارتر به همراه اطلاعات کلی چارتر (مانند مبدأ، مقصد و تاریخ) است. متد نوع چارتر را تشخیص داده و بر اساس آن، کوئری را به جدول محاسبات مربوطه (charter_calculations_route یا charter_calculations_accommodation) ارسال می‌کند. خروجی شامل اطلاعات اصلی چارتر و لیستی از شناسه‌های آیتم‌های آن است که می‌تواند برای ساخت منوهای کشویی در فرم‌های ایجاد ارتباط استفاده شود.

ویژگی‌ها توضیحات
هدف کلی واکشی اطلاعات کلی و لیست آیتم‌های یک چارتر برای ماژول ارتباطات.
متد استاتیک قابل فراخوانی به صورت عمومی (CharterController::getCommunicationsCharter(...)).
انتخاب جدول پویا تشخیص خودکار جدول محاسبات بر اساس نوع چارتر.
خروجی ساده بازگرداندن اطلاعات ضروری (information) و لیستی از شناسه‌های آیتم‌ها (calculations).
ساختار داده پیچیده تأمین داده برای UI ایجاد و ویرایش ارتباطات.

·     ورودی‌ها (پارامتر‌ها):

 

توضیحات موقعیت نوع داده نام پارمتر
شناسه چارتر اصلی که اطلاعات آن مورد نیاز است. Parameter integer mainId

·     خروجی (Return):

 

توضیحات نوع داده
یک آرایه انجمنی با دو کلید information (شامل origin, destination, start) و calculations (مجموعه‌ای از آبجکت‌ها که هر کدام شناسه یک آیتم را دارند). array

·  مثال استفاده / سناریو:

سناریو: واکشی اطلاعات چارتر پرواز با شناسه ۱۰۱

  • Call: CharterController::getCommunicationsCharter(101)
  • Action:
  1. اطلاعات چارتر ۱۰۱ از جدول charters واکشی می‌شود.
  2. چون نوع آن route است، تمام شناسه‌های آیتم از charter_calculations_route که main_id=101 دارند، واکشی می‌شوند.
  • Return:
php
    [
        'information' => [
            "origin" => "THR",
            "destination" => "MHD",
            "start" => "2025-10-20 18:00:00"
        ],
        'calculations' => [
            (object)['id' => 501],
            (object)['id' => 502]
        ]
    ]