Caisse (PointOfSale)

Open : ouverture, caisse fermée

Une caissière qui prend son service doit “ouvrir” sa caisse pour encaisser.

sequenceDiagram participant K as Caissière participant U as UI participant A as API participant J as Job K->>U: Ouverture U->>A: Ouverture A->>A: Vérifications A->>J: Ouverture J->>J: Ouverture Odoo J->>J: Nouveau panier J->>U: Caisse ouverte + panier activate U U->>A: Demande des données de caisse A-->>U: Données caisse U->>A: Souscription aux mises à jour des données de caisse J-->>U: Mises à jour des données caisse K->>U: ... encaissements ... deactivate U

Vérifications

  • Utilisateur valide
    • Profile “caissière”, “direction”, ou “controleur”
    • N’ayant pas déjà ouvert une autre caisse

Open : Ouverture, caisse déjà ouverte, même utilisateur

Une caissière qui continue son service.

sequenceDiagram participant K as Caissière participant U as UI participant A as API participant J as Job K->>U: Ouverture U->>A: Ouverture A->>A: Vérifications A->>J: Ouverture J->>J: Annulation des paniers ouverts J->>J: Ouverture d'un nouveau panier J->>U: Caisse ouverte + nouveau panier activate U U->>A: Demande des données de caisse A-->>U: Données caisse U->>A: Souscription aux mises à jour des données de caisse J-->>U: Mises à jour des données caisse K->>U: ... encaissements ... deactivate U

Vérifications

  • Utilisateur valide
    • Même utilisateur

Open : Ouverture, caisse déjà ouverte, autre utilisateur

Une caissière qui est partie sans fermer sa session, prise de service par une autre caissère.

sequenceDiagram participant K as Caissière participant U as UI participant A as API participant J as Job K->>U: Ouverture U->>A: Ouverture A->>U: Echec d'ouverture (précédente session d'une autre caissière non terminée)

Une personne habilité doit pouvoir fermer la précédente session.

sequenceDiagram participant X as Admin participant U as UI participant A as API participant J as Job activate U X->>A: Authentification X->>A: Fermeture de caisse A->>A: Vérifications A->>J: Fermeture J->>J: Annulation des paniers ouverts J->>J: Fermeture Odoo J->>U: Caisse fermée deactivate U U->>U: Logout

Vérifications

  • Utilisateur valide
    • Profile “Direction”, “Controleur”

Close : fermeture de caisse normale

sequenceDiagram participant K as Caissière participant U as UI participant A as API participant J as Job activate U K->>U: Fermeture K->>U: Informations de remise en banque U->>A: Fermeture A->>J: Fermeture J->>J : Annulation des paniers ouverts J->>J : Clôture Odoo J->>U : Caisse fermée deactivate U