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:
| Nom | Type | Description |
|---|---|---|
nom | string | Nom 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:
| Nom | Type | Description |
|---|---|---|
nom | string | Nom actuel du champ |
dto | B2BEditChampUtilisateurDto | Nouvelles 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
| Type | Description |
|---|---|
Texte | Champ texte libre |
Nombre | Valeur numérique |
Date | Date |
Liste | Liste de choix prédéfinis |
Booleen | Oui/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
B2BChampUtilisateurItem- Informations d'un champB2BAddChampUtilisateurDto- DTO créationB2BEditChampUtilisateurDto- DTO modificationB2BValeurChampUtilisateurItem- Valeur d'un champ pour un employé