Skip to content

Promote circuit from preparation to production

yassine sabir a demandé de fusionner feature/Validate-To-Prod vers develop

Entités

  • SaveCircuit.java — DTO partagé de création de circuit prod envoyé par prep en mode NEW vers circuit-service.

  • PreparedCircuit.java — Champs Mongo de cycle de vie promote (statut, cible/prod IDs, erreur, idempotence, dates).

  • PreparedPassenger.java — Colonnes JPA prod_passenger_uuid et promoted_at après succès user-service.

Enums (promotion.enums)

  • PromotionStatus.java — États du circuit prep : brouillon, en cours, promu, échec.

  • IntegrationOrigin.java — Origine métier : nouveau circuit, extension prep seule, intégration sur circuit prod existant.

  • CircuitPromotionMode.java — Mode d’appel circuit-service : créer un circuit NEW ou enrichir un PROD existant.

  • PromotionFailedStep.java — Étape en échec rapportée à l’UI : USER ou CIRCUIT.

API preparation (orchestration)

  • ValidateCircuitToProductionRequest.java — Entrée FE/prep : clé de stabilité, amendements optionnels, dry-run.

  • ValidateCircuitToProductionResponse.java — Réponse orchestration : statut, IDs prod, mappings usagers, warnings, erreur, promotedAt.

API user-service

  • PassengerPromotionRequest.java — Lot d’usagers prep à promouvoir avec stabilité et corrélation circuit.

  • PassengerPromotionResponse.java — Liste des mappings prep→prod et erreurs éventuelles par usager.

  • PassengerPromotionMapping.java — Une paire UUID prep/prod + indicateur created (nouveau vs lien idempotent).

  • PassengerPromotionError.java — Erreur unitaire par usager si le lot échoue partiellement (v1 : rollback global).

  • PreparedPassengerPromotionPayload.java — Corps complet d’un usager prep→prod (identité, reps, établissements, horaires semaine).

  • PreparedRepresentativePromotionPayload.java — Représentant pour promote (adresses, contacts).

  • PreparedAddressPromotionPayload.java — Adresse géolocalisée (pickup/rep) pour routing TripAlgo/ORS.

  • PreparedContactPromotionPayload.java — Téléphones et personnes assignées du représentant.

  • PreparedEstablishmentSchedulePromotionPayload.java — Horaires d’affectation par établissement et semaine pair/impair.

  • PreparedDayScheduleEstablishmentPromotionPayload.java — Un jour/période (matin/soir) dans le planning établissement.

  • PreparedPassengerScheduleWeekPromotionPayload.java — Semaine EVEN/ODD avec créneaux usager pour TripAlgo.

  • PreparedPassengerSchedulePromotionPayload.java — Un créneau usager : jour, période, sens, heure de prise en charge.

API circuit-service

  • CircuitPromotionRequest.java — Demande promote circuit après usagers prod : mode, circuit/avenants, conducteur, traçabilité.

  • CircuitPromotionResponse.java — IDs circuit/avenants/trajets prod retournés + warnings non bloquants.

  • AmendmentPromotionSpec.java — Période d’avenant et UUIDs passagers prod à assigner.

  • DriverPromotionSpec.java — Conducteur et plage de dates d’affectation sur le circuit promu.

Constantes d’URL (dans common)

  • CircuitServicePath.java — Chemin REST /promote-from-preparation pour les clients prep.

  • UserServicePath.java — Chemin REST /passenger/promote-from-preparation pour les clients prep.

Rapports de requête de fusion