using System; using System.Collections.Generic; using Microsoft.EntityFrameworkCore; namespace DataBase; public partial class LogisticContext : DbContext { public LogisticContext() { } public LogisticContext(DbContextOptions options) : base(options) { } public virtual DbSet Cars { get; set; } public virtual DbSet Companies { get; set; } public virtual DbSet Humans { get; set; } public virtual DbSet Places { get; set; } public virtual DbSet Routes { get; set; } public virtual DbSet Statuses { get; set; } public virtual DbSet Voyages { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) #warning To protect potentially sensitive information in your connection string, you should move it out of source code. You can avoid scaffolding the connection string by using the Name= syntax to read it from configuration - see https://go.microsoft.com/fwlink/?linkid=2131148. For more guidance on storing connection strings, see http://go.microsoft.com/fwlink/?LinkId=723263. => optionsBuilder.UseNpgsql("Host=192.168.56.101;Port=5432;Database=logistic;Username=postgres;Password=postgres"); protected override void OnModelCreating(ModelBuilder modelBuilder) { modelBuilder.Entity(entity => { entity.HasKey(e => e.Id).HasName("car_pkey"); entity.ToTable("car", tb => tb.HasComment("Таблица машин")); entity.Property(e => e.Id) .HasDefaultValueSql("nextval('s3'::regclass)") .HasComment("Айди машины") .HasColumnName("id"); entity.Property(e => e.Model) .HasMaxLength(100) .HasDefaultValueSql("'car'::character varying") .HasComment("Модель машины") .HasColumnName("model"); entity.Property(e => e.StatusId) .HasComment("Статус машины") .HasColumnName("status_id"); entity.Property(e => e.Tonnage) .HasComment("Грузоподъемность") .HasColumnName("tonnage"); entity.HasOne(d => d.Status).WithMany(p => p.Cars) .HasForeignKey(d => d.StatusId) .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("car_status_id_fkey"); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id).HasName("company_pkey"); entity.ToTable("company", tb => tb.HasComment("Таблица компаний-заказчиков")); entity.Property(e => e.Id) .HasDefaultValueSql("nextval('s2'::regclass)") .HasComment("Айди компании") .HasColumnName("id"); entity.Property(e => e.StatusId) .HasComment("Статус компании") .HasColumnName("status_id"); entity.Property(e => e.Title) .HasMaxLength(100) .HasDefaultValueSql("'company'::character varying") .HasComment("Наимнование компании") .HasColumnName("title"); entity.HasOne(d => d.Status).WithMany(p => p.Companies) .HasForeignKey(d => d.StatusId) .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("company_status_id_fkey"); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id).HasName("human_pkey"); entity.ToTable("human", tb => tb.HasComment("Таблица водителей")); entity.Property(e => e.Id) .HasDefaultValueSql("nextval('s4'::regclass)") .HasComment("Айди человека") .HasColumnName("id"); entity.Property(e => e.Name) .HasMaxLength(100) .HasDefaultValueSql("'name'::character varying") .HasComment("ФИО водителя") .HasColumnName("name"); entity.Property(e => e.Phone) .HasMaxLength(12) .HasDefaultValueSql("'N'::character varying") .HasComment("Телефон водителя") .HasColumnName("phone"); entity.Property(e => e.StatusId) .HasComment("Статус водителя") .HasColumnName("status_id"); entity.HasOne(d => d.Status).WithMany(p => p.Humans) .HasForeignKey(d => d.StatusId) .OnDelete(DeleteBehavior.SetNull) .HasConstraintName("human_status_id_fkey"); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id).HasName("place_pkey"); entity.ToTable("place", tb => tb.HasComment("Таблица мест")); entity.Property(e => e.Id) .HasDefaultValueSql("nextval('s5'::regclass)") .HasComment("Айди места") .HasColumnName("id"); entity.Property(e => e.Title) .HasMaxLength(100) .HasDefaultValueSql("'place'::character varying") .HasComment("Наименование места") .HasColumnName("title"); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id).HasName("route_pkey"); entity.ToTable("route", tb => tb.HasComment("Таблица маршрутов")); entity.Property(e => e.Id) .HasDefaultValueSql("nextval('s6'::regclass)") .HasComment("Айди маршрутта") .HasColumnName("id"); entity.Property(e => e.Length) .HasComment("Протяженность маршрута") .HasColumnName("length"); entity.Property(e => e.PlaceEnd) .HasComment("Места отправки") .HasColumnName("place_end"); entity.Property(e => e.PlaceStart) .HasComment("Места прибытия") .HasColumnName("place_start"); entity.HasOne(d => d.PlaceEndNavigation).WithMany(p => p.RoutePlaceEndNavigations) .HasForeignKey(d => d.PlaceEnd) .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("route_placeend_fkey"); entity.HasOne(d => d.PlaceStartNavigation).WithMany(p => p.RoutePlaceStartNavigations) .HasForeignKey(d => d.PlaceStart) .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("route_placestart_fkey"); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id).HasName("status_pkey"); entity.ToTable("status", tb => tb.HasComment("Таблица статусов")); entity.Property(e => e.Id) .HasDefaultValueSql("nextval('s1'::regclass)") .HasComment("Айди статуса") .HasColumnName("id"); entity.Property(e => e.Title) .HasMaxLength(20) .HasDefaultValueSql("'status'::character varying") .HasComment("Название статуса") .HasColumnName("title"); }); modelBuilder.Entity(entity => { entity.HasKey(e => e.Id).HasName("voyage_pkey"); entity.ToTable("voyage", tb => tb.HasComment("Таблица рейсов")); entity.Property(e => e.Id) .HasDefaultValueSql("nextval('s7'::regclass)") .HasComment("Айди рейса") .HasColumnName("id"); entity.Property(e => e.CarId) .HasComment("Машина для рейса") .HasColumnName("car_id"); entity.Property(e => e.CompanyId) .HasComment("Компания, заказавшая рейс") .HasColumnName("company_id"); entity.Property(e => e.DateEnd) .HasComment("Дедлайн") .HasColumnName("date_end"); entity.Property(e => e.DateStart) .HasComment("Дата отправки") .HasColumnName("date_start"); entity.Property(e => e.HumanId) .HasComment("Водитель для рейса") .HasColumnName("human_id"); entity.Property(e => e.RouteId) .HasComment("Маршрут рейса") .HasColumnName("route_id"); entity.HasOne(d => d.Car).WithMany(p => p.Voyages) .HasForeignKey(d => d.CarId) .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("voyage_car_id_fkey"); entity.HasOne(d => d.Company).WithMany(p => p.Voyages) .HasForeignKey(d => d.CompanyId) .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("voyage_company_id_fkey"); entity.HasOne(d => d.Human).WithMany(p => p.Voyages) .HasForeignKey(d => d.HumanId) .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("voyage_human_id_fkey"); entity.HasOne(d => d.Route).WithMany(p => p.Voyages) .HasForeignKey(d => d.RouteId) .OnDelete(DeleteBehavior.Restrict) .HasConstraintName("voyage_route_id_fkey"); }); modelBuilder.HasSequence("s1"); modelBuilder.HasSequence("s2"); modelBuilder.HasSequence("s3"); modelBuilder.HasSequence("s4"); modelBuilder.HasSequence("s5"); modelBuilder.HasSequence("s6"); modelBuilder.HasSequence("s7"); OnModelCreatingPartial(modelBuilder); } partial void OnModelCreatingPartial(ModelBuilder modelBuilder); }