Ajoute les notices sources et le renommage fusionné des auteurs

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
LIMONIER Mathieu
2026-08-20 14:27:42 +02:00
co-authored by Copilot
parent 6b8f08ef26
commit e28d5bce32
24 changed files with 935 additions and 3 deletions
@@ -240,6 +240,41 @@ public sealed class ServiceLivresApi(HttpClient http, CacheHorsLigne cache, Etat
return instantane?.Donnees.FirstOrDefault(a => a.Id == id);
}
public async Task<ResultatRenommageAuteur?> RenommerAuteurAsync(
int id, string nom, bool confirmerFusion = false, CancellationToken ct = default)
{
if (!reseau.EnLigne)
{
return null;
}
var suffixe = confirmerFusion ? "?confirmerFusion=true" : string.Empty;
try
{
var reponse = await http.PutAsJsonAsync(
$"api/auteurs/{id}{suffixe}", new RenommerAuteur(nom), Json, ct);
reseau.SignalerSuccesReseau();
if (reponse.StatusCode == HttpStatusCode.NotFound)
{
return null;
}
if (reponse.StatusCode == HttpStatusCode.Conflict
|| reponse.IsSuccessStatusCode)
{
return await LireAsync<ResultatRenommageAuteur>(reponse, ct);
}
return null;
}
catch (HttpRequestException)
{
reseau.SignalerEchecReseau();
return null;
}
}
/// <summary>
/// Rapprochements d'auteurs ambigus, que le serveur refuse d'appliquer seul.
/// </summary>