sequenceDiagram
autonumber
actor Client as 🧑 Client
participant AngularApp as 🖥️ Angular App
participant Backend as 🌐 Backend
participant Database as 💾 Database
Client ->> AngularApp: 🟢 Login with email and password
AngularApp ->> Backend: 🔵 POST /api/auth/login with credentials
Backend ->> Database: 🟡 Validate credentials
Database -->> Backend: ✅ Valid credentials
Backend ->> Backend: 🔑 Generate JWT token
Backend -->> AngularApp: 🟣 Return JWT token
AngularApp ->> Client: 🟤 Store JWT token (e.g., localStorage)
Client ->> AngularApp: View sales list (GET /api/ventes)
AngularApp ->> Backend: 🟢 Send JWT token in Authorization header
Backend ->> Backend: 🔵 Validate JWT token
Backend ->> Database: 🟡 Retrieve sales data for authenticated client
Database -->> Backend: ✅ Sales data for client
Backend -->> AngularApp: 🟣 Return sales data
AngularApp ->> Client: 📜 Display list of sales (Vente records)
Client ->> AngularApp: Create a new sale (POST /api/ventes)
AngularApp ->> Backend: 🔵 Send JWT token + sale data in Authorization header
Backend ->> Backend: 🟡 Validate JWT token
Backend ->> Database: 🔵 Insert new sale record
Database -->> Backend: ✅ Sale created
Backend -->> AngularApp: 🟣 Return confirmation
AngularApp ->> Client: 📝 Show updated sales list
Client ->> AngularApp: Edit a sale (PUT /api/ventes/{id})
AngularApp ->> Backend: 🔵 Send JWT token + updated sale data
Backend ->> Backend: 🟡 Validate JWT token
Backend ->> Database: 🔵 Update sale record
Database -->> Backend: ✅ Sale updated
Backend -->> AngularApp: 🟣 Return confirmation
AngularApp ->> Client: 📝 Show updated sales list
Client ->> AngularApp: Delete a sale (DELETE /api/ventes/{id})
AngularApp ->> Backend: 🔵 Send JWT token
Backend ->> Backend: 🟡 Validate JWT token
Backend ->> Database: 🟢 Delete sale record
Database -->> Backend: ✅ Sale deleted
Backend -->> AngularApp: 🟣 Return confirmation
AngularApp ->> Client: 📝 Show updated sales list
Client ->> AngularApp: 🚪 Logout
AngularApp ->> Client: 🔒 Remove JWT from storage (e.g., localStorage)
Vente Crud