ldap-cesi/ldap-cesi/Context/PgContext.cs
BuzzLeclair 8901f921c7 - Ajout d'automapper pour convertir les dto en entité et inversement
- Ajout des méthodes nécessaire pour la gestion de JWT
2025-03-02 16:50:53 +01:00

136 lines
4.3 KiB
C#

using System;
using System.Collections.Generic;
using ldap_cesi.Entities;
using Microsoft.EntityFrameworkCore;
namespace ldap_cesi.Context;
public partial class PgContext : DbContext
{
public PgContext()
{
}
public PgContext(DbContextOptions<PgContext> options)
: base(options)
{
}
public virtual DbSet<Role> Roles { get; set; }
public virtual DbSet<Salarie> Salaries { get; set; }
public virtual DbSet<Service> Services { get; set; }
public virtual DbSet<Site> Sites { get; set; }
public virtual DbSet<Utilisateur> Utilisateurs { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Role>(entity =>
{
entity.HasKey(e => e.Id).HasName("role_pk");
entity.ToTable("role");
entity.Property(e => e.Id).HasColumnName("id");
entity.Property(e => e.Nom)
.HasMaxLength(50)
.HasColumnName("nom");
});
modelBuilder.Entity<Salarie>(entity =>
{
entity.HasKey(e => e.Id).HasName("salarie_pk");
entity.ToTable("salarie");
entity.Property(e => e.Id).HasColumnName("id");
entity.Property(e => e.Email)
.HasMaxLength(50)
.HasColumnName("email");
entity.Property(e => e.IdService).HasColumnName("id_service");
entity.Property(e => e.IdSite).HasColumnName("id_site");
entity.Property(e => e.Nom)
.HasMaxLength(50)
.HasColumnName("nom");
entity.Property(e => e.Prenom)
.HasMaxLength(50)
.HasColumnName("prenom");
entity.Property(e => e.TelephoneFixe)
.HasMaxLength(50)
.HasColumnName("telephone_fixe");
entity.Property(e => e.TelephonePortable)
.HasMaxLength(50)
.HasColumnName("telephone_portable");
entity.HasOne(d => d.IdServiceNavigation).WithMany(p => p.Salaries)
.HasForeignKey(d => d.IdService)
.OnDelete(DeleteBehavior.ClientSetNull)
.HasConstraintName("salarie_service0_fk");
entity.HasOne(d => d.IdSiteNavigation).WithMany(p => p.Salaries)
.HasForeignKey(d => d.IdSite)
.OnDelete(DeleteBehavior.ClientSetNull)
.HasConstraintName("salarie_site_fk");
});
modelBuilder.Entity<Service>(entity =>
{
entity.HasKey(e => e.Id).HasName("service_pk");
entity.ToTable("service");
entity.Property(e => e.Id).HasColumnName("id");
entity.Property(e => e.Nom)
.HasMaxLength(50)
.HasColumnName("nom");
});
modelBuilder.Entity<Site>(entity =>
{
entity.HasKey(e => e.Id).HasName("site_pk");
entity.ToTable("site");
entity.Property(e => e.Id).HasColumnName("id");
entity.Property(e => e.Ville)
.HasMaxLength(150)
.HasColumnName("ville");
});
modelBuilder.Entity<Utilisateur>(entity =>
{
entity.HasKey(e => e.Id).HasName("utilisateur_pk");
entity.ToTable("utilisateur");
entity.Property(e => e.Id).HasColumnName("id");
entity.Property(e => e.IdRole).HasColumnName("id_role");
entity.Property(e => e.MotDePasse)
.HasMaxLength(50)
.HasColumnName("mot_de_passe");
entity.Property(e => e.Nom)
.HasMaxLength(50)
.HasColumnName("nom");
entity.Property(e => e.Email)
.HasMaxLength(50)
.HasColumnName("email");
entity.Property(e => e.Prenom)
.HasMaxLength(50)
.HasColumnName("prenom");
entity.Ignore(e => e.AccessToken);
entity.HasOne(d => d.IdRoleNavigation).WithMany(p => p.Utilisateurs)
.HasForeignKey(d => d.IdRole)
.OnDelete(DeleteBehavior.ClientSetNull)
.HasConstraintName("utilisateur_role_fk");
});
OnModelCreatingPartial(modelBuilder);
}
partial void OnModelCreatingPartial(ModelBuilder modelBuilder);
}