Accommodation

بررسی جامع جداول اقامتی

accommodation_board_type

جدول نوع برد اقامت

مقدمه

 یک جدول مرجع برای تعریف نوع خدمات غذایی و برد اقامت در رزروهای هتل و اقامتگاه است. این جدول در بخش‌های مختلف سیستم (رزرو، قیمت‌گذاری و نمایش اطلاعات اقامت) مورد استفاده قرار می‌گیرد.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتای نوع برد اقامت
title_en VARCHAR(255) عنوان انگلیسی نوع برد (مانند BB، HB، FB، RO)
title_fa VARCHAR(255) عنوان فارسی نوع برد اقامت
description TEXT توضیحات تکمیلی درباره خدمات ارائه‌شده در این نوع برد
code VARCHAR(255) کد یکتای برد اقامت
status INT وضعیت فعال بودن نوع برد (۱ = فعال)

جمع‌بندی

 به‌عنوان مرجع تعریف نوع خدمات اقامتی استفاده می‌شود و باعث یکپارچگی در قیمت‌گذاری، رزرو و نمایش اطلاعات هتل می‌گردد. استفاده از فیلد این امکان را می‌دهد تا سیستم بدون وابستگی به متن، منطق خود را پیاده‌سازی کند.


accommodation_cancellation_rules

جدول قوانین لغو اقامت

مقدمه

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

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتا
accommodation BIGINT شناسه اقامت مربوطه
penalty_type INT نوع جریمه اعمال‌شده
percent_penalty INT درصد جریمه لغو نسبت به مبلغ کل
time_left INT بازه زمانی باقی‌مانده تا شروع اقامت
date_from VARCHAR(255) از تاریخ
date_to VARCHAR(255)  تا تاریخ
description TEXT توضیحات تکمیلی
status INT وضعیت فعال بودن

جمع‌بندی

این جدول هسته اصلی سیاست‌های لغو اقامت را تشکیل می‌دهد و با تعریف بازه‌های زمانی و میزان جریمه، امکان کنترل دقیق فرآیند لغو را فراهم می‌کند. استفاده از این ساختار باعث شفافیت، کاهش خطا و یکپارچگی در محاسبه جریمه‌ها می‌شود.


accommodation_facilities_mapping

جدول اتصال اقامت به امکانات

مقدمه

این جدول برای ایجاد ارتباط میان اقامت‌ها و امکانات قابل ارائه طراحی شده است. هر رکورد نشان‌دهنده وجود یک امکان مشخص برای یک اقامت معین بوده و امکان تعریف چندین امکان برای هر اقامت را فراهم می‌سازد. این ساختار از افزونگی اطلاعات جلوگیری کرده و انعطاف‌پذیری سیستم را افزایش می‌دهد.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتای ارتباط اقامت و امکان
facility INT شناسه امکان مرتبط
accommodation INT شناسه اقامت مرتبط

جمع‌بندی

این جدول نقش واسط میان اقامت و امکانات را ایفا می‌کند و امکان مدیریت انعطاف‌پذیر ویژگی‌های هر اقامت را بدون نیاز به تغییر ساختار اصلی داده‌ها فراهم می‌سازد. استفاده از این رویکرد باعث سادگی توسعه و نگه‌داری سامانه می‌شود.


accommodation_policies

جدول سیاست‌ها و قوانین اقامت

مقدمه

این جدول برای نگهداری قوانین، سیاست‌ها و شرایط اجرایی مربوط به هر اقامت طراحی شده است. اطلاعاتی مانند ساعات ورود و خروج، قوانین دریافت هزینه نیم‌روز، شرایط ترنسفر، سیاست‌های مربوط به کودکان و توضیحات تکمیلی در این ساختار ذخیره می‌شوند و نقش مهمی در شفاف‌سازی فرآیند رزرو ایفا می‌کنند.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتا
accommodation BIGINT شناسه اقامت مرتبط
checkin_time VARCHAR(255) ساعت ورود به اقامت
checkout_time VARCHAR(255) ساعت خروج از اقامت
half_charge_from VARCHAR(255) زمان شروع نیم‌شارژ
half_charge_to VARCHAR(255) زمان پایان نیم‌شارژ
concubine INT وضعیت مجاز بودن اقامت زوج بدون نسبت رسمی
single_woman INT وضعیت مجاز بودن اقامت خانم تنها
welcome_transfer INT وجود ترنسفر استقبال هنگام ورود
return_transfer INT وجود ترنسفر برگشت 
foreigners_fee INT وجود هزینه اضافی برای مهمانان خارجی
free_transfer_policy LONGTEXT توضیحات کامل سیاست ترنسفر
free_transfers LONGTEXT جزئیات ترنسفرهای رایگان ارائه‌شده
cancel_description LONGTEXT توضیحات تکمیلی سیاست‌های لغو
reviews LONGTEXT توضیحات یا نظرات درج‌شده درباره اقامت
child_age INT سن کودک
infant_age INT سن نوزاد
is_marketplace INT نشان‌دهنده تعلق اقامت به مارکت‌پلیس
status INT وضعیت فعال یا غیرفعال بودن

جمع‌بندی

این جدول مرجع اصلی نگهداری سیاست‌های اجرایی اقامت است و با تمرکز بر قوانین زمانی، مالی و محدودیت‌های خاص، به یکپارچگی رفتار سیستم در فرآیند رزرو کمک می‌کند. جداسازی این اطلاعات از جدول اصلی اقامت، توسعه‌پذیری و نگه‌داری سامانه را به‌صورت محسوسی بهبود می‌دهد.


accommodation_roomtypes

جدول انواع اتاق اقامت

مقدمه

این جدول برای تعریف و مدیریت انواع اتاق‌های هر اقامت طراحی شده است. اطلاعاتی مانند ظرفیت بزرگسال، کودک و نوزاد، تعداد تخت‌ها و عناوین نمایشی هر نوع اتاق در این ساختار ذخیره می‌شود. این جدول نقش کلیدی در محاسبات ظرفیت و فرآیند رزرو ایفا می‌کند.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتا
accommodation BIGINT شناسه اقامت
fa_title VARCHAR(255) عنوان فارسی نوع اتاق
en_title VARCHAR(255) عنوان انگلیسی نوع اتاق
beds INT تعداد تخت اتاق
extra_bed INT تعداد تخت اضافه قابل ارائه
adult_capacity INT حداکثر ظرفیت بزرگسال
child_capacity INT حداکثر ظرفیت کودک
child_age INT حداکثر سن کودک برای این نوع اتاق
infant_age INT حداکثر سن نوزاد برای این نوع اتاق
room_capacity INT ظرفیت کلی اتاق
status INT وضعیت فعال یا غیرفعال بودن نوع اتاق
created_at TIMESTAMP زمان ایجاد رکورد
updated_at TIMESTAMP زمان آخرین ویرایش رکورد

جمع‌بندی

جدول انواع اتاق، پایهٔ تعریف ظرفیت و ساختار رزرو اقامت محسوب می‌شود و با جداسازی اطلاعات مربوط به هر نوع اتاق، مدیریت قیمت‌گذاری، کنترل ظرفیت و توسعه آینده سیستم را ساده‌تر می‌کند. این طراحی امکان پشتیبانی از اقامت‌های متنوع با ساختارهای مختلف را فراهم می‌سازد.


accommodation_rules

جدول قوانین اقامت

مقدمه

این جدول برای نگهداری قوانین و مقررات مرتبط با هر اقامت طراحی شده است. هر رکورد بیانگر یک قانون مشخص بوده و شامل عنوان، توضیحات کامل و وضعیت فعال یا غیرفعال آن قانون می‌باشد. این ساختار امکان تعریف چندین قانون مجزا برای هر اقامت را فراهم می‌کند.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتا
accommodation BIGINT شناسه اقامت
title_en VARCHAR(255) عنوان انگلیسی قانون اقامت
title_fa VARCHAR(255) عنوان فارسی قانون اقامت
description TEXT توضیحات کامل قانون اقامت
status INT وضعیت فعال یا غیرفعال بودن قانون

جمع‌بندی

جدول قوانین اقامت برای نمایش شفاف محدودیت‌ها و مقررات هر اقامت طراحی شده و با امکان تعریف چند قانون مستقل، انعطاف‌پذیری بالایی در مدیریت سیاست‌های اجرایی اقامت فراهم می‌کند. این جدول معمولاً در کنار سیاست‌ها و قوانین لغو، هسته محتوای اطلاعات اقامت را تکمیل می‌نماید.


Hotels

جدول واحدهای اقامتی

مقدمه

جدول hotels هسته اصلی ماژول اقامت است و تمامی واحدهای اقامتی سیستم شامل هتل، آپارتمان، سوئیت، خانه و ویلا به‌صورت متمرکز در این جدول نگهداری می‌شوند. این جدول مرجع اصلی برای سایر جداول عملیاتی اقامت مانند اتاق‌ها، قیمت‌ها و رزروها محسوب می‌شود.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT UNSIGNED شناسه یکتای واحد اقامتی
type ENUM نوع واحد اقامتی
(hotel، apartment، suite، house، villa)
fa_title VARCHAR(255) عنوان فارسی واحد اقامتی
en_title VARCHAR(255) عنوان انگلیسی واحد اقامتی
rate INT رتبه یا درجه واحد اقامتی
(پیش‌فرض: 1)
country INT شناسه کشور
state INT شناسه استان
city INT شناسه شهر
phone VARCHAR(255) شماره تلفن ثابت
mobile VARCHAR(255) شماره تلفن همراه
sms VARCHAR(255) شماره پیامک
email VARCHAR(255) آدرس ایمیل
site VARCHAR(255) وب‌سایت واحد اقامتی
address VARCHAR(255) آدرس فیزیکی
location VARCHAR(255) اطلاعات متنی موقعیت مکانی
leader_name VARCHAR(255) نام مدیر یا مسئول
leader_mobile VARCHAR(255) شماره تماس مدیر
details LONGTEXT جزئیات کلی واحد اقامتی
board LONGTEXT نوع خدمات پذیرایی
possibilities LONGTEXT امکانات واحد اقامتی
description LONGTEXT توضیحات تفصیلی جهت نمایش عمومی
confirm_status INT وضعیت تأیید واحد اقامتی
(پیش‌فرض: 1)
priority INT اولویت نمایش
(پیش‌فرض: 1)
status INT وضعیت فعال / غیرفعال
(پیش‌فرض: 1)
created_at TIMESTAMP زمان ایجاد رکورد
updated_at TIMESTAMP زمان آخرین ویرایش
logo INT شناسه تصویر لوگو

جمع‌بندی

جدول hotels ستون فقرات ماژول اقامت محسوب می‌شود و ترکیبی از داده‌های عملیاتی، محتوایی و مدیریتی را در خود دارد. طراحی این جدول به‌گونه‌ای است که امکان توسعه ماژول‌های وابسته بدون تغییر در ساختار اصلی فراهم باشد.

mapping_accommodation_cancellation_rules

جدول نگاشت قوانین کنسلی اقامت

مقدمه

 وظیفه نگاشت قوانین کنسلی داخلی سیستم با شناسه‌های قوانین کنسلی ارائه‌دهندگان خارجی  را بر عهده دارد. این جدول نقش کلیدی در یکپارچه‌سازی سیاست‌های لغو رزرو میان سیستم داخلی و سرویس‌های طرف ثالث ایفا می‌کند.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتای رکورد (کلید اصلی)
rule INT شناسه قانون کنسلی داخلی سیستم
(ارجاع منطقی به جدول قوانین کنسلی)
sepehr INT شناسه قانون کنسلی در سرویس Sepehr
(قابل تهی)
tport INT شناسه قانون کنسلی در سرویس Tport
(قابل تهی)
snapp INT شناسه قانون کنسلی در سرویس Snapp
(قابل تهی)
alibaba INT شناسه قانون کنسلی در سرویس Alibaba
(قابل تهی)
eghamat24 INT شناسه قانون کنسلی در سرویس Eghamat24
(قابل تهی)
status INT وضعیت رکورد
(پیش‌فرض: 1 – فعال)

جمع‌بندی

جدول یک جدول تطبیقی  است که لایه یکپارچه‌سازی بین قوانین کنسلی داخلی و سیستم‌های رزرو خارجی را فراهم می‌کند. این طراحی امکان تغییر یا اضافه‌کردنهای جدید را بدون دستکاری ساختار اصلی قوانین کنسلی مهیا می‌سازد.


mapping_accommodations

جدول نگاشت واحدهای اقامتی

مقدمه

این جدول برای ایجاد ارتباط مستقیم بین شناسه واحدهای اقامتی در سامانه داخلی و شناسه‌های متناظر آن‌ها در سامانه‌های تأمین‌کننده خدمات اقامتی طراحی شده است. هدف از این ساختار، یکپارچه‌سازی داده‌ها و جلوگیری از تکرار یا ناهماهنگی اطلاعات در فرآیندهای عملیاتی است.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتای هر رکورد در جدول
accommodation BIGINT شناسه واحد اقامتی در سیستم داخلی
sepehr BIGINT شناسه واحد اقامتی در سامانه سپهر
(قابل تهی)
tport BIGINT شناسه واحد اقامتی در سامانه تی‌پورت
(قابل تهی)
snapptrip BIGINT شناسه واحد اقامتی در سامانه اسنپ‌تریپ
(قابل تهی)
alibaba BIGINT شناسه واحد اقامتی در سامانه علی‌بابا
(قابل تهی)
eghamat24 BIGINT شناسه واحد اقامتی در سامانه اقامت۲۴
(قابل تهی)
iranhotelonline BIGINT شناسه واحد اقامتی در سامانه ایران‌هتل‌آنلاین
(قابل تهی)
airplus BIGINT شناسه واحد اقامتی در سامانه ایرپلاس
(قابل تهی)
status INT وضعیت فعال یا غیرفعال بودن رکورد
(پیش‌فرض: ۱)

پیشنهاد بهبود

بهتر بود که این سرویس ها در جدولی جداگانه ذخیره شوند و در نهایت آیدی آنها در یک ستون نوع سرویس قرار میگرفت تا جدول بهینه باشد و از این حجم از مقادیر خالی جلوگیری شود

جمع‌بندی

 

این جدول نقش کلیدی در هماهنگ‌سازی اطلاعات اقامتی بین سامانه داخلی و منابع مختلف ارائه‌دهنده خدمات ایفا می‌کند. ساختار آن امکان مدیریت ساده تطبیق شناسه‌ها و توسعه آتی ارتباط با منابع جدید را فراهم می‌سازد.


mapping_roomtypes

جدول نگاشت نوع اتاق‌ها

مقدمه

این جدول برای نگاشت شناسه‌های نوع اتاق داخلی سیستم به شناسه‌های متناظر در سامانه‌ها و پلتفرم‌های خارجی رزرو طراحی شده است. این ساختار امکان یکپارچه‌سازی نوع اتاق‌ها با چندین ارائه‌دهنده مختلف را فراهم می‌کند.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتای رکورد نگاشت
roomtype BIGINT شناسه نوع اتاق داخلی سیستم
(قابل تهی)
sepehr INT شناسه نوع اتاق در سامانه سپهر
(قابل تهی)
tport INT شناسه نوع اتاق در سامانه تی‌پورت
(قابل تهی)
snapptrip INT شناسه نوع اتاق در سامانه اسنپ‌تریپ
(قابل تهی)
alibaba INT شناسه نوع اتاق در سامانه علی‌بابا
(قابل تهی)
eghamat24 INT شناسه نوع اتاق در سامانه اقامت۲۴
(قابل تهی)
airplus INT شناسه نوع اتاق در سامانه ایرپلاس
(قابل تهی)
charter INT شناسه نوع اتاق در سامانه چارتر
(قابل تهی)
status INT وضعیت رکورد نگاشت
(پیش‌فرض: ۱)

جمع‌بندی

جدول نگاشت نوع اتاق‌ها نقش واسط بین مدل داده داخلی و شناسه‌های مورد استفاده در سامانه‌های خارجی را ایفا می‌کند و امکان مدیریت هم‌زمان چند پلتفرم رزرو را بدون تداخل در داده‌های هسته فراهم می‌سازد.


mapping_board_type

جدول نگاشت نوع برد

مقدمه

این جدول برای نگاشت نوع برد داخلی اقامت به مقادیر متناظر در سامانه‌ها و پلتفرم‌های خارجی رزرو طراحی شده است. این ساختار امکان یکسان‌سازی مفهوم نوع برد در چندین سرویس مختلف را فراهم می‌سازد.

ساختار جدول

نام ستون نوع داده توضیح
id BIGINT شناسه یکتای رکورد نگاشت
board_type INT شناسه نوع برد در سیستم داخلی
(عدم پذیرش مقدار تهی)
sepehr VARCHAR(255) مقدار متناظر نوع برد در سامانه سپهر
(قابل تهی)
tport INT شناسه نوع برد در سامانه تی‌پورت
(قابل تهی)
snapptrip VARCHAR(255) مقدار متناظر نوع برد در سامانه اسنپ‌تریپ
(قابل تهی)
alibaba INT شناسه نوع برد در سامانه علی‌بابا
(قابل تهی)
eghamat24 INT شناسه نوع برد در سامانه اقامت۲۴
(قابل تهی)
status INT وضعیت رکورد نگاشت
(پیش‌فرض: ۱)

جمع‌بندی

جدول نگاشت نوع برد به‌عنوان لایه تطبیق مفاهیم بین سیستم داخلی و پلتفرم‌های خارجی رزرو عمل می‌کند و از بروز ناهماهنگی در تفسیر خدمات اقامتی در تبادل داده جلوگیری می‌نماید.