Aller au contenu principal

IChampUtilisateurClient

Client pour gérer les champs personnalisés (champs utilisateur) associés aux employés.

public interface IChampUtilisateurClient : IBaseClient

Méthodes

GetAllChampUtilisateur

Récupère tous les champs utilisateur configurés.

Task<ErrorOr<IEnumerable<B2BChampUtilisateurItem>>> GetAllChampUtilisateur()

Exemple:

var result = await _champUtilisateurClient.GetAllChampUtilisateur();

if (result.IsError)
{
_logger.LogError("Erreur: {Error}", result.FirstError.Description);
return;
}

foreach (var champ in result.Value)
{
Console.WriteLine($"Champ: {champ.Nom} (Type: {champ.Type})");
}

GetChampUtilisateurByNom

Récupère un champ utilisateur par son nom.

Task<ErrorOr<B2BChampUtilisateurItem>> GetChampUtilisateurByNom(string nom)

Paramètres:

NomTypeDescription
nomstringNom du champ utilisateur

AddChampUtilisateur

Crée un nouveau champ utilisateur.

Task<ErrorOr<Success>> AddChampUtilisateur(B2BAddChampUtilisateurDto dto)

Exemple:

var nouveauChamp = new B2BAddChampUtilisateurDto
{
Nom = "Département",
Type = B2BTypeChampUtilisateur.Texte
};

var result = await _champUtilisateurClient.AddChampUtilisateur(nouveauChamp);

if (result.IsError)
{
_logger.LogError("Erreur: {Error}", result.FirstError.Description);
}

UpdateChampUtilisateur

Met à jour un champ utilisateur existant.

Task<ErrorOr<Success>> UpdateChampUtilisateur(string nom, B2BEditChampUtilisateurDto dto)

Paramètres:

NomTypeDescription
nomstringNom actuel du champ
dtoB2BEditChampUtilisateurDtoNouvelles valeurs

SetEmployeurs

Associe un champ utilisateur à des employeurs spécifiques.

Task<ErrorOr<Success>> SetEmployeurs(string nom, B2BSetEmployeursChampUtilisateurRequest request)

Exemple:

var request = new B2BSetEmployeursChampUtilisateurRequest
{
IdExterneEmployeurs = new[] { "EMPL-001", "EMPL-002" }
};

var result = await _champUtilisateurClient.SetEmployeurs("Département", request);

SetChoix

Définit les choix disponibles pour un champ de type liste.

Task<ErrorOr<Success>> SetChoix(string nom, B2BSetChoixChampUtilisateurRequest request)

Exemple:

var request = new B2BSetChoixChampUtilisateurRequest
{
Choix = new[]
{
new B2BChoixChampUtilisateurItem { Valeur = "RH", Ordre = 1 },
new B2BChoixChampUtilisateurItem { Valeur = "IT", Ordre = 2 },
new B2BChoixChampUtilisateurItem { Valeur = "Finance", Ordre = 3 }
}
};

var result = await _champUtilisateurClient.SetChoix("Département", request);

DeleteChampUtilisateur

Supprime un champ utilisateur.

Task<ErrorOr<Success>> DeleteChampUtilisateur(string nom)

Types de champs

TypeDescription
TexteChamp texte libre
NombreValeur numérique
DateDate
ListeListe de choix prédéfinis
BooleenOui/Non

Utilisation avec les employés

Les valeurs des champs utilisateur sont incluses dans B2BUpdateEmployeDto.ValeursChampUtilisateur :

var employe = new B2BUpdateEmployeDto
{
IdExterne = "EMP-001",
Prenom = "Jean",
Nom = "Dupont",
// ... autres champs
ValeursChampUtilisateur = new List<B2BValeurChampUtilisateurItem>
{
new() { NomChamp = "Département", Valeur = "IT" },
new() { NomChamp = "DateEmbauche", Valeur = "2024-01-15" }
}
};

await _employesClient.UpdateEmploye(employe);

Types associés