```
✨ feat(reservation/contrat): Ajoute la gestion complète des contrats
```
This commit is contained in:
@@ -227,4 +227,45 @@ class Client
|
||||
|
||||
return $this->getLinkSign($devis->getSignID());
|
||||
}
|
||||
|
||||
public function eventSign(object $contrat): array
|
||||
{
|
||||
$events = [];
|
||||
if ($contrat instanceof Contrats) {
|
||||
$signId = $contrat->getSignID();
|
||||
if (!$signId) return []; // Sécurité si pas d'ID de signature
|
||||
|
||||
$submiter = $this->getSubmiter($signId);
|
||||
|
||||
// Vérifier si submission_events existe pour éviter une erreur undefined index
|
||||
if (!isset($submiter['submission_events'])) return [];
|
||||
|
||||
foreach ($submiter['submission_events'] as $event) {
|
||||
$label = match($event['event_type']) {
|
||||
'view_form' => "Contrat consulté",
|
||||
'start_form' => "Début de procédure",
|
||||
'complete_form' => "Contrat signé",
|
||||
'decline_form' => "Signature refusée",
|
||||
default => null
|
||||
};
|
||||
|
||||
if ($label) {
|
||||
$events[] = [
|
||||
'event_type' => $label,
|
||||
'event_timestamp' => new \DateTimeImmutable($event['event_timestamp'])
|
||||
];
|
||||
}
|
||||
}
|
||||
}
|
||||
return $events;
|
||||
}
|
||||
|
||||
public function signedData(Contrats $contrat) : string
|
||||
{
|
||||
$signId = $contrat->getSignID();
|
||||
if (!$signId) return []; // Sécurité si pas d'ID de signature
|
||||
|
||||
$submiter = $this->getSubmiter($signId);
|
||||
return $submiter['uuid']; // numéro de signature;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user