//
using System;
using Costasdev.Busurbano.Database;
using Costasdev.ServiceViewer;
using Costasdev.ServiceViewer.Data;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
#nullable disable
namespace Costasdev.Busurbano.Database.Migrations
{
[DbContext(typeof(AppDbContext))]
partial class AppDbContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder
.HasAnnotation("ProductVersion", "9.0.8")
.HasAnnotation("Relational:MaxIdentifierLength", 64);
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.Agency", b =>
{
b.Property("Id")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("agency_id");
b.Property("Email")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("agency_email");
b.Property("FareUrl")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("agency_fare_url");
b.Property("Language")
.IsRequired()
.HasMaxLength(5)
.HasColumnType("varchar(5)")
.HasColumnName("agency_lang");
b.Property("Name")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("agency_name");
b.Property("Phone")
.HasMaxLength(30)
.HasColumnType("varchar(30)")
.HasColumnName("agency_phone");
b.Property("Timezone")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("varchar(50)")
.HasColumnName("agency_timezone");
b.Property("Url")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("agency_url");
b.HasKey("Id");
b.ToTable("agencies");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.Calendar", b =>
{
b.Property("ServiceId")
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("service_id");
b.Property("EndDate")
.HasColumnType("date")
.HasColumnName("end_date");
b.Property("Friday")
.HasColumnType("tinyint(1)")
.HasColumnName("friday");
b.Property("Monday")
.HasColumnType("tinyint(1)")
.HasColumnName("monday");
b.Property("Saturday")
.HasColumnType("tinyint(1)")
.HasColumnName("saturday");
b.Property("StartDate")
.HasColumnType("date")
.HasColumnName("start_date");
b.Property("Sunday")
.HasColumnType("tinyint(1)")
.HasColumnName("sunday");
b.Property("Thursday")
.HasColumnType("tinyint(1)")
.HasColumnName("thursday");
b.Property("Tuesday")
.HasColumnType("tinyint(1)")
.HasColumnName("tuesday");
b.Property("Wednesday")
.HasColumnType("tinyint(1)")
.HasColumnName("wednesday");
b.HasKey("ServiceId");
b.ToTable("calendar");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.CalendarDate", b =>
{
b.Property("ServiceId")
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("service_id");
b.Property("Date")
.HasColumnType("date")
.HasColumnName("date");
b.Property("ExceptionType")
.HasColumnType("int")
.HasColumnName("exception_type");
b.HasKey("ServiceId", "Date");
b.ToTable("calendar_dates");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.Route", b =>
{
b.Property("Id")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("route_id");
b.Property("AgencyId")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("agency_id");
b.Property("Color")
.HasMaxLength(7)
.HasColumnType("varchar(7)")
.HasColumnName("route_color");
b.Property("Description")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("route_desc");
b.Property("LongName")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("route_long_name");
b.Property("ShortName")
.IsRequired()
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("route_short_name");
b.Property("SortOrder")
.HasColumnType("int")
.HasColumnName("route_sort_order");
b.Property("TextColor")
.HasMaxLength(7)
.HasColumnType("varchar(7)")
.HasColumnName("route_text_color");
b.Property("Type")
.HasColumnType("int")
.HasColumnName("route_type");
b.Property("Url")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("route_url");
b.HasKey("Id");
b.HasIndex("AgencyId");
b.ToTable("routes");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.Stop", b =>
{
b.Property("Id")
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("stop_id");
b.Property("Code")
.IsRequired()
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("stop_code");
b.Property("Description")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("stop_desc");
b.Property("Latitude")
.HasColumnType("double")
.HasColumnName("stop_lat");
b.Property("Longitude")
.HasColumnType("double")
.HasColumnName("stop_lon");
b.Property("Name")
.IsRequired()
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("stop_name");
b.Property("Timezone")
.HasMaxLength(50)
.HasColumnType("varchar(50)")
.HasColumnName("stop_timezone");
b.Property("Url")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("stop_url");
b.Property("WheelchairBoarding")
.HasColumnType("int")
.HasColumnName("wheelchair_boarding");
b.HasKey("Id");
b.ToTable("stops");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.StopTime", b =>
{
b.Property("TripId")
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("trip_id");
b.Property("StopSequence")
.HasColumnType("int")
.HasColumnName("stop_sequence");
b.Property("ArrivalTime")
.HasMaxLength(8)
.HasColumnType("varchar(8)")
.HasColumnName("arrival_time");
b.Property("DepartureTime")
.HasMaxLength(8)
.HasColumnType("varchar(8)")
.HasColumnName("departure_time");
b.Property("ShapeDistTraveled")
.HasColumnType("double")
.HasColumnName("shape_dist_traveled");
b.Property("StopId")
.IsRequired()
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("stop_id");
b.HasKey("TripId", "StopSequence");
b.HasIndex("StopId");
b.ToTable("stop_times");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.Trip", b =>
{
b.Property("TripId")
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("trip_id");
b.Property("BlockId")
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("block_id");
b.Property("DirectionId")
.HasColumnType("int")
.HasColumnName("direction_id");
b.Property("RouteId")
.IsRequired()
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("route_id");
b.Property("ServiceId")
.IsRequired()
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("service_id");
b.Property("ShapeId")
.HasMaxLength(32)
.HasColumnType("varchar(32)")
.HasColumnName("shape_id");
b.Property("TripBikesAllowed")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasDefaultValue(0)
.HasColumnName("trip_bikes_allowed");
b.Property("TripHeadsign")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("trip_headsign");
b.Property("TripShortName")
.HasMaxLength(255)
.HasColumnType("varchar(255)")
.HasColumnName("trip_short_name");
b.Property("TripWheelchairAccessible")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasDefaultValue(0)
.HasColumnName("trip_wheelchair_accessible");
b.HasKey("TripId");
b.HasIndex("RouteId");
b.ToTable("trips");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.Route", b =>
{
b.HasOne("Costasdev.Busurbano.Database.Gtfs.Agency", "Agency")
.WithMany()
.HasForeignKey("AgencyId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Agency");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.StopTime", b =>
{
b.HasOne("Costasdev.Busurbano.Database.Gtfs.Stop", "Stop")
.WithMany()
.HasForeignKey("StopId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Costasdev.Busurbano.Database.Gtfs.Trip", "Trip")
.WithMany()
.HasForeignKey("TripId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Stop");
b.Navigation("Trip");
});
modelBuilder.Entity("Costasdev.Busurbano.Database.Gtfs.Trip", b =>
{
b.HasOne("Costasdev.Busurbano.Database.Gtfs.Route", null)
.WithMany()
.HasForeignKey("RouteId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
});
#pragma warning restore 612, 618
}
}
}