← Retour aux parcours

📄 Demandes de service

Cœur du parcours client. Deux types de parcours : A (Standard — admin propose des artisans) et B (Grands travaux — artisans soumettent des devis). Workflow complet avec propositions, devis et missions.

Parcours détaillé

1

Création de la demande

Client

Le client décrit son besoin : catégorie, prestation, description, adresse, type d'intervention (urgente/planifiée), parcours souhaité (A ou B), photos éventuelles.

POST /api/v1/demandes Parcours: A_standard | B_grands_travauxTypeIntervention: urgente | planifieeOrigine: parcours_guide | navigation_directe

Scénario : Kofi a une fuite d'eau. Il crée une demande en catégorie 'Plomberie', prestation 'Débouchage évier', parcours A, intervention urgente.

2

Soumission et validation

Admin

La demande est créée en statut brouillon, puis soumise (en_attente_validation). L'administrateur valide la demande et choisit le mode d'attribution.

PATCH /api/v1/demandes/{id}/soumettrePUT /api/v1/admin/demandes/{id}/statut StatutDemande: brouillon → en_attente_validation → valideeModeAttribution: standard | direct_premium

Scénario : Kofi soumet sa demande. L'admin vérifie que la description est claire, valide la demande, et choisit le mode standard pour que des artisans puissent être proposés.

3

Proposition d'artisans (Parcours A)

Admin

L'administrateur sélectionne des artisans vérifiés et disponibles dans la zone géographique de la demande, et les propose au client.

GET /api/v1/admin/demandes/{id}/propositionsPOST /api/v1/admin/demandes/{id}/propositions

Scénario : L'admin trouve 3 plombiers disponibles à Cotonou. Il les propose à Kofi. Le statut de la demande passe à 'liste_proposee'.

4

Soumission de devis (Parcours B)

Artisan

Les artisans consultent la demande, évaluent le travail et soumettent un devis détaillé avec montant main-d'œuvre et lignes de matériaux.

POST /api/v1/demandes/{id}/solliciter StatutDevis: en_attente | accepte | refuse

Scénario : Pour des grands travaux, 3 artisans soumettent leurs devis. Chacun détaille le coût de la main-d'œuvre et le prix des matériaux nécessaires.

5

Sélection d'un artisan

Client

Le client consulte les propositions ou devis et sélectionne l'artisan de son choix.

PUT /api/v1/demandes/{id}/propositions/{propositionId}/selectionnerGET /api/v1/demandes/{id}/propositions StatutProposition: proposee | selectionnee | non_retenue

Scénario : Kofi compare les 3 propositions. Il sélectionne le plombier avec le meilleur rapport qualité-prix. La proposition passe à 'selectionnee', les autres à 'non_retenue'.

6

Création et suivi de la mission

Interne

Une mission est automatiquement créée. Le travail commence. L'artisan marque la mission comme terminée quand le travail est fini.

POST /api/v1/missions/{id}/terminer StatutMission: en_cours → en_attente_reception → terminee/litige

Scénario : Le plombier intervient chez Kofi, répare la fuite. Il marque la mission 'terminée' (en_attente_reception). Kofi doit confirmer ou contester.

7

Confirmation ou contestation

Client

Le client inspecte le travail. Si satisfait, il confirme (mission → terminee). Sinon, il conteste (mission → litige, l'admin intervient).

POST /api/v1/missions/{id}/confirmerPOST /api/v1/missions/{id}/contester

Scénario : Kofi vérifie la réparation. Tout est en ordre. Il confirme. La mission est 'terminee'. L'artisan reçoit sa note et évaluation.

8

Annulation

Client

Le client peut annuler sa demande à tout moment avant la sélection de l'artisan.

PUT /api/v1/demandes/{id}/annuler StatutDemande: annulee

Scénario : Kofi a trouvé un plombier par lui-même. Il annule sa demande. Celle-ci passe à 'annulee'.