Principe de fonctionnement

Chaques ventes s’effectue dans une session de vente. Lors de sa prise de service, l’hôtesse de caisse ouvre une session de vente et effectue ses ventes.

A la fin de son service, l’hôtesse clos la session de vente et effectue une remise en banque.

Lors de son service, elle peut effectuer plusieurs autres remises en banque.

Ouverture de session

sequenceDiagram participant C as Caisse participant K as Kafka participant J as Cineges Jobs participant O as Odoo participant E as ElasticSearch C->>K: cineges.caisse.openSession K->>J: cineges.caisse.openSession activate J J->>O: Ouverture de session (pos.session) J->>E: Enregistrement de la session J->>K: Notification deactivate J K->>C: Notification

Ventes

Diagrame d’une vente

sequenceDiagram participant V as Client participant C as Caisse participant K as Kafka participant J as Cineges Jobs participant O as Odoo participant E as ElasticSearch participant Z as Cuisine V->>C: Commande loop Commande C->>K: Ajout d'un produit K->>J: Ajout d'un produit activate J J->>O: Ajout d'un produit J->>O: Récupération des taxes J->>E: Enregistrement de la commande en cours J->>K: Retour des informations (Notification) deactivate J K->>C: Retour des informations (Notification) end V->>C: Paiement C->>K: Paiement activate J K->>J: Paiement J->>O: Enregistrement du paiement J->>E: Enregistrement commande payée J->>K: Retour des informations (Notification) deactivate J K->>C: Retour des informations (Notification) K-->>Z: Commande en cuisine C->>V: Impression ticket caisse + billets

Remise en banque

sequenceDiagram participant C as Caisse participant K as Kafka participant J as Cineges Jobs participant O as Odoo participant E as ElasticSearch

TODO

Fermeture de session

sequenceDiagram participant C as Caisse participant K as Kafka participant J as Cineges Jobs participant O as Odoo participant E as ElasticSearch

TODO