Phase 0: Add booking permissions and constants

- Add AppointmentStatus enum (booked, cancelled_by_user, cancelled_by_admin)
- Add booking permissions for regular users (book_appointment, view_own_appointments, cancel_own_appointment)
- Add availability/appointments permissions for admin (manage_availability, view_all_appointments, cancel_any_appointment)
- Add booking constants to shared/constants.json (slotDurationMinutes, maxAdvanceDays, minAdvanceDays, noteMaxLength)
- Update validate_constants.py to validate new sections
This commit is contained in:
counterweight 2025-12-20 23:30:08 +01:00
parent c9b5cab0d6
commit 6c1a05d93d
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
3 changed files with 55 additions and 6 deletions

View file

@ -8,6 +8,17 @@
"SPENT": "spent",
"REVOKED": "revoked"
},
"appointmentStatuses": {
"BOOKED": "booked",
"CANCELLED_BY_USER": "cancelled_by_user",
"CANCELLED_BY_ADMIN": "cancelled_by_admin"
},
"booking": {
"slotDurationMinutes": 15,
"maxAdvanceDays": 30,
"minAdvanceDays": 1,
"noteMaxLength": 144
},
"validation": {
"telegram": {
"maxLengthAfterAt": 32,