No description
Find a file
2026-03-03 11:50:19 +01:00
config initial commit 2026-03-03 11:33:00 +01:00
.env initial commit 2026-03-03 11:33:00 +01:00
.env.example initial commit 2026-03-03 11:33:00 +01:00
docker-compose.yml initial commit 2026-03-03 11:33:00 +01:00
init-db.sql initial commit 2026-03-03 11:33:00 +01:00
README.md docs: Update project name from ZakBarber to Prenotazioni Barber in README. 2026-03-03 11:50:19 +01:00

Prenotazioni Barber - Backend Standalone

Backend dockerizzato per Prenotazioni Barber, basato su EasyAppointments con API REST integrate.

📁 Struttura

prenotazioni-be/
├── docker-compose.yml    # Configurazione Docker (API + MySQL)
├── .env                  # Variabili d'ambiente
├── .env.example          # Template variabili d'ambiente
├── init-db.sql           # Dump SQL per inizializzazione DB
├── config/
│   └── email.php         # Configurazione email SMTP
└── README.md

🚀 Avvio rapido

1. Configura le variabili d'ambiente

cp .env.example .env
# Modifica i valori in .env secondo le tue esigenze

2. Avvia i container

docker compose up -d

3. Verifica lo stato

docker compose ps
docker compose logs -f

🔌 API REST

EasyAppointments espone API REST completa al seguente base URL:

http://localhost:8080/index.php/api/v1/

Endpoint principali

Risorsa Endpoint Metodi
Appuntamenti /api/v1/appointments GET, POST, PUT, DELETE
Disponibilità /api/v1/availabilities GET
Clienti /api/v1/customers GET, POST, PUT, DELETE
Servizi /api/v1/services GET, POST, PUT, DELETE
Categorie servizi /api/v1/categories GET, POST, PUT, DELETE
Provider /api/v1/providers GET, POST, PUT, DELETE
Segretari /api/v1/secretaries GET, POST, PUT, DELETE
Admin /api/v1/admins GET, POST, PUT, DELETE
Impostazioni /api/v1/settings GET, PUT

Autenticazione

Le API usano Bearer Token. Per ottenere il token, configuralo dalla sezione Settings dell'admin panel, oppure usa le credenziali HTTP Basic:

# Esempio con Basic Auth
curl -u admin:password http://localhost:8080/index.php/api/v1/appointments

# Esempio con Bearer Token
curl -H "Authorization: Bearer YOUR_API_TOKEN" http://localhost:8080/index.php/api/v1/appointments

Esempio: Ottenere le disponibilità

curl "http://localhost:8080/index.php/api/v1/availabilities?providerId=2&serviceId=1&date=2025-12-02"

🛑 Stop e cleanup

# Ferma i container
docker compose down

# Ferma e rimuovi anche i volumi (⚠️ CANCELLA I DATI)
docker compose down -v

📋 Note

  • Il file init-db.sql viene eseguito solo al primo avvio (quando il volume MySQL è vuoto)
  • I dati del DB sono persistiti nel volume Docker mysql_data
  • Per aggiornare i dati, elimina il volume e riavvia: docker compose down -v && docker compose up -d
  • La porta di default è 8080, modificabile tramite API_PORT nel file .env