Skip to content

Supprimer une facture

Hanine BenFarhat edited this page May 7, 2025 · 1 revision
sequenceDiagram
    participant Agent as "Agent"
    participant App as "App Client"
    participant API as "API /factures"
    participant Handler as "Command Handler"
    participant Db as "EF DbContext"
    participant DB as "Base de Données"

    Agent->>App: 1. Sélectionne facture et "Supprimer"
    App->>API: 2. DELETE /factures/{id}
    activate API

    API->>Handler: 3. Traite SupprimerFactureCommand
    activate Handler

    Handler->>Db: 4. Cherche Facture(factureId)
    Db->>DB: 5. SELECT * FROM Factures WHERE Id = @factureId
    DB-->>Db: 6. Retourne Facture
    Db-->>Handler: 7. Résultat

    alt Facture introuvable
        Handler-->>API: 8a. Erreur métier
        API-->>App: 9a. 404 Not Found
        App-->>Agent: 10a. Affiche erreur
    else Facture trouvée
        Handler->>Db: 8b. Supprime Facture
        Db->>DB: 9b. DELETE FROM Factures WHERE Id = @factureId
        DB-->>Db: 10b. Confirme
        Db-->>Handler: 11b. Succès

        Handler-->>API: 12b. Facture supprimée
        API-->>App: 13b. 200 OK
        App-->>Agent: 14b. Confirme suppression
    end

    deactivate Handler
    deactivate API
Loading
Clone this wiki locally