Aller au contenu

Template Ticket

Template de visuels de Billet

MCD actuel


classDiagram
    class TemplateTicket {
        +int id
        +string nom
    }

    TemplateTicket "0..1" <--> "1..*" File : image_entete
    TemplateTicket "0..1" <--> "1..*" File : banniere_acces
    TemplateTicket "0..1" <--> "1..*" File : footer

    class ModeleArticle {
        +enum type_billet_abonnement
        ...
    }

    TemplateTicket "0..*" <--> "0..1" ModeleArticle: template_ticket

    class Club {
        +enum type_billet_abonnement
        ...
    }
    TemplateTicket "0..1" <--> "1" Club: template_ticket
    ModeleArticle "1" <--> "0..*" Club: modele_articles

Fonctionnement actuel

  • Le TemplateTicket du club sert de valeur par défaut aux ModeleArticles
  • type_billet_abonnement: défini la régle de génération des billets d'une formule:
    • par_match: génère 1 billet par match de la formule
    • unique: génère une carte unique pour tous les matchs de la formule

Futur MCD

classDiagram
    class TemplateTicket {
        +int id
        +string nom
    }

    TemplateTicket "0..1" <--> "1..*" File : image_entete
    TemplateTicket "0..1" <--> "1..*" File : banniere_acces
    TemplateTicket "0..1" <--> "1..*" File : footer

    class TemplateArticleMatch {
        +int id
        +enum type_visuel
    }

    class Formule {
        +int id
        +enum type_visuel
        +enum type_qr
    }

    TemplateTicket "0..1" <--> TemplateArticleMatch : master_entity(TBD) 
    TemplateTicket "0..1" <--> Formule : master_entity(TBD) 

Futur Fonctionnement

  • TemplateArticleMatch: Template de ModeleArticle mono-match
  • Formule: ModeleArticle multi-matchs
  • 2 enums remplacent type_billet_abonnement:
    • type_visuel: détermine le type de générateur utilise pour le pdf/ticket
      • billet: Billet au match classique, PdfGenerator::Ticket
      • carte: Carte, Qr code + infos, PdfGenerator::Carte
      • thermique: TBD
    • type_qr: détermine le type de qr_code:
      • par_match: 1 QR Code par match (1 Billet pour chaque), seule valeur pour TemplateArticleMatch et ModeleArticle en découlant
      • unique: 1 QR pour l'ensemble des matchs (1 seul Billet pour tous).
  • Plus possible de valider un ModeleArticle sans TemplateTicket

    Plus de TemplateTicket par défaut?

Migration entre les 2 fonctionnements (BDD + modèles)

  • Cas match_simple:
    • type_visuel: billet
    • type_qr: par_match
  • Cas formule:
    • Cas 1 match:
      • type_visuel: billet
      • type_qr: par_match
    • Cas plusieurs matchs:
      • Cas billet_abonnement_par_match:
        • type_visuel: billet
        • type_qr: par_match
      • Cas billet_abonnement_unique:
        • type_visuel: carte
        • type_qr: unique