Implementation Summary
Tóm tắt các tính năng đã được triển khai trong hệ thống Cohost.
Tính năng chính
1. Hourly Booking System
Hỗ trợ đặt phòng theo giờ với các tùy chọn linh hoạt:
- Số giờ tối thiểu (1–4 giờ)
- Giá cho số giờ đầu tiên và giá mỗi giờ tiếp theo
- Combo giờ (ví dụ: 3 giờ = 250k, 5 giờ = 350k)
- Hệ số giá đặt trong ngày (1x / 1.5x / 2x)
- Giảm giá đặt qua đêm muộn (0–70%)
2. Listing Policies
Chính sách chi tiết cho từng listing:
- Quy tắc chỗ ở (thức ăn ngoài, tiệc, hút thuốc, chụp ảnh, thú cưng, CMND)
- Giờ yên tĩnh (
quiet_time_start/quiet_time_end) - Quy tắc hoàn tiền (
refund_rule) - Nội quy khác (
other_rules)
3. Pricing System
- Giá theo từng ngày trong tuần (7 ngày)
- Quản lý hoa hồng (standard 20% / minimum 15%)
- Tính giá động theo loại đặt phòng
- Preview giá trước khi xác nhận
4. Calendar Synchronization
- Đồng bộ iCal với các nền tảng bên ngoài
- Tích hợp Airbnb calendar
- Background sync tự động mỗi 15 phút (Celery)
5. Amenities Management
- Tiện ích phân theo category (nhóm)
- Hỗ trợ tiện ích riêng tư và có tính phí
- Cấu trúc phân cấp (category → amenity)
6. Listing Validation
- Endpoint preview để validate trước khi tạo
- Validation chi tiết theo từng bước
- Phân biệt lỗi (errors) và cảnh báo (warnings)
Celery Background Tasks
| Task | Mô tả | Tần suất |
|---|---|---|
sync_ical_calendars | Đồng bộ iCal URLs | Mỗi 15 phút |
sync_airbnb_calendar | Đồng bộ Airbnb | Mỗi 15 phút |
sync_all_listings_calendars | Đồng bộ tất cả listing | Mỗi 15 phút |
API Endpoints mới
| Method | Endpoint | Mô tả |
|---|---|---|
POST | /api/v1/listings/preview | Preview & validate listing |
POST | /api/v1/listings/{id}/pricing/weekly | Cập nhật giá theo tuần |
PATCH | /api/v1/listings/{id}/commission | Cập nhật hoa hồng |
PATCH | /api/v1/listings/{id}/policies | Cập nhật chính sách |
GET | /api/v1/amenities | Danh sách tiện ích |
POST | /api/v1/listings/{id}/calendar/ical | Thêm iCal URL |
POST | /api/v1/listings/{id}/calendar/airbnb | Sync Airbnb |