IFormulaireClient
Client pour récupérer les formulaires configurés dans MCM.
public interface IFormulaireClient : IBaseClient
Méthodes
GetAllFormulaires
Récupère tous les formulaires disponibles.
Task<ErrorOr<IEnumerable<B2BFormulaireItem>>> GetAllFormulaires()
Retour: Liste des formulaires avec leurs identifiants et noms.
Exemple:
var result = await _formulaireClient.GetAllFormulaires();
if (result.IsError)
{
_logger.LogError("Erreur: {Error}", result.FirstError.Description);
return;
}
foreach (var formulaire in result.Value)
{
Console.WriteLine($"Formulaire: {formulaire.Nom} (ID: {formulaire.Id})");
}
Cas d'utilisation
Afficher les formulaires disponibles
public class FormulaireService
{
private readonly IFormulaireClient _formulaireClient;
public FormulaireService(IFormulaireClient formulaireClient)
{
_formulaireClient = formulaireClient;
}
public async Task<List<SelectOption>> GetFormulairesSelectListAsync()
{
var result = await _formulaireClient.GetAllFormulaires();
if (result.IsError)
{
return new List<SelectOption>();
}
return result.Value
.Select(f => new SelectOption
{
Value = f.Id.ToString(),
Label = f.Nom
})
.ToList();
}
}
Utilisation avec ICourrielClient
Les formulaires sont souvent utilisés avec ICourrielClient pour envoyer des invitations :
public async Task EnvoyerInvitationFormulaireAsync(
string idExterneEmploye,
int formulaireId)
{
var request = new B2BEnvoyerFormulaire
{
IdExterneEmploye = idExterneEmploye,
FormulaireId = formulaireId
};
var result = await _courrielClient.EnvoyerFormulaire(request);
if (result.IsError)
{
_logger.LogError("Erreur envoi: {Error}", result.FirstError.Description);
}
}
Types associés
B2BFormulaireItem- Informations d'un formulaire