// using System; using MaBibli.Api.Data; using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore.Infrastructure; using Microsoft.EntityFrameworkCore.Migrations; using Microsoft.EntityFrameworkCore.Storage.ValueConversion; #nullable disable namespace MaBibli.Api.Data.Migrations { [DbContext(typeof(MaBibliDbContext))] [Migration("20260820123516_ThemesEtEtiquettes")] partial class ThemesEtEtiquettes { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) { #pragma warning disable 612, 618 modelBuilder.HasAnnotation("ProductVersion", "10.0.11"); modelBuilder.Entity("MaBibli.Shared.Entites.Auteur", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("CleRegroupement") .IsRequired() .HasColumnType("TEXT"); b.Property("Nom") .IsRequired() .HasColumnType("TEXT"); b.Property("NomNormalise") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("CleRegroupement") .IsUnique(); b.HasIndex("NomNormalise"); b.ToTable("Auteurs"); }); modelBuilder.Entity("MaBibli.Shared.Entites.BibliographieMasquee", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("AuteurId") .HasColumnType("INTEGER"); b.Property("TitreNormalise") .IsRequired() .HasColumnType("TEXT"); b.Property("Utilisateur") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("Utilisateur", "AuteurId"); b.HasIndex(new[] { "AuteurId", "Utilisateur", "TitreNormalise" }, "IX_BibliographiesMasquees_Auteur_Utilisateur_Titre") .IsUnique(); b.ToTable("BibliographiesMasquees"); }); modelBuilder.Entity("MaBibli.Shared.Entites.ElementSerie", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("LivreId") .HasColumnType("INTEGER"); b.Property("Position") .HasColumnType("INTEGER"); b.Property("SerieId") .HasColumnType("INTEGER"); b.Property("Titre") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("LivreId"); b.HasIndex(new[] { "SerieId" }, "IX_ElementsSerie_SerieId"); b.HasIndex(new[] { "SerieId", "LivreId" }, "IX_ElementsSerie_SerieId_LivreId") .IsUnique() .HasFilter("\"LivreId\" IS NOT NULL"); b.ToTable("ElementsSerie"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Livre", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("AjoutePar") .HasColumnType("TEXT"); b.Property("CoverUrl") .HasColumnType("TEXT"); b.Property("DateAjout") .HasColumnType("TEXT"); b.Property("Editeur") .HasColumnType("TEXT"); b.Property("Format") .HasColumnType("INTEGER"); b.Property("Isbn") .HasColumnType("TEXT"); b.Property("Titre") .IsRequired() .HasColumnType("TEXT"); b.Property("TitreNormalise") .IsRequired() .HasColumnType("TEXT"); b.Property("TypeDocument") .HasColumnType("INTEGER"); b.Property("UrlNotice") .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("Isbn"); b.HasIndex("TitreNormalise"); b.ToTable("Livres"); }); modelBuilder.Entity("MaBibli.Shared.Entites.LivreAuteur", b => { b.Property("LivreId") .HasColumnType("INTEGER"); b.Property("AuteurId") .HasColumnType("INTEGER"); b.Property("Position") .HasColumnType("INTEGER"); b.Property("Role") .HasColumnType("INTEGER"); b.HasKey("LivreId", "AuteurId"); b.HasIndex("AuteurId"); b.ToTable("LivreAuteurs"); }); modelBuilder.Entity("MaBibli.Shared.Entites.LivreSouhaite", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Annee") .HasColumnType("TEXT"); b.Property("Auteur") .HasColumnType("TEXT"); b.Property("AuteurNormalise") .IsRequired() .ValueGeneratedOnAdd() .HasColumnType("TEXT") .HasDefaultValue(""); b.Property("CoverUrl") .HasColumnType("TEXT"); b.Property("DateAjout") .HasColumnType("TEXT"); b.Property("Editeur") .HasColumnType("TEXT"); b.Property("Isbn") .HasColumnType("TEXT"); b.Property("Note") .HasColumnType("TEXT"); b.Property("Rang") .HasColumnType("INTEGER"); b.Property("Titre") .IsRequired() .HasColumnType("TEXT"); b.Property("TitreNormalise") .IsRequired() .HasColumnType("TEXT"); b.Property("Utilisateur") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex(new[] { "Utilisateur" }, "IX_LivresSouhaites_Utilisateur"); b.HasIndex(new[] { "Utilisateur", "TitreNormalise", "AuteurNormalise" }, "IX_LivresSouhaites_Utilisateur_Oeuvre") .IsUnique(); b.ToTable("LivresSouhaites"); }); modelBuilder.Entity("MaBibli.Shared.Entites.LivreTheme", b => { b.Property("LivreId") .HasColumnType("INTEGER"); b.Property("ThemeId") .HasColumnType("INTEGER"); b.HasKey("LivreId", "ThemeId"); b.HasIndex("ThemeId"); b.ToTable("LivreThemes"); }); modelBuilder.Entity("MaBibli.Shared.Entites.NumeroRevue", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("DateAjout") .HasColumnType("TEXT"); b.Property("DateParution") .HasColumnType("TEXT"); b.Property("Note") .HasColumnType("TEXT"); b.Property("Numero") .IsRequired() .HasColumnType("TEXT"); b.Property("NumeroNormalise") .IsRequired() .HasColumnType("TEXT"); b.Property("RevueId") .HasColumnType("INTEGER"); b.HasKey("Id"); b.HasIndex("RevueId", "NumeroNormalise") .IsUnique(); b.ToTable("NumerosRevue"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Pret", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("DatePret") .HasColumnType("TEXT"); b.Property("DateRetour") .HasColumnType("TEXT"); b.Property("Emprunteur") .IsRequired() .HasColumnType("TEXT"); b.Property("LivreId") .HasColumnType("INTEGER"); b.HasKey("Id"); b.HasIndex(new[] { "LivreId" }, "IX_Prets_LivreId"); b.HasIndex(new[] { "LivreId" }, "IX_Prets_LivreId_EnCours") .IsUnique() .HasFilter("\"DateRetour\" IS NULL"); b.ToTable("Prets"); }); modelBuilder.Entity("MaBibli.Shared.Entites.RapprochementRefuse", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("AuteurAId") .HasColumnType("INTEGER"); b.Property("AuteurBId") .HasColumnType("INTEGER"); b.HasKey("Id"); b.HasIndex("AuteurAId", "AuteurBId") .IsUnique(); b.ToTable("RapprochementsRefuses"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Revue", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("AjoutePar") .HasColumnType("TEXT"); b.Property("DateAjout") .HasColumnType("TEXT"); b.Property("Editeur") .HasColumnType("TEXT"); b.Property("Issn") .HasColumnType("TEXT"); b.Property("Titre") .IsRequired() .HasColumnType("TEXT"); b.Property("TitreNormalise") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("TitreNormalise") .IsUnique(); b.HasIndex(new[] { "Issn" }, "IX_Revues_Issn") .IsUnique() .HasFilter("\"Issn\" IS NOT NULL"); b.ToTable("Revues"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Serie", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("AjoutePar") .HasColumnType("TEXT"); b.Property("DateAjout") .HasColumnType("TEXT"); b.Property("Position") .HasColumnType("INTEGER"); b.Property("SerieParenteId") .HasColumnType("INTEGER"); b.Property("Titre") .IsRequired() .HasColumnType("TEXT"); b.Property("TitreNormalise") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("SerieParenteId"); b.HasIndex("TitreNormalise") .IsUnique(); b.ToTable("Series"); }); modelBuilder.Entity("MaBibli.Shared.Entites.StatutLecture", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("DateMaj") .HasColumnType("TEXT"); b.Property("LivreId") .HasColumnType("INTEGER"); b.Property("Statut") .HasColumnType("INTEGER"); b.Property("Utilisateur") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("Utilisateur"); b.HasIndex("LivreId", "Utilisateur") .IsUnique(); b.ToTable("StatutsLecture"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Theme", b => { b.Property("Id") .ValueGeneratedOnAdd() .HasColumnType("INTEGER"); b.Property("Nom") .IsRequired() .HasColumnType("TEXT"); b.Property("NomNormalise") .IsRequired() .HasColumnType("TEXT"); b.HasKey("Id"); b.HasIndex("NomNormalise") .IsUnique(); b.ToTable("Themes"); }); modelBuilder.Entity("MaBibli.Shared.Entites.ElementSerie", b => { b.HasOne("MaBibli.Shared.Entites.Livre", "Livre") .WithMany() .HasForeignKey("LivreId") .OnDelete(DeleteBehavior.SetNull); b.HasOne("MaBibli.Shared.Entites.Serie", "Serie") .WithMany("Elements") .HasForeignKey("SerieId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Livre"); b.Navigation("Serie"); }); modelBuilder.Entity("MaBibli.Shared.Entites.LivreAuteur", b => { b.HasOne("MaBibli.Shared.Entites.Auteur", "Auteur") .WithMany("Livres") .HasForeignKey("AuteurId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.HasOne("MaBibli.Shared.Entites.Livre", "Livre") .WithMany("Auteurs") .HasForeignKey("LivreId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Auteur"); b.Navigation("Livre"); }); modelBuilder.Entity("MaBibli.Shared.Entites.LivreTheme", b => { b.HasOne("MaBibli.Shared.Entites.Livre", "Livre") .WithMany("Themes") .HasForeignKey("LivreId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.HasOne("MaBibli.Shared.Entites.Theme", "Theme") .WithMany("Livres") .HasForeignKey("ThemeId") .OnDelete(DeleteBehavior.Restrict) .IsRequired(); b.Navigation("Livre"); b.Navigation("Theme"); }); modelBuilder.Entity("MaBibli.Shared.Entites.NumeroRevue", b => { b.HasOne("MaBibli.Shared.Entites.Revue", "Revue") .WithMany("Numeros") .HasForeignKey("RevueId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Revue"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Pret", b => { b.HasOne("MaBibli.Shared.Entites.Livre", "Livre") .WithMany("Prets") .HasForeignKey("LivreId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Livre"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Serie", b => { b.HasOne("MaBibli.Shared.Entites.Serie", "SerieParente") .WithMany("SousSeries") .HasForeignKey("SerieParenteId") .OnDelete(DeleteBehavior.SetNull); b.Navigation("SerieParente"); }); modelBuilder.Entity("MaBibli.Shared.Entites.StatutLecture", b => { b.HasOne("MaBibli.Shared.Entites.Livre", "Livre") .WithMany("Statuts") .HasForeignKey("LivreId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); b.Navigation("Livre"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Auteur", b => { b.Navigation("Livres"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Livre", b => { b.Navigation("Auteurs"); b.Navigation("Prets"); b.Navigation("Statuts"); b.Navigation("Themes"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Revue", b => { b.Navigation("Numeros"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Serie", b => { b.Navigation("Elements"); b.Navigation("SousSeries"); }); modelBuilder.Entity("MaBibli.Shared.Entites.Theme", b => { b.Navigation("Livres"); }); #pragma warning restore 612, 618 } } }