TorbatYar/docs/phases/BeautyBusiness/phase-14-2-salon-management.md
Mortezakoohjani d579d0b142 feat(loyalty): add Loyalty Platform Frontend module
Add frontend/modules/loyalty with types, API client, design system, feature pages and thin App Router routes under app/loyalty/. BFF proxy at app/api/loyalty/. Include loyalty frontend docs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 10:50:55 +03:30

82 lines
2.9 KiB
Markdown

# Phase: Salon Management
| Field | Value |
| --- | --- |
| Identifier | `beauty-business-14-2` |
| Status | Planned |
| Owner | Platform |
| Module(s) | `beauty_business.branches`, `beauty_business.rooms`, `beauty_business.stations`, `beauty_business.branch_policies` |
| Service(s) | `beauty_business` |
| Depends On | `beauty-business-14-0` |
| ADR(s) | TBD |
| Manifest | [phase-manifest.yaml](../../ai-framework/phase-manifest.yaml) |
| Framework | [ADR-013](../../architecture/adr/ADR-013.md) · [ADR-018](../../architecture/adr/ADR-018.md) · [ADR-019](../../architecture/adr/ADR-019.md) |
## Objective
Extend branch operations for beauty venues: treatment rooms, styling stations, chair/bed resources, branch hours, policies (cancellation, deposit, late arrival), and operational settings — enabling booking engine (14.1) to attach resources without owning the booking lifecycle itself.
## Enterprise Phase Discovery
> **Required before Implementation.**
### Target Responsibility (this phase when Complete)
- TreatmentRoom, Station (chair, bed, laser room, spa cabin)
- BranchOperatingHours, BranchPolicy
- Resource availability flags for booking conflict checks
- Events: `beauty_business.room.*`, `beauty_business.station.*`, `beauty_business.branch_policy.*`
### Explicitly Excluded
- Appointment state machine (14.1)
- Service catalog (14.3)
- Staff skills and commission (14.6)
- Healthcare facility/clinical room models
## Business Analysis
| Item | Detail |
| --- | --- |
| Actors | Branch manager, salon owner |
| Business capabilities | Configure locations, rooms, stations, policies |
| Success metrics | Resources bookable by ref; policies enforceable in booking |
| Non-goals | Building IoT, smart-lock vendors |
## Scope
### In Scope
- Extend BeautyBranch with operational metadata (format: salon, barbershop, clinic, laser, spa)
- TreatmentRoom and Station aggregates with capacity and status
- BranchOperatingHours and BranchPolicy (cancellation window, deposit required shell)
- Permissions: `beauty_business.rooms.*`, `beauty_business.stations.*`, `beauty_business.branch_policies.*`
### High-Level Entities
| Entity | Purpose |
| --- | --- |
| TreatmentRoom | Laser room, facial room, spa suite |
| Station | Chair, barber station, nail desk |
| BranchOperatingHours | Open/close per day |
| BranchPolicy | Cancellation, deposit, buffer rules |
## Out of Scope
- Booking lifecycle (14.1) — consumes room/station refs only
- Service definitions (14.3)
- Inventory / retail POS
- Healthcare departments and clinical wards
## Completion Criteria
- [ ] Room/station CRUD + policies with tenant isolation
- [ ] Booking engine can reference resources by UUID
- [ ] Separate from Healthcare clinic management
## Related Documents
- [Phase 14.0](phase-14-0-beauty-foundation.md)
- [Phase 14.1](phase-14-1-booking-engine.md)
- [Beauty Business Roadmap](../../beauty-business-roadmap.md)