EF core added

This commit is contained in:
Damian Wessels
2023-01-14 12:20:47 +01:00
parent 12fa97bc28
commit 1c4f581f28
24 changed files with 719 additions and 53 deletions

View File

@@ -0,0 +1,226 @@
// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Migrations;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using SanSystem;
#nullable disable
namespace SanSystem.Migrations
{
[DbContext(typeof(SanVerwalterContext))]
[Migration("20230114101006_InitialCreate")]
partial class InitialCreate
{
protected override void BuildTargetModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder.HasAnnotation("ProductVersion", "6.0.0");
modelBuilder.Entity("KlassenBIB.Auftraggeber", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<string>("Ansprechpartner")
.HasColumnType("TEXT");
b.Property<string>("Name")
.HasColumnType("TEXT");
b.Property<string>("Ort")
.HasColumnType("TEXT");
b.Property<string>("Strasse")
.HasColumnType("TEXT");
b.HasKey("Id");
b.ToTable("Auftraggebers");
});
modelBuilder.Entity("KlassenBIB.Inspektionsobjekt", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<string>("Bemerkung")
.HasColumnType("TEXT");
b.Property<string>("BisPunkt")
.HasColumnType("TEXT");
b.Property<bool>("GeschlossenesEnde")
.HasColumnType("INTEGER");
b.Property<Guid>("Guid")
.HasColumnType("TEXT");
b.Property<DateTime>("HaltungGemessen")
.HasColumnType("TEXT");
b.Property<double>("Haltungslaenge")
.HasColumnType("REAL");
b.Property<string>("Hausnummer")
.HasColumnType("TEXT");
b.Property<string>("Inspektionsrichtung")
.HasColumnType("TEXT");
b.Property<uint>("Kanalrohrweite")
.HasColumnType("INTEGER");
b.Property<string>("Objektbezeichnung")
.HasColumnType("TEXT");
b.Property<string>("OrtName")
.HasColumnType("TEXT");
b.Property<int?>("OverrideAuftraggeberId")
.HasColumnType("INTEGER");
b.Property<int?>("ProjektId")
.HasColumnType("INTEGER");
b.Property<string>("Projektnummer")
.HasColumnType("TEXT");
b.Property<string>("RohrMaterial")
.HasColumnType("TEXT");
b.Property<string>("Sanierungsnummer")
.HasColumnType("TEXT");
b.Property<double>("Schachtlaenge")
.HasColumnType("REAL");
b.Property<string>("StrasseName")
.HasColumnType("TEXT");
b.Property<string>("VonPunkt")
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("OverrideAuftraggeberId");
b.HasIndex("ProjektId");
b.ToTable("InspektionObjekte");
});
modelBuilder.Entity("KlassenBIB.Projekt", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<int?>("AuftraggeberId")
.HasColumnType("INTEGER");
b.Property<string>("Nummer")
.HasColumnType("TEXT");
b.Property<string>("Ort")
.HasColumnType("TEXT");
b.Property<string>("SanierungsIDPrefix")
.HasColumnType("TEXT");
b.Property<string>("SanierungsIDSuffix")
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("AuftraggeberId");
b.ToTable("Projekte");
});
modelBuilder.Entity("KlassenBIB.Sanierung", b =>
{
b.Property<bool>("GenehmigungVorhanden")
.HasColumnType("INTEGER");
b.Property<Guid>("Guid")
.HasColumnType("TEXT");
b.Property<bool>("HDReinigung")
.HasColumnType("INTEGER");
b.Property<DateTime>("HDReinigungDatum")
.HasColumnType("TEXT");
b.Property<int?>("InspektionsobjektId")
.HasColumnType("INTEGER");
b.Property<bool>("STVOAbsicherung")
.HasColumnType("INTEGER");
b.Property<double>("TempAusen")
.HasColumnType("REAL");
b.Property<double>("TempKanal")
.HasColumnType("REAL");
b.Property<bool>("VorbereitetMechanisch")
.HasColumnType("INTEGER");
b.Property<bool>("VorbereitetRoboter")
.HasColumnType("INTEGER");
b.Property<bool>("WasserhaltungEingerichtet")
.HasColumnType("INTEGER");
b.Property<string>("Wetter")
.HasColumnType("TEXT");
b.HasIndex("InspektionsobjektId");
b.ToTable("Sanierung");
});
modelBuilder.Entity("KlassenBIB.Inspektionsobjekt", b =>
{
b.HasOne("KlassenBIB.Auftraggeber", "OverrideAuftraggeber")
.WithMany()
.HasForeignKey("OverrideAuftraggeberId");
b.HasOne("KlassenBIB.Projekt", null)
.WithMany("Objekte")
.HasForeignKey("ProjektId");
b.Navigation("OverrideAuftraggeber");
});
modelBuilder.Entity("KlassenBIB.Projekt", b =>
{
b.HasOne("KlassenBIB.Auftraggeber", "Auftraggeber")
.WithMany()
.HasForeignKey("AuftraggeberId");
b.Navigation("Auftraggeber");
});
modelBuilder.Entity("KlassenBIB.Sanierung", b =>
{
b.HasOne("KlassenBIB.Inspektionsobjekt", "Inspektionsobjekt")
.WithMany()
.HasForeignKey("InspektionsobjektId");
b.Navigation("Inspektionsobjekt");
});
modelBuilder.Entity("KlassenBIB.Projekt", b =>
{
b.Navigation("Objekte");
});
#pragma warning restore 612, 618
}
}
}

View File

@@ -0,0 +1,153 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace SanSystem.Migrations
{
public partial class InitialCreate : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "Auftraggebers",
columns: table => new
{
Id = table.Column<int>(type: "INTEGER", nullable: false)
.Annotation("Sqlite:Autoincrement", true),
Name = table.Column<string>(type: "TEXT", nullable: true),
Strasse = table.Column<string>(type: "TEXT", nullable: true),
Ort = table.Column<string>(type: "TEXT", nullable: true),
Ansprechpartner = table.Column<string>(type: "TEXT", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Auftraggebers", x => x.Id);
});
migrationBuilder.CreateTable(
name: "Projekte",
columns: table => new
{
Id = table.Column<int>(type: "INTEGER", nullable: false)
.Annotation("Sqlite:Autoincrement", true),
Nummer = table.Column<string>(type: "TEXT", nullable: true),
Ort = table.Column<string>(type: "TEXT", nullable: true),
AuftraggeberId = table.Column<int>(type: "INTEGER", nullable: true),
SanierungsIDPrefix = table.Column<string>(type: "TEXT", nullable: true),
SanierungsIDSuffix = table.Column<string>(type: "TEXT", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Projekte", x => x.Id);
table.ForeignKey(
name: "FK_Projekte_Auftraggebers_AuftraggeberId",
column: x => x.AuftraggeberId,
principalTable: "Auftraggebers",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "InspektionObjekte",
columns: table => new
{
Id = table.Column<int>(type: "INTEGER", nullable: false)
.Annotation("Sqlite:Autoincrement", true),
OverrideAuftraggeberId = table.Column<int>(type: "INTEGER", nullable: true),
GeschlossenesEnde = table.Column<bool>(type: "INTEGER", nullable: false),
StrasseName = table.Column<string>(type: "TEXT", nullable: true),
OrtName = table.Column<string>(type: "TEXT", nullable: true),
Hausnummer = table.Column<string>(type: "TEXT", nullable: true),
Projektnummer = table.Column<string>(type: "TEXT", nullable: true),
Objektbezeichnung = table.Column<string>(type: "TEXT", nullable: true),
VonPunkt = table.Column<string>(type: "TEXT", nullable: true),
BisPunkt = table.Column<string>(type: "TEXT", nullable: true),
RohrMaterial = table.Column<string>(type: "TEXT", nullable: true),
Kanalrohrweite = table.Column<uint>(type: "INTEGER", nullable: false),
Haltungslaenge = table.Column<double>(type: "REAL", nullable: false),
Schachtlaenge = table.Column<double>(type: "REAL", nullable: false),
HaltungGemessen = table.Column<DateTime>(type: "TEXT", nullable: false),
Bemerkung = table.Column<string>(type: "TEXT", nullable: true),
Inspektionsrichtung = table.Column<string>(type: "TEXT", nullable: true),
Sanierungsnummer = table.Column<string>(type: "TEXT", nullable: true),
Guid = table.Column<Guid>(type: "TEXT", nullable: false),
ProjektId = table.Column<int>(type: "INTEGER", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_InspektionObjekte", x => x.Id);
table.ForeignKey(
name: "FK_InspektionObjekte_Auftraggebers_OverrideAuftraggeberId",
column: x => x.OverrideAuftraggeberId,
principalTable: "Auftraggebers",
principalColumn: "Id");
table.ForeignKey(
name: "FK_InspektionObjekte_Projekte_ProjektId",
column: x => x.ProjektId,
principalTable: "Projekte",
principalColumn: "Id");
});
migrationBuilder.CreateTable(
name: "Sanierung",
columns: table => new
{
Guid = table.Column<Guid>(type: "TEXT", nullable: false),
TempAusen = table.Column<double>(type: "REAL", nullable: false),
TempKanal = table.Column<double>(type: "REAL", nullable: false),
Wetter = table.Column<string>(type: "TEXT", nullable: true),
GenehmigungVorhanden = table.Column<bool>(type: "INTEGER", nullable: false),
WasserhaltungEingerichtet = table.Column<bool>(type: "INTEGER", nullable: false),
STVOAbsicherung = table.Column<bool>(type: "INTEGER", nullable: false),
HDReinigung = table.Column<bool>(type: "INTEGER", nullable: false),
HDReinigungDatum = table.Column<DateTime>(type: "TEXT", nullable: false),
InspektionsobjektId = table.Column<int>(type: "INTEGER", nullable: true),
VorbereitetMechanisch = table.Column<bool>(type: "INTEGER", nullable: false),
VorbereitetRoboter = table.Column<bool>(type: "INTEGER", nullable: false)
},
constraints: table =>
{
table.ForeignKey(
name: "FK_Sanierung_InspektionObjekte_InspektionsobjektId",
column: x => x.InspektionsobjektId,
principalTable: "InspektionObjekte",
principalColumn: "Id");
});
migrationBuilder.CreateIndex(
name: "IX_InspektionObjekte_OverrideAuftraggeberId",
table: "InspektionObjekte",
column: "OverrideAuftraggeberId");
migrationBuilder.CreateIndex(
name: "IX_InspektionObjekte_ProjektId",
table: "InspektionObjekte",
column: "ProjektId");
migrationBuilder.CreateIndex(
name: "IX_Projekte_AuftraggeberId",
table: "Projekte",
column: "AuftraggeberId");
migrationBuilder.CreateIndex(
name: "IX_Sanierung_InspektionsobjektId",
table: "Sanierung",
column: "InspektionsobjektId");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "Sanierung");
migrationBuilder.DropTable(
name: "InspektionObjekte");
migrationBuilder.DropTable(
name: "Projekte");
migrationBuilder.DropTable(
name: "Auftraggebers");
}
}
}

View File

@@ -0,0 +1,224 @@
// <auto-generated />
using System;
using Microsoft.EntityFrameworkCore;
using Microsoft.EntityFrameworkCore.Infrastructure;
using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
using SanSystem;
#nullable disable
namespace SanSystem.Migrations
{
[DbContext(typeof(SanVerwalterContext))]
partial class SanVerwalterContextModelSnapshot : ModelSnapshot
{
protected override void BuildModel(ModelBuilder modelBuilder)
{
#pragma warning disable 612, 618
modelBuilder.HasAnnotation("ProductVersion", "6.0.0");
modelBuilder.Entity("KlassenBIB.Auftraggeber", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<string>("Ansprechpartner")
.HasColumnType("TEXT");
b.Property<string>("Name")
.HasColumnType("TEXT");
b.Property<string>("Ort")
.HasColumnType("TEXT");
b.Property<string>("Strasse")
.HasColumnType("TEXT");
b.HasKey("Id");
b.ToTable("Auftraggebers");
});
modelBuilder.Entity("KlassenBIB.Inspektionsobjekt", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<string>("Bemerkung")
.HasColumnType("TEXT");
b.Property<string>("BisPunkt")
.HasColumnType("TEXT");
b.Property<bool>("GeschlossenesEnde")
.HasColumnType("INTEGER");
b.Property<Guid>("Guid")
.HasColumnType("TEXT");
b.Property<DateTime>("HaltungGemessen")
.HasColumnType("TEXT");
b.Property<double>("Haltungslaenge")
.HasColumnType("REAL");
b.Property<string>("Hausnummer")
.HasColumnType("TEXT");
b.Property<string>("Inspektionsrichtung")
.HasColumnType("TEXT");
b.Property<uint>("Kanalrohrweite")
.HasColumnType("INTEGER");
b.Property<string>("Objektbezeichnung")
.HasColumnType("TEXT");
b.Property<string>("OrtName")
.HasColumnType("TEXT");
b.Property<int?>("OverrideAuftraggeberId")
.HasColumnType("INTEGER");
b.Property<int?>("ProjektId")
.HasColumnType("INTEGER");
b.Property<string>("Projektnummer")
.HasColumnType("TEXT");
b.Property<string>("RohrMaterial")
.HasColumnType("TEXT");
b.Property<string>("Sanierungsnummer")
.HasColumnType("TEXT");
b.Property<double>("Schachtlaenge")
.HasColumnType("REAL");
b.Property<string>("StrasseName")
.HasColumnType("TEXT");
b.Property<string>("VonPunkt")
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("OverrideAuftraggeberId");
b.HasIndex("ProjektId");
b.ToTable("InspektionObjekte");
});
modelBuilder.Entity("KlassenBIB.Projekt", b =>
{
b.Property<int>("Id")
.ValueGeneratedOnAdd()
.HasColumnType("INTEGER");
b.Property<int?>("AuftraggeberId")
.HasColumnType("INTEGER");
b.Property<string>("Nummer")
.HasColumnType("TEXT");
b.Property<string>("Ort")
.HasColumnType("TEXT");
b.Property<string>("SanierungsIDPrefix")
.HasColumnType("TEXT");
b.Property<string>("SanierungsIDSuffix")
.HasColumnType("TEXT");
b.HasKey("Id");
b.HasIndex("AuftraggeberId");
b.ToTable("Projekte");
});
modelBuilder.Entity("KlassenBIB.Sanierung", b =>
{
b.Property<bool>("GenehmigungVorhanden")
.HasColumnType("INTEGER");
b.Property<Guid>("Guid")
.HasColumnType("TEXT");
b.Property<bool>("HDReinigung")
.HasColumnType("INTEGER");
b.Property<DateTime>("HDReinigungDatum")
.HasColumnType("TEXT");
b.Property<int?>("InspektionsobjektId")
.HasColumnType("INTEGER");
b.Property<bool>("STVOAbsicherung")
.HasColumnType("INTEGER");
b.Property<double>("TempAusen")
.HasColumnType("REAL");
b.Property<double>("TempKanal")
.HasColumnType("REAL");
b.Property<bool>("VorbereitetMechanisch")
.HasColumnType("INTEGER");
b.Property<bool>("VorbereitetRoboter")
.HasColumnType("INTEGER");
b.Property<bool>("WasserhaltungEingerichtet")
.HasColumnType("INTEGER");
b.Property<string>("Wetter")
.HasColumnType("TEXT");
b.HasIndex("InspektionsobjektId");
b.ToTable("Sanierung");
});
modelBuilder.Entity("KlassenBIB.Inspektionsobjekt", b =>
{
b.HasOne("KlassenBIB.Auftraggeber", "OverrideAuftraggeber")
.WithMany()
.HasForeignKey("OverrideAuftraggeberId");
b.HasOne("KlassenBIB.Projekt", null)
.WithMany("Objekte")
.HasForeignKey("ProjektId");
b.Navigation("OverrideAuftraggeber");
});
modelBuilder.Entity("KlassenBIB.Projekt", b =>
{
b.HasOne("KlassenBIB.Auftraggeber", "Auftraggeber")
.WithMany()
.HasForeignKey("AuftraggeberId");
b.Navigation("Auftraggeber");
});
modelBuilder.Entity("KlassenBIB.Sanierung", b =>
{
b.HasOne("KlassenBIB.Inspektionsobjekt", "Inspektionsobjekt")
.WithMany()
.HasForeignKey("InspektionsobjektId");
b.Navigation("Inspektionsobjekt");
});
modelBuilder.Entity("KlassenBIB.Projekt", b =>
{
b.Navigation("Objekte");
});
#pragma warning restore 612, 618
}
}
}