using Microsoft.EntityFrameworkCore; using PARR.DAL.Contracts; using PARR.DAL.Models; namespace PARR.DAL.Context { internal class DataContext : DbContext { public DataContext(DbContextOptions options) : base(options) { } public DbSet JobTypes { get; set; } public DbSet JobCategories { get; set; } public DbSet JobModes { get; set; } public DbSet JobStatuses { get; set; } public DbSet Hosts { get; set; } public DbSet Jobs { get; set; } public DbSet JobJournals { get; set; } public DbSet Applications { get; set; } public DbSet ApplicationTypes { get; set; } public DbSet ApplicationsInHosts { get; set; } public DbSet Schedulers { get; set; } //todo init application type+check migrations protected override void OnModelCreating(ModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); var dateCreated = new DateTimeOffset(2023, 05, 01, 0, 0, 0, new TimeSpan(0)); modelBuilder.Entity(f => { f.HasData( new() { Id = new Guid("FBA4202C-5BAD-49C4-B076-D1CA6E1FB158"), DateCreated = dateCreated, DateModified = null, Name = "auto" }, new() { Id = new Guid("7516B952-510D-4AAA-971C-A14B184FC1D5"), DateCreated = dateCreated, DateModified = null, Name = "manual" } ); }); modelBuilder.Entity(f => { f.HasData( new() { Id = new Guid("32c28386-6f13-4f7b-8508-be165b7fabdb"), DateCreated = dateCreated, DateModified = null, Name = ApplicationTypesEnum.APP.ToString(), Description = "Поле СП xml АИХ ИТ" }, new() { Id = new Guid("7848a96c-cdee-48c1-a786-de9cb889723a"), DateCreated = dateCreated, DateModified = null, Name = ApplicationTypesEnum.OS.ToString(), Description = "Поле ОС xml АИХ ИТ" }, new() { Id = new Guid("aae2636f-b93a-42dc-873e-0764a90a0a40"), DateCreated = dateCreated, DateModified = null, Name = ApplicationTypesEnum.DB.ToString(), Description = "Поле СУБД xml АИХ ИТ" } ); }); } } }