Distinguer romans et BD par un type de document
Format disait physique ou numérique, jamais roman ou BD. Trois valeurs seulement : une valeur s'ajoute sans migration, la renommer une fois posée sur des centaines de fiches, non. Le défaut est « non précisé », pas « roman » : les fiches existantes n'ont pas été saisies avec cette question en tête, et un AddColumn suffit justement parce que la valeur par défaut ne prétend rien. L'interface n'affiche donc que ce qui a été choisi, comme pour le format. Filtre ajouté aux DEUX implémentations, serveur et hors-ligne, avec quatre jeux de critères de plus dans le test qui les confronte. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -27,6 +27,16 @@ public class Livre
|
||||
|
||||
public Format Format { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Roman, bande dessinée… <b>Indépendant du format</b> : une BD numérique existe.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Par défaut <see cref="TypeDocument.NonPrecise"/>, qui ne veut pas dire « roman » : voir
|
||||
/// l'énumération. L'interface n'affiche donc une étiquette que lorsque le type a été
|
||||
/// <b>choisi</b>, comme elle n'affiche le format que pour les ebooks.
|
||||
/// </remarks>
|
||||
public TypeDocument TypeDocument { get; set; }
|
||||
|
||||
/// <summary>URL de la couverture (OpenLibrary), pas de fichier stocké localement.</summary>
|
||||
public string? CoverUrl { get; set; }
|
||||
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
namespace MaBibli.Shared.Entites;
|
||||
|
||||
/// <summary>
|
||||
/// Nature de l'ouvrage, indépendante de son support (voir <see cref="Format"/>).
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Une BD est déjà catalogable telle quelle — elle a un ISBN et la BnF la connaît. Ce qui
|
||||
/// manquait était de pouvoir la <b>distinguer</b> : <see cref="Format"/> dit physique ou
|
||||
/// numérique, pas roman ou bande dessinée.
|
||||
/// <para>
|
||||
/// ⚠️ <b><see cref="NonPrecise"/> est la valeur par défaut, et ce n'est pas « roman ».</b> Les
|
||||
/// fiches saisies avant l'arrivée de ce champ ne l'ont pas été avec cette question en tête : les
|
||||
/// déclarer romans d'office affirmerait quelque chose qu'on ne sait pas. Même raisonnement que
|
||||
/// l'absence de ligne de statut, qui vaut « non commencé » et non « à lire ».
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// La liste est volontairement courte. Une valeur s'ajoute sans migration — une énumération est
|
||||
/// stockée en entier — alors que renommer ou fusionner des valeurs déjà posées sur des centaines
|
||||
/// de fiches, non. Dans le doute, on n'ajoute pas.
|
||||
/// </para>
|
||||
/// <para>
|
||||
/// ⚠️ Les <b>périodiques</b> n'y figurent pas : leur catalogage demande un ISSN et une table de
|
||||
/// numéros, pas une étiquette de plus. Voir IDEES.md.
|
||||
/// </para>
|
||||
/// </remarks>
|
||||
public enum TypeDocument
|
||||
{
|
||||
/// <summary>On ne sait pas, et on ne prétend pas le savoir. Valeur par défaut.</summary>
|
||||
NonPrecise = 0,
|
||||
|
||||
Roman = 1,
|
||||
|
||||
BandeDessinee = 2,
|
||||
}
|
||||
Reference in New Issue
Block a user