Ajout d'un moyen de modifier par lot les ouvrages dans les séries.
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
using MaBibli.Shared.Dtos;
|
||||
using MaBibli.Shared.Entites;
|
||||
|
||||
namespace MaBibli.Client.Composants;
|
||||
|
||||
/// <summary>
|
||||
/// Saisie du panneau « Modifier en lot » (fiche série).
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// ⚠️ Chaque champ porte sa propre case <c>Modifier…</c> : sans elle, la valeur par défaut d'un
|
||||
/// champ (« NonPrecise », « Physique »…) est déjà une vraie valeur, et l'appliquer à tous les
|
||||
/// livres sélectionnés écraserait un champ qu'on ne voulait pas toucher. Seuls les champs cochés
|
||||
/// sont envoyés ; les autres livres restent inchangés sur les champs non cochés (CLAUDE.md,
|
||||
/// invariant 10 : on n'affiche — et n'applique — que ce qui a été choisi).
|
||||
/// </remarks>
|
||||
public sealed class SaisieLot
|
||||
{
|
||||
public bool ModifierType { get; set; }
|
||||
|
||||
public TypeDocument TypeDocument { get; set; }
|
||||
|
||||
public bool ModifierThemes { get; set; }
|
||||
|
||||
public List<string> Themes { get; set; } = [];
|
||||
|
||||
public bool ModifierAuteurs { get; set; }
|
||||
|
||||
public List<AuteurSaisi> Auteurs { get; set; } = [];
|
||||
|
||||
public bool ModifierFormat { get; set; }
|
||||
|
||||
public Format Format { get; set; }
|
||||
|
||||
public bool ModifierEditeur { get; set; }
|
||||
|
||||
public string? Editeur { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Statut de lecture <b>de l'appelant</b>, comme partout ailleurs : appliquer un statut en
|
||||
/// lot pose la lecture de la personne qui agit, jamais celle d'un tiers.
|
||||
/// </summary>
|
||||
public bool ModifierStatut { get; set; }
|
||||
|
||||
public Statut? Statut { get; set; }
|
||||
|
||||
public bool AucunChamp =>
|
||||
!ModifierType && !ModifierThemes && !ModifierAuteurs
|
||||
&& !ModifierFormat && !ModifierEditeur && !ModifierStatut;
|
||||
}
|
||||
Reference in New Issue
Block a user