From 7c6009abd22d8461039be15d0fd069a460340585 Mon Sep 17 00:00:00 2001 From: Jake Mannens Date: Fri, 20 Sep 2024 16:13:30 +1000 Subject: v0.1 --- Migrations/20230705160931_Initial.cs | 115 +++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 Migrations/20230705160931_Initial.cs (limited to 'Migrations/20230705160931_Initial.cs') diff --git a/Migrations/20230705160931_Initial.cs b/Migrations/20230705160931_Initial.cs new file mode 100644 index 0000000..9f3068f --- /dev/null +++ b/Migrations/20230705160931_Initial.cs @@ -0,0 +1,115 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +#nullable disable + +namespace PagerParser.Migrations +{ + /// + public partial class Initial : Migration + { + /// + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.CreateTable( + name: "GpsPositions", + columns: table => new + { + GpsPositionId = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Latitude = table.Column(type: "double precision", nullable: false), + Longitude = table.Column(type: "double precision", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_GpsPositions", x => x.GpsPositionId); + }); + + migrationBuilder.CreateTable( + name: "PagerMessages", + columns: table => new + { + PagerMessageId = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + Timestamp = table.Column(type: "timestamp with time zone", nullable: false), + Message = table.Column(type: "text", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_PagerMessages", x => x.PagerMessageId); + }); + + migrationBuilder.CreateTable( + name: "ParsedPagerMessages", + columns: table => new + { + ParsedPagerMessageId = table.Column(type: "integer", nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + FirecomJobNo = table.Column(type: "integer", nullable: false), + AssignmentArea = table.Column(type: "text", nullable: false), + JobType = table.Column(type: "text", nullable: false), + AlertLevel = table.Column(type: "integer", nullable: false), + Description = table.Column(type: "text", nullable: false), + MelwaysMapNo = table.Column(type: "integer", nullable: true), + MelwaysGrid = table.Column(type: "text", nullable: true), + GridReference = table.Column(type: "integer", nullable: true), + AttendingServices = table.Column(type: "integer", nullable: false), + Note = table.Column(type: "text", nullable: true), + FireGroundChannel = table.Column(type: "integer", nullable: true), + PageDestination = table.Column(type: "text", nullable: false), + GpsPositionId = table.Column(type: "integer", nullable: true), + PagerMessage = table.Column(type: "integer", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_ParsedPagerMessages", x => x.ParsedPagerMessageId); + table.ForeignKey( + name: "FK_ParsedPagerMessages_GpsPositions_GpsPositionId", + column: x => x.GpsPositionId, + principalTable: "GpsPositions", + principalColumn: "GpsPositionId"); + table.ForeignKey( + name: "FK_ParsedPagerMessages_PagerMessages_PagerMessage", + column: x => x.PagerMessage, + principalTable: "PagerMessages", + principalColumn: "PagerMessageId", + onDelete: ReferentialAction.Cascade); + }); + + migrationBuilder.CreateIndex( + name: "IX_PagerMessages_Message", + table: "PagerMessages", + column: "Message"); + + migrationBuilder.CreateIndex( + name: "IX_ParsedPagerMessages_FirecomJobNo", + table: "ParsedPagerMessages", + column: "FirecomJobNo"); + + migrationBuilder.CreateIndex( + name: "IX_ParsedPagerMessages_GpsPositionId", + table: "ParsedPagerMessages", + column: "GpsPositionId"); + + migrationBuilder.CreateIndex( + name: "IX_ParsedPagerMessages_PagerMessage", + table: "ParsedPagerMessages", + column: "PagerMessage", + unique: true); + } + + /// + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "ParsedPagerMessages"); + + migrationBuilder.DropTable( + name: "GpsPositions"); + + migrationBuilder.DropTable( + name: "PagerMessages"); + } + } +} -- cgit v1.3