2024-07-10 18:35:53 -05:00
|
|
|
using DAL.Converters;
|
2024-04-16 16:17:48 -05:00
|
|
|
using DAL.Models;
|
|
|
|
using DAL.Models.Audits;
|
2024-07-10 18:35:53 -05:00
|
|
|
using DAL.Values;
|
2024-04-16 16:17:48 -05:00
|
|
|
using Microsoft.EntityFrameworkCore;
|
|
|
|
|
|
|
|
namespace DAL.Contexts
|
|
|
|
{
|
|
|
|
public class SASGContext : DbContext
|
|
|
|
{
|
|
|
|
public SASGContext()
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public SASGContext(DbContextOptions<SASGContext> options) : base(options)
|
|
|
|
{
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
public virtual DbSet<Color> colors { get; set; }
|
|
|
|
public virtual DbSet<Event> events { get; set; }
|
|
|
|
public virtual DbSet<Grant> grants { get; set; }
|
|
|
|
public virtual DbSet<Image> images { get; set; }
|
|
|
|
public virtual DbSet<Permission> permissions { get; set; }
|
|
|
|
public virtual DbSet<SavedEvent> savedEvents { get; set; }
|
2024-08-31 18:38:07 -05:00
|
|
|
public virtual DbSet<Signup> signups { get; set; }
|
2024-04-16 16:17:48 -05:00
|
|
|
public virtual DbSet<User> users { get; set; }
|
|
|
|
public virtual DbSet<AuditColor> auditColors { get; set; }
|
|
|
|
public virtual DbSet<AuditEvent> auditEvents { get; set; }
|
|
|
|
public virtual DbSet<AuditGrant> auditGrants { get; set; }
|
|
|
|
public virtual DbSet<AuditImage> auditImages { get; set; }
|
|
|
|
public virtual DbSet<AuditPermission> auditPermissions { get; set; }
|
|
|
|
public virtual DbSet<AuditSavedEvent> auditSavedEvents { get; set; }
|
|
|
|
public virtual DbSet<AuditUser> auditUsers { get; set; }
|
2024-08-31 18:38:07 -05:00
|
|
|
public virtual DbSet<AuditSignup> auditSignups { get; set; }
|
2024-04-16 16:17:48 -05:00
|
|
|
|
2024-07-10 18:35:53 -05:00
|
|
|
protected override void ConfigureConventions(ModelConfigurationBuilder configurationBuilder)
|
|
|
|
{
|
|
|
|
configurationBuilder.Properties<PhoneNumber>().HaveConversion<PhoneNumberConverter>();
|
|
|
|
}
|
|
|
|
|
2024-04-16 16:17:48 -05:00
|
|
|
protected override void OnModelCreating(ModelBuilder builder)
|
|
|
|
{
|
|
|
|
builder.Entity<Color>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("colors_users_id_fk");
|
|
|
|
});
|
|
|
|
|
|
|
|
builder.Entity<Event>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.bgColorRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.bgColorId).HasConstraintName("events_colors_id_fk");
|
|
|
|
entity.HasOne(e => e.fgColorRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.fgColorId).HasConstraintName("events_colors_id_fk_2");
|
|
|
|
entity.HasOne(e => e.imageRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.imageId).HasConstraintName("events_images_id_fk");
|
|
|
|
entity.HasOne(e => e.savedEventRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.savedEventId).HasConstraintName("events_savedEvent_id_fk");
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("events_users_id_fk");
|
|
|
|
});
|
|
|
|
|
|
|
|
builder.Entity<Grant>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.permissionRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.permissionId).HasConstraintName("grants_permissions_id_fk");
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("grants_users_id_fk");
|
|
|
|
});
|
|
|
|
|
|
|
|
builder.Entity<Image>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("grants_users_id_fk");
|
|
|
|
});
|
|
|
|
|
|
|
|
builder.Entity<Permission>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("grants_users_id_fk");
|
|
|
|
});
|
|
|
|
|
|
|
|
builder.Entity<SavedEvent>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.bgColorRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.bgColorId).HasConstraintName("events_colors_id_fk");
|
|
|
|
entity.HasOne(e => e.fgColorRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.fgColorId).HasConstraintName("events_colors_id_fk_2");
|
|
|
|
entity.HasOne(e => e.imageRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.imageId).HasConstraintName("events_images_id_fk");
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("events_users_id_fk");
|
|
|
|
});
|
|
|
|
|
|
|
|
builder.Entity<User>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("events_users_id_fk");
|
2024-07-10 18:35:53 -05:00
|
|
|
entity.Property(e => e.hashingType).HasConversion<string>();
|
2024-04-16 16:17:48 -05:00
|
|
|
});
|
2024-08-31 18:38:07 -05:00
|
|
|
|
|
|
|
builder.Entity<Signup>(entity =>
|
|
|
|
{
|
|
|
|
entity.HasOne(e => e.eventIdRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.eventId).HasConstraintName("signup_events_id_fk");
|
|
|
|
entity.HasOne(e => e.userIdRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.userId).HasConstraintName("signup_users_id_fk");
|
|
|
|
entity.HasOne(e => e.updaterRelation).WithMany()
|
|
|
|
.HasForeignKey(e => e.updater).HasConstraintName("events_users_id_fk2");
|
|
|
|
});
|
2024-04-16 16:17:48 -05:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|