IEmploisClient
Client pour la gestion des emplois dans MCM. Un emploi représente le lien entre un employé et un employeur.
public interface IEmploisClient : IBaseClient
Méthodes
GetAllEmplois
Récupère tous les emplois.
Task<ErrorOr<IEnumerable<B2BEmploiItem>>> GetAllEmplois()
Exemple:
var result = await _emploisClient.GetAllEmplois();
if (result.IsError)
{
_logger.LogError("Erreur: {Error}", result.FirstError.Description);
return;
}
foreach (var emploi in result.Value)
{
Console.WriteLine($"{emploi.IdentifiantExterneEmploye} chez {emploi.NomEmployeur}");
Console.WriteLine($" Matricule: {emploi.Matricule}");
Console.WriteLine($" Début: {emploi.DateDebut} - Fin: {emploi.DateFin ?? "En cours"}");
}
GetEmploiById
Récupère un emploi par son identifiant externe.
Task<ErrorOr<B2BEmploiItem>> GetEmploiById(string idExterne)
Paramètres:
| Nom | Type | Description |
|---|---|---|
idExterne | string | Identifiant externe de l'emploi |
Exemple:
var result = await _emploisClient.GetEmploiById("EMPLOI-001");
if (result.IsError)
{
Console.WriteLine($"Erreur: {result.FirstError.Description}");
return;
}
var emploi = result.Value;
Console.WriteLine($"Employé: {emploi.IdentifiantExterneEmploye}");
Console.WriteLine($"Employeur: {emploi.NomEmployeur} ({emploi.IdentifiantExterneEmployeur})");
AddEmploi
Crée un nouvel emploi.
Task<ErrorOr<Success>> AddEmploi(B2BUpdateEmploiDto toAdd)
Exemple:
var nouvelEmploi = new B2BUpdateEmploiDto
{
IdentifiantExterne = "EMPLOI-NEW",
IdentifiantExterneEmploye = "EMP-001",
IdentifiantExterneEmployeur = "EMPL-001",
Matricule = "MAT-12345",
DateDebut = new DateTime(2025, 1, 15)
};
var result = await _emploisClient.AddEmploi(nouvelEmploi);
if (result.IsError)
{
_logger.LogError("Erreur: {Error}", result.FirstError.Description);
return;
}
_logger.LogInformation("Emploi créé");
UpdateEmploi
Met à jour un emploi existant.
Task<ErrorOr<Success>> UpdateEmploi(B2BUpdateEmploiDto toUpdate)
Exemple:
var emploiModifie = new B2BUpdateEmploiDto
{
IdentifiantExterne = "EMPLOI-001",
IdentifiantExterneEmploye = "EMP-001",
IdentifiantExterneEmployeur = "EMPL-001",
Matricule = "MAT-99999",
DateFin = new DateTime(2025, 12, 31)
};
var result = await _emploisClient.UpdateEmploi(emploiModifie);
if (result.IsError)
{
_logger.LogError("Erreur: {Error}", result.FirstError.Description);
}
DeleteEmploi
Supprime un emploi.
Task<ErrorOr<Success>> DeleteEmploi(string idExterne)
Paramètres:
| Nom | Type | Description |
|---|---|---|
idExterne | string | Identifiant externe de l'emploi à supprimer |
Attention
La suppression d'un emploi rompt le lien entre un employé et un employeur. Vérifiez les dépendances avant de supprimer.
Exemple:
var result = await _emploisClient.DeleteEmploi("EMPLOI-001");
if (result.IsError)
{
_logger.LogError("Erreur: {Error}", result.FirstError.Description);
}
Types associés
B2BEmploiItem- DTO de lecture d'un emploiB2BUpdateEmploiDto- DTO pour création/modification d'emploi