Accommodation
بررسی جامع جداول اقامتی
- accommodation_board_type
- accommodation_cancellation_rules
- accommodation_facilities_mapping
- accommodation_policies
- accommodation_roomtypes
- accommodation_rules
- Hotels
- mapping_accommodation_cancellation_rules
- mapping_accommodations
- mapping_roomtypes
- mapping_board_type
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) | شماره پیامک |
| 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 | وضعیت رکورد نگاشت (پیشفرض: ۱) |
جمعبندی
جدول نگاشت نوع برد بهعنوان لایه تطبیق مفاهیم بین سیستم داخلی و پلتفرمهای خارجی رزرو عمل میکند و از بروز ناهماهنگی در تفسیر خدمات اقامتی در تبادل داده جلوگیری مینماید.