8a97b52eb74e8c43ab7152338c856f852715b90a
- BlockSlotDto: validates day (ISO date) and range1_hour1 (HH:MM) - ServicesService.blockSlot(): finds professional by userId, checks for conflicts (any non-cancelled/denied service at that slot), then creates a service with status=self_booked using the professional's own user_id - ServicesController: POST /services/block (JWT-guarded) wired to blockSlot Existing PATCH /services/:id/status → cancelled handles unblocking since VALID_TRANSITIONS already allows self_booked → cancelled. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Description
No description provided
688 KiB
Languages
TypeScript
96.7%
HTML
2%
PLpgSQL
0.9%
CSS
0.2%