- Issue created by @afagioli
-
afagioli →
committed 1cbf275f on 2.24.x
staff access to vertical #3532908
-
afagioli →
committed 1cbf275f on 2.24.x
Currently, BeeHotel lacks a dedicated and intuitive interface for hotel staff to efficiently manage daily room rotation and status. Staff members (e.g., housekeepers, front desk) need quick answers to crucial questions like:
Which rooms need to be cleaned today? (Based on departures, or scheduled cleaning for multi-day stays).
Which rooms are currently clean and ready for guests? (Post-cleaning, pre-check-in).
Which rooms have new check-ins today? (To prioritize cleaning or prepare for arrival).
Without this, staff must manually cross-reference booking schedules, room statuses, and cleaning logs, leading to inefficiencies, potential errors, and a slower turnaround time for rooms. This can negatively impact guest satisfaction and operational flow. A clear overview of the day's room rotation is essential for smooth hotel operations.
Implement a new administrative dashboard or a dedicated view within the BeeHotel module that provides real-time information on daily room rotation for hotel staff. This could be achieved through a custom view, potentially with a custom block or page, and leverage existing BeeHotel data (bookings, room types, statuses).
The proposed solution should offer:
A "Needs Cleaning" list: Rooms with a check-out today, or rooms designated for cleaning during a stay.
A "Clean & Ready" list: Rooms marked as clean by housekeeping, awaiting a new guest or available for assignment.
A "Today's Check-ins" list: Rooms with confirmed arrivals scheduled for the current day.
Room Status Updates: A mechanism for housekeeping staff to easily update a room's cleaning status (e.g., "Dirty," "In Progress," "Clean") directly from this interface or a linked page.
This dashboard should be accessible to specific user roles (e.g., "Hotel Staff," "Housekeeping") and be easily navigable.
Remaining Tasks
Define required fields/data points: Ensure booking entities include clear check-in/check-out dates. Consider a dedicated field for room_status (e.g., enum: dirty, clean, in_progress, unavailable).
Create custom views:
View 1: Filter rooms based on check-out date (today) or explicit "needs cleaning" flag.
View 2: Filter rooms by room_status = "Clean".
View 3: Filter rooms based on check-in date (today).
Implement a mechanism for status updates:
Consider a simple form or AJAX-enabled buttons/links directly on the dashboard rows to change room_status.
Ensure proper permissions for status changes.
Design a user-friendly display: Create a visually clear dashboard, possibly with color-coding for different statuses, to quickly convey information.
Integrate into the admin menu: Provide an intuitive path for staff to access this new feature.
Consider notification system (future enhancement): Potentially notify staff when a room's status changes or when a room becomes available.
Documentation: Document the new feature for users and administrators.
Automated status changes: Explore if room_status can automatically change (e.g., to "Dirty" upon check-out).
The primary goal is simplicity and efficiency. The dashboard should be easy to read at a glance, especially on mobile devices, as staff may use tablets or phones. Large, clear buttons for status updates would be beneficial.
No new public APIs are immediately foreseen, but internal functions for querying and updating room statuses would be developed.
Potentially add a room_status field to the Room entity type, or a related entity/field to Booking if status is tied to a specific booking instance. A dedicated room_status field on the Room entity is generally preferred for overall room availability.
Needs work
2.24
Code
staff access to vertical #3532908