feat(directory) : type prestataire, validateurs front, autocomplete adresse BAN
Pull Request — Quality gate / Backend (PHP CS + PHPUnit) (pull_request) Successful in 1m20s
Pull Request — Quality gate / Frontend (build) (pull_request) Successful in 1m26s

- Prestataire : entité/repo + ressource API Platform (RBAC directory.providers.*),
  ownership prestataire sur contacts/adresses/comptes-rendus (CHECK XOR à 3),
  DTO/service/drawer/fiche détail + onglet dédié dans le répertoire.
- Prospect : société uniquement (suppression du champ name, company requis) ;
  migration de backfill, conversion prospect→client et MCP adaptés.
- Champ site web sur client/prospect/prestataire (entités, DTO, onglet Information, MCP).
- Validateurs front email / téléphone FR (0549200910) / URL sur Information et Contacts,
  enregistrement bloqué tant qu'un champ est invalide.
- Autocomplete adresse branché sur la Base Adresse Nationale (api-adresse.data.gouv.fr)
  avec mode dégradé en saisie libre.
- Administration : retrait de l'onglet Clients.
This commit is contained in:
Matthieu
2026-06-24 17:55:09 +02:00
parent 052ef55c79
commit 5764d8f472
48 changed files with 1251 additions and 130 deletions
@@ -33,10 +33,10 @@ class DeleteProspectTool
throw new InvalidArgumentException(sprintf('Prospect with ID %d not found.', $id));
}
$name = $prospect->getName();
$company = $prospect->getCompany();
$this->entityManager->remove($prospect);
$this->entityManager->flush();
return json_encode(['success' => true, 'message' => sprintf('Prospect "%s" deleted.', $name)]);
return json_encode(['success' => true, 'message' => sprintf('Prospect "%s" deleted.', $company)]);
}
}