aboutsummaryrefslogtreecommitdiff
path: root/Migrations
diff options
context:
space:
mode:
Diffstat (limited to 'Migrations')
-rw-r--r--Migrations/20241106012338_Bart.Designer.cs307
-rw-r--r--Migrations/20241106012338_Bart.cs95
-rw-r--r--Migrations/PagerContextModelSnapshot.cs85
3 files changed, 487 insertions, 0 deletions
diff --git a/Migrations/20241106012338_Bart.Designer.cs b/Migrations/20241106012338_Bart.Designer.cs
new file mode 100644
index 0000000..15acd57
--- /dev/null
+++ b/Migrations/20241106012338_Bart.Designer.cs
@@ -0,0 +1,307 @@
+// <auto-generated />
+using System;
+using System.Collections.Generic;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
+using PagerParser;
+
+#nullable disable
+
+namespace PagerParser.Migrations
+{
+ [DbContext(typeof(PagerContext))]
+ [Migration("20241106012338_Bart")]
+ partial class Bart
+ {
+ /// <inheritdoc />
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "8.0.8")
+ .HasAnnotation("Relational:MaxIdentifierLength", 63);
+
+ NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
+
+ modelBuilder.Entity("PagerParser.Bart.BartAvailabilityRecord", b =>
+ {
+ b.Property<int>("BartAvailabilityRecordId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("BartAvailabilityRecordId"));
+
+ b.Property<int?>("CreatedByBartMemberId")
+ .HasColumnType("integer");
+
+ b.Property<DateTime?>("CreatedOn")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property<bool>("IsDefault")
+ .HasColumnType("boolean");
+
+ b.Property<int>("MemberBartMemberId")
+ .HasColumnType("integer");
+
+ b.Property<int?>("ModifiedByBartMemberId")
+ .HasColumnType("integer");
+
+ b.Property<DateTime?>("ModifiedOn")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property<int>("Status")
+ .HasColumnType("integer");
+
+ b.Property<DateTime>("Timestamp")
+ .HasColumnType("timestamp with time zone");
+
+ b.HasKey("BartAvailabilityRecordId");
+
+ b.HasIndex("CreatedByBartMemberId");
+
+ b.HasIndex("MemberBartMemberId");
+
+ b.HasIndex("ModifiedByBartMemberId");
+
+ b.ToTable("BartAvailabilityRecords");
+ });
+
+ modelBuilder.Entity("PagerParser.Bart.BartMember", b =>
+ {
+ b.Property<int>("BartMemberId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("BartMemberId"));
+
+ b.Property<string>("MemberName")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.HasKey("BartMemberId");
+
+ b.HasIndex("MemberName");
+
+ b.ToTable("BartMembers");
+ });
+
+ modelBuilder.Entity("PagerParser.GpsPosition", b =>
+ {
+ b.Property<int>("GpsPositionId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("GpsPositionId"));
+
+ b.Property<double>("Latitude")
+ .HasColumnType("double precision");
+
+ b.Property<double>("Longitude")
+ .HasColumnType("double precision");
+
+ b.HasKey("GpsPositionId");
+
+ b.ToTable("GpsPositions");
+ });
+
+ modelBuilder.Entity("PagerParser.Handlers.DiscordAlertChannel", b =>
+ {
+ b.Property<int>("DiscordAlertChannelId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("DiscordAlertChannelId"));
+
+ b.Property<decimal>("ChannelId")
+ .HasColumnType("numeric(20,0)");
+
+ b.Property<decimal>("GuildId")
+ .HasColumnType("numeric(20,0)");
+
+ b.Property<bool>("RequireMention")
+ .HasColumnType("boolean");
+
+ b.HasKey("DiscordAlertChannelId");
+
+ b.HasIndex("GuildId")
+ .IsUnique();
+
+ b.ToTable("DiscordAlertChannels");
+ });
+
+ modelBuilder.Entity("PagerParser.Handlers.DiscordAlertSubscription", b =>
+ {
+ b.Property<int>("DiscordAlertSubscriptionId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("DiscordAlertSubscriptionId"));
+
+ b.Property<decimal>("GuildId")
+ .HasColumnType("numeric(20,0)");
+
+ b.Property<string>("PageDestination")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property<decimal>("PrincipalId")
+ .HasColumnType("numeric(20,0)");
+
+ b.Property<int>("PrincipalType")
+ .HasColumnType("integer");
+
+ b.HasKey("DiscordAlertSubscriptionId");
+
+ b.HasIndex("GuildId");
+
+ b.ToTable("DiscordAlertSubscriptions");
+ });
+
+ modelBuilder.Entity("PagerParser.PagerMessage", b =>
+ {
+ b.Property<int>("PagerMessageId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("PagerMessageId"));
+
+ b.Property<string>("Message")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property<DateTime>("Timestamp")
+ .HasColumnType("timestamp with time zone");
+
+ b.HasKey("PagerMessageId");
+
+ b.HasIndex("Message");
+
+ b.ToTable("PagerMessages");
+ });
+
+ modelBuilder.Entity("PagerParser.ParsedPagerMessage", b =>
+ {
+ b.Property<int>("ParsedPagerMessageId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("ParsedPagerMessageId"));
+
+ b.Property<int>("AlertLevel")
+ .HasColumnType("integer");
+
+ b.Property<string>("AssignmentArea")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property<int>("AttendingServices")
+ .HasColumnType("integer");
+
+ b.Property<string>("Description")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property<int?>("FireGroundChannel")
+ .HasColumnType("integer");
+
+ b.Property<int>("FirecomJobNo")
+ .HasColumnType("integer");
+
+ b.Property<int?>("GpsPositionId")
+ .HasColumnType("integer");
+
+ b.Property<int?>("GridReference")
+ .HasColumnType("integer");
+
+ b.Property<string>("JobType")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property<string>("MapGrid")
+ .HasColumnType("text");
+
+ b.Property<int?>("MapNo")
+ .HasColumnType("integer");
+
+ b.Property<int?>("MapType")
+ .HasColumnType("integer");
+
+ b.Property<string>("Note")
+ .HasColumnType("text");
+
+ b.Property<string>("PageDestination")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property<List<string>>("PagedServices")
+ .IsRequired()
+ .HasColumnType("text[]");
+
+ b.Property<int>("PagerMessage")
+ .HasColumnType("integer");
+
+ b.HasKey("ParsedPagerMessageId");
+
+ b.HasIndex("FirecomJobNo");
+
+ b.HasIndex("GpsPositionId");
+
+ b.HasIndex("PageDestination");
+
+ b.HasIndex("PagerMessage")
+ .IsUnique();
+
+ b.ToTable("ParsedPagerMessages");
+ });
+
+ modelBuilder.Entity("PagerParser.Bart.BartAvailabilityRecord", b =>
+ {
+ b.HasOne("PagerParser.Bart.BartMember", "CreatedBy")
+ .WithMany()
+ .HasForeignKey("CreatedByBartMemberId");
+
+ b.HasOne("PagerParser.Bart.BartMember", "Member")
+ .WithMany()
+ .HasForeignKey("MemberBartMemberId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PagerParser.Bart.BartMember", "ModifiedBy")
+ .WithMany()
+ .HasForeignKey("ModifiedByBartMemberId");
+
+ b.Navigation("CreatedBy");
+
+ b.Navigation("Member");
+
+ b.Navigation("ModifiedBy");
+ });
+
+ modelBuilder.Entity("PagerParser.ParsedPagerMessage", b =>
+ {
+ b.HasOne("PagerParser.GpsPosition", "GpsPosition")
+ .WithMany()
+ .HasForeignKey("GpsPositionId");
+
+ b.HasOne("PagerParser.PagerMessage", "OriginalMessage")
+ .WithOne("ParsedMessage")
+ .HasForeignKey("PagerParser.ParsedPagerMessage", "PagerMessage")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("GpsPosition");
+
+ b.Navigation("OriginalMessage");
+ });
+
+ modelBuilder.Entity("PagerParser.PagerMessage", b =>
+ {
+ b.Navigation("ParsedMessage");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/Migrations/20241106012338_Bart.cs b/Migrations/20241106012338_Bart.cs
new file mode 100644
index 0000000..8174579
--- /dev/null
+++ b/Migrations/20241106012338_Bart.cs
@@ -0,0 +1,95 @@
+using System;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
+
+#nullable disable
+
+namespace PagerParser.Migrations
+{
+ /// <inheritdoc />
+ public partial class Bart : Migration
+ {
+ /// <inheritdoc />
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.CreateTable(
+ name: "BartMembers",
+ columns: table => new
+ {
+ BartMemberId = table.Column<int>(type: "integer", nullable: false)
+ .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
+ MemberName = table.Column<string>(type: "text", nullable: false)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_BartMembers", x => x.BartMemberId);
+ });
+
+ migrationBuilder.CreateTable(
+ name: "BartAvailabilityRecords",
+ columns: table => new
+ {
+ BartAvailabilityRecordId = table.Column<int>(type: "integer", nullable: false)
+ .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
+ Timestamp = table.Column<DateTime>(type: "timestamp with time zone", nullable: false),
+ MemberBartMemberId = table.Column<int>(type: "integer", nullable: false),
+ Status = table.Column<int>(type: "integer", nullable: false),
+ IsDefault = table.Column<bool>(type: "boolean", nullable: false),
+ ModifiedOn = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),
+ ModifiedByBartMemberId = table.Column<int>(type: "integer", nullable: true),
+ CreatedOn = table.Column<DateTime>(type: "timestamp with time zone", nullable: true),
+ CreatedByBartMemberId = table.Column<int>(type: "integer", nullable: true)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_BartAvailabilityRecords", x => x.BartAvailabilityRecordId);
+ table.ForeignKey(
+ name: "FK_BartAvailabilityRecords_BartMembers_CreatedByBartMemberId",
+ column: x => x.CreatedByBartMemberId,
+ principalTable: "BartMembers",
+ principalColumn: "BartMemberId");
+ table.ForeignKey(
+ name: "FK_BartAvailabilityRecords_BartMembers_MemberBartMemberId",
+ column: x => x.MemberBartMemberId,
+ principalTable: "BartMembers",
+ principalColumn: "BartMemberId",
+ onDelete: ReferentialAction.Cascade);
+ table.ForeignKey(
+ name: "FK_BartAvailabilityRecords_BartMembers_ModifiedByBartMemberId",
+ column: x => x.ModifiedByBartMemberId,
+ principalTable: "BartMembers",
+ principalColumn: "BartMemberId");
+ });
+
+ migrationBuilder.CreateIndex(
+ name: "IX_BartAvailabilityRecords_CreatedByBartMemberId",
+ table: "BartAvailabilityRecords",
+ column: "CreatedByBartMemberId");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_BartAvailabilityRecords_MemberBartMemberId",
+ table: "BartAvailabilityRecords",
+ column: "MemberBartMemberId");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_BartAvailabilityRecords_ModifiedByBartMemberId",
+ table: "BartAvailabilityRecords",
+ column: "ModifiedByBartMemberId");
+
+ migrationBuilder.CreateIndex(
+ name: "IX_BartMembers_MemberName",
+ table: "BartMembers",
+ column: "MemberName");
+ }
+
+ /// <inheritdoc />
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropTable(
+ name: "BartAvailabilityRecords");
+
+ migrationBuilder.DropTable(
+ name: "BartMembers");
+ }
+ }
+}
diff --git a/Migrations/PagerContextModelSnapshot.cs b/Migrations/PagerContextModelSnapshot.cs
index 4ff5dc3..1d86420 100644
--- a/Migrations/PagerContextModelSnapshot.cs
+++ b/Migrations/PagerContextModelSnapshot.cs
@@ -23,6 +23,68 @@ namespace PagerParser.Migrations
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
+ modelBuilder.Entity("PagerParser.Bart.BartAvailabilityRecord", b =>
+ {
+ b.Property<int>("BartAvailabilityRecordId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("BartAvailabilityRecordId"));
+
+ b.Property<int?>("CreatedByBartMemberId")
+ .HasColumnType("integer");
+
+ b.Property<DateTime?>("CreatedOn")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property<bool>("IsDefault")
+ .HasColumnType("boolean");
+
+ b.Property<int>("MemberBartMemberId")
+ .HasColumnType("integer");
+
+ b.Property<int?>("ModifiedByBartMemberId")
+ .HasColumnType("integer");
+
+ b.Property<DateTime?>("ModifiedOn")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property<int>("Status")
+ .HasColumnType("integer");
+
+ b.Property<DateTime>("Timestamp")
+ .HasColumnType("timestamp with time zone");
+
+ b.HasKey("BartAvailabilityRecordId");
+
+ b.HasIndex("CreatedByBartMemberId");
+
+ b.HasIndex("MemberBartMemberId");
+
+ b.HasIndex("ModifiedByBartMemberId");
+
+ b.ToTable("BartAvailabilityRecords");
+ });
+
+ modelBuilder.Entity("PagerParser.Bart.BartMember", b =>
+ {
+ b.Property<int>("BartMemberId")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property<int>("BartMemberId"));
+
+ b.Property<string>("MemberName")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.HasKey("BartMemberId");
+
+ b.HasIndex("MemberName");
+
+ b.ToTable("BartMembers");
+ });
+
modelBuilder.Entity("PagerParser.GpsPosition", b =>
{
b.Property<int>("GpsPositionId")
@@ -192,6 +254,29 @@ namespace PagerParser.Migrations
b.ToTable("ParsedPagerMessages");
});
+ modelBuilder.Entity("PagerParser.Bart.BartAvailabilityRecord", b =>
+ {
+ b.HasOne("PagerParser.Bart.BartMember", "CreatedBy")
+ .WithMany()
+ .HasForeignKey("CreatedByBartMemberId");
+
+ b.HasOne("PagerParser.Bart.BartMember", "Member")
+ .WithMany()
+ .HasForeignKey("MemberBartMemberId")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.HasOne("PagerParser.Bart.BartMember", "ModifiedBy")
+ .WithMany()
+ .HasForeignKey("ModifiedByBartMemberId");
+
+ b.Navigation("CreatedBy");
+
+ b.Navigation("Member");
+
+ b.Navigation("ModifiedBy");
+ });
+
modelBuilder.Entity("PagerParser.ParsedPagerMessage", b =>
{
b.HasOne("PagerParser.GpsPosition", "GpsPosition")