BusinessCardSerializerService
in package
Convertit les entités {@see BusinessCardAize} en tableaux destinés aux réponses JSON de l'API.
Service purement fonctionnel : aucune dépendance injectée, aucun accès à la base ni effet de bord. Il centralise le format d'exposition des cartes de visite consommé par les endpoints et les vues dynamiques du front.
Table of Contents
Methods
- serializeBusinessCard() : array<string, mixed>
- Sérialise une carte de visite en tableau pour l'API
- serializeBusinessCards() : array<int, array<string, mixed>>
- Sérialise une collection de cartes de visite
Methods
serializeBusinessCard()
Sérialise une carte de visite en tableau pour l'API
public
serializeBusinessCard(BusinessCardAize $businessCard[, bool $includeEmployeeDetails = false ]) : array<string, mixed>
Aplati les champs de la carte et y joint deux sous-structures : la liste des activités
(id, name, brochure) et, si un employé est rattaché, un bloc employee réduit à
id, firstname et lastname, enrichi de email, phone, position et department
lorsque $includeEmployeeDetails vaut true. La clé company est volontairement dupliquée
sous l'orthographe historique compagny pour compatibilité, logo retombe sur une chaîne
vide en l'absence de logo personnalisé, et created_at est formatée en ISO 8601 (c).
Précondition : la carte doit avoir une date de création, getCreatedAt() étant appelée sans
garde de nullité.
Parameters
- $businessCard : BusinessCardAize
-
Carte à sérialiser.
- $includeEmployeeDetails : bool = false
-
Ajoute les coordonnées détaillées de l'employé.
Return values
array<string, mixed> —Représentation de la carte prête à être encodée en JSON.
serializeBusinessCards()
Sérialise une collection de cartes de visite
public
serializeBusinessCards(array<int, BusinessCardAize> $businessCards[, bool $includeEmployeeDetails = false ]) : array<int, array<string, mixed>>
Applique BusinessCardSerializerService::serializeBusinessCard() à chaque élément et retourne une liste réindexée à partir de zéro, adaptée à un encodage JSON en tableau.
Parameters
- $businessCards : array<int, BusinessCardAize>
-
Cartes à sérialiser.
- $includeEmployeeDetails : bool = false
-
Propagé à la sérialisation unitaire.
Return values
array<int, array<string, mixed>> —Cartes sérialisées, dans l'ordre d'entrée.