Skip to main content
#P1670

GET /v2/charter/reservation/{type}

Charter: List Reservations & Reports

این اندپوینت لیست رزروها را بر اساس type (نوع گزارش) فیلتر می‌کند. این متد قلب تپنده گزارش‌گیری سیستم چارتر است و حالت‌های مختلفی از جمله رزروهای قطعی، موقت (لاگین شده)، استردادی و نمای گرافیکی "Plan" (مخصوص هتل) را پوشش می‌دهد.

Request Overview

URL: /v2/charter/reservation/{type}
Method: GET
Controller: CharterController@listCharterReservation
Middleware Stack: authWithJwt

Access Control

  • دسترسی معتبر JWT

Request Parameters

Path Parameters

Parameter Type Description
type string (enum) نوع لیست درخواستی. مقادیر مجاز:
  • definite: رزروهای قطعی و فعال
  • temporary: رزروهای موقت (در حال پرداخت/قفل شده)
  • refund: رزروهای استرداد شده
  • warranty: رکوردهای گارانتی
  • deleted: رزروهای حذف شده (Soft Delete)
  • plan: نمای جامع تقویم (مخصوص اقامتگاه)

Query Parameters

Parameter Type Description
id integer شناسه چارتر اصلی (Main Charter ID)
search[from] date (Y-m-d) تاریخ شروع بازه گزارش
search[to] date (Y-m-d) تاریخ پایان بازه گزارش
search[report_type] string فقط برای type=definite:
نحوه فیلتر تاریخ:
  • check_in: بر اساس تاریخ ورود
  • check_out: بر اساس تاریخ خروج
  • guests: مسافرین حاضر در هتل (Guest in House)
  • null: پیش‌فرض (ورود یا خروج در بازه باشد)

Logic Details

۱. منطق فیلتر Definite (رزروهای قطعی)

در این حالت، سیستم رزروهایی که refund_id ندارند و حذف نشده‌اند را برمی‌گرداند. منطق تاریخ بر اساس report_type متغیر است:

  • check_in: checkin_date BETWEEN from AND to
  • check_out: checkout_date BETWEEN from AND to
  • guests: رزروهایی که بازه اقامتشان با بازه انتخابی همپوشانی دارد (مهمانان مقیم).
    checkin <= to AND checkout > from

۲. منطق Temporary (رزروهای موقت)

این بخش رکوردهایی را از جدول charter_temporary_reservation می‌خواند که هنوز منقضی نشده‌اند.
شرط انقضا: created_at + duration > NOW()

۳. منطق Plan (نمای تقویم اقامتگاه)

این حالت پیچیده‌ترین بخش است و داده‌ها را از ۴ منبع تجمیع می‌کند. اگر نوع چارتر accommodation نباشد، خطای 409 برمی‌گرداند.

  • Reservations: رزروهای قطعی در بازه زمانی.
  • Warranties: گارانتی‌های تعریف شده.
  • Locks: قفل‌های موقت (Temporary Reservations) فعال.
  • Disable Rooms: اتاق‌های غیرفعال شده (خرابی و ...).