using EPAServeur.Models.EP; using EPAServeur.Models.Formation; using EPAServeur.Models.Notes; using EPAServeur.Models.SaisieChamp; using Microsoft.EntityFrameworkCore; using System; using System.Collections.Generic; using System.Linq; using System.Threading.Tasks; namespace EPAServeur.Context { public class EpContext : DbContext { public EpContext(DbContextOptions options): base(options) { } //EP public DbSet AugmentationSalaire { get; set; } public DbSet Autorisation { get; set; } public DbSet ChoixTypeEntretien { get; set; } public DbSet Document { get; set; } public DbSet Engagement { get; set; } public DbSet Ep { get; set; } public DbSet Objectif { get; set; } public DbSet ObjectifPrecedent { get; set; } public DbSet RdvEntretien { get; set; } public DbSet TypeEntretien { get; set; } //Formation public DbSet DemandeFormation { get; set; } public DbSet Formation { get; set; } public DbSet ModeFormation { get; set; } public DbSet OrigineDemandeFormation { get; set; } public DbSet OrigineFormation { get; set; } public DbSet ParticipationFormation { get; set; } public DbSet StatutFormation { get; set; } public DbSet Theme { get; set; } public DbSet TypeFormation { get; set; } //Note public DbSet Note { get; set; } //SaisieChamp public DbSet Champ { get; set; } public DbSet Saisie { get; set; } protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); //EP modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.HasOne(e => e.AugmentationSalaire).WithOne(a => a.Ep).HasForeignKey(a => a.EpId); entity.HasOne(e => e.Autorisation).WithOne(a => a.Ep).HasForeignKey(a => a.EpId); entity.HasMany(e => e.ChoixTypeEntretien).WithOne(c => c.Ep); entity.HasOne(e => e.Delegation).WithOne(d => d.Ep).HasForeignKey(d => d.EpId); entity.HasMany(e => e.DemandesFormation).WithOne(d => d.Ep); entity.HasMany(e => e.Documents).WithOne(d => d.Ep); entity.HasMany(e => e.Engagements).WithOne(e => e.Ep); entity.HasMany(e => e.Objectifs).WithOne(o => o.Ep); entity.HasMany(e => e.ObjectifsPrecedents).WithOne(o => o.Ep); entity.HasMany(e => e.Participants).WithOne(p => p.Ep); entity.HasOne(e => e.RdvEntretien).WithOne(r => r.EpChoixFinal).HasForeignKey(r => r.EpId); entity.HasMany(e => e.PropositionsRDV).WithOne(r => r.EpProposition); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.HasIndex(e => e.Libelle).IsUnique(); }); //Formation modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.HasIndex(e => e.Libelle).IsUnique(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.HasIndex(e => e.Libelle).IsUnique(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.HasIndex(e => e.Libelle).IsUnique(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.HasIndex(e => e.Libelle).IsUnique(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.HasIndex(e => e.Libelle).IsUnique(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); entity.HasIndex(e => e.Libelle).IsUnique(); }); //Notes modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); //SaisieChamp modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id); entity.Property(e => e.Id).ValueGeneratedOnAdd(); }); } } }