Actions
Task #196
openHotel Room Category Season
Start date:
03/26/2026
Due date:
03/26/2026 (40 days late)
% Done:
0%
Estimated time:
Description
This module allows a logged-in hotel to define season-based pricing for each room category. Based on the selected start date and end date, the system applies different room rates. These rates will be automatically used in tour plan calculations based on check-in and check-out dates.
Table
c2b_hotel_room_season
- id (PK) INT AUTO_INCREMENT Unique ID
- hotel_id (FK) INT From logged-in hotel session
- room_category_id (FK) INT References c2b_hotel_room_category.id
- season_name VARCHAR(150) Name of the season
- start_date DATE Season start date
- end_date DATE Season end date
- rate DECIMAL(10,2) Seasonal room rate
- is_active BOOLEAN DEFAULT TRUE Active / inactive
- created_at DATETIME Record created date
- updated_at DATETIME Record updated date
Validations
Mandatory
- room_category_id required
- season_name required
- start_date required
- end_date required
- rate required
Season Name
- Minimum 2 characters
- Maximum 150 characters
Date Validation
- start_date ≤ end_date
Overlapping
- Prevent overlapping seasons for same room category.
Rate
- Must be numeric
- Must be ≥ 0
Room Category
- room_category_id must belong to logged-in hotel
Duplicate Validation
- Prevent exact duplicate:
Edit
Allow edit:
- season_name
- start_date
- end_date
- rate
- is_active
Do NOT allow edit:
- hotel_id
- room_category_id
Delete Rule
- Soft delete only:
- is_active = FALSE
Actions