diff --git a/KanSan.Base/KanSanContext.cs b/KanSan.Base/KanSanContext.cs index 9e45b19..d3b91f5 100644 --- a/KanSan.Base/KanSanContext.cs +++ b/KanSan.Base/KanSanContext.cs @@ -15,6 +15,8 @@ namespace KanSan.Base public DbSet Taetigkeiten { get; set; } public DbSet LeitungsverzeichnisPositionen { get; set; } public DbSet Fahrzeuge { get; set; } + public DbSet KurzlinerSanierung { get; set; } + public DbSet HutprofilSanierung { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { diff --git a/KanSan.Base/Migrations/20200316171603_GueteschutzHinzugefügt.Designer.cs b/KanSan.Base/Migrations/20200316171603_GueteschutzHinzugefügt.Designer.cs new file mode 100644 index 0000000..3a9ddeb --- /dev/null +++ b/KanSan.Base/Migrations/20200316171603_GueteschutzHinzugefügt.Designer.cs @@ -0,0 +1,614 @@ +// +using System; +using KanSan.Base; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Infrastructure; +using Microsoft.EntityFrameworkCore.Migrations; +using Microsoft.EntityFrameworkCore.Storage.ValueConversion; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +namespace KanSan.Base.Migrations +{ + [DbContext(typeof(KanSanContext))] + [Migration("20200316171603_GueteschutzHinzugefügt")] + partial class GueteschutzHinzugefügt + { + protected override void BuildTargetModel(ModelBuilder modelBuilder) + { +#pragma warning disable 612, 618 + modelBuilder + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn) + .HasAnnotation("ProductVersion", "3.1.2") + .HasAnnotation("Relational:MaxIdentifierLength", 63); + + modelBuilder.Entity("KanSan.Base.Models.Baustelle", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("BaustelleNummer") + .HasColumnType("text"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("OrtTeil") + .HasColumnType("text"); + + b.Property("ProjektID") + .HasColumnType("integer"); + + b.HasKey("ID"); + + b.HasIndex("ProjektID"); + + b.ToTable("Baustelle"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Fahrzeug", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("Kennzeichen") + .HasColumnType("text"); + + b.HasKey("ID"); + + b.ToTable("Fahrzeuge"); + }); + + modelBuilder.Entity("KanSan.Base.Models.HutprofilSan", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("AnpressenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Auffaelligkeit") + .HasColumnType("boolean"); + + b.Property("AussenTemp") + .HasColumnType("integer"); + + b.Property("Bericht") + .HasColumnType("boolean"); + + b.Property("Dichtheit") + .HasColumnType("boolean"); + + b.Property("EntlueftenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Film") + .HasColumnType("boolean"); + + b.Property("FixierungAufPacker") + .HasColumnType("boolean"); + + b.Property("Flaechengewicht") + .HasColumnType("integer"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("HarzMaterialArt") + .HasColumnType("text"); + + b.Property("HarzmaterialHersteller") + .HasColumnType("text"); + + b.Property("InnenBeschichtung") + .HasColumnType("boolean"); + + b.Property("KanalTemp") + .HasColumnType("integer"); + + b.Property("KompACharge") + .HasColumnType("text"); + + b.Property("KompBCharge") + .HasColumnType("text"); + + b.Property("MischZeit") + .HasColumnType("timestamp without time zone"); + + b.Property("PackerDruckAnfang") + .HasColumnType("double precision"); + + b.Property("PackerDruckEnde") + .HasColumnType("double precision"); + + b.Property("RohrDN") + .HasColumnType("text"); + + b.Property("SchadPositionID") + .HasColumnType("integer"); + + b.Property("SeitenKanalDruckAnfang") + .HasColumnType("double precision"); + + b.Property("SeitenKanalDruckEnde") + .HasColumnType("double precision"); + + b.Property("Sichtkontrolle") + .HasColumnType("boolean"); + + b.Property("TraegerCharge") + .HasColumnType("text"); + + b.Property("TraegerHersteller") + .HasColumnType("text"); + + b.Property("TraegerKurzliner") + .HasColumnType("text"); + + b.Property("Video") + .HasColumnType("boolean"); + + b.Property("Wetter") + .HasColumnType("integer"); + + b.Property("Winkel") + .HasColumnType("text"); + + b.HasKey("ID"); + + b.HasIndex("SchadPositionID"); + + b.ToTable("HutprofilSanierung"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Kunde", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("Nachname") + .HasColumnType("text"); + + b.Property("Ort") + .HasColumnType("text"); + + b.Property("PLZ") + .HasColumnType("text"); + + b.Property("Strasse") + .HasColumnType("text"); + + b.Property("Vorname") + .HasColumnType("text"); + + b.HasKey("ID"); + + b.ToTable("Kunden"); + }); + + modelBuilder.Entity("KanSan.Base.Models.KurzlinerSan", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("AnpressenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Auffaelligkeit") + .HasColumnType("boolean"); + + b.Property("AussenTemp") + .HasColumnType("integer"); + + b.Property("Bericht") + .HasColumnType("boolean"); + + b.Property("Breit") + .HasColumnType("double precision"); + + b.Property("Dichtheit") + .HasColumnType("boolean"); + + b.Property("EntlueftenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Film") + .HasColumnType("boolean"); + + b.Property("FixierungAufPacker") + .HasColumnType("boolean"); + + b.Property("Flaechengewicht") + .HasColumnType("integer"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("HarzMaterialArt") + .HasColumnType("text"); + + b.Property("HarzmaterialHersteller") + .HasColumnType("text"); + + b.Property("KanalTemp") + .HasColumnType("integer"); + + b.Property("KompACharge") + .HasColumnType("text"); + + b.Property("KompBCharge") + .HasColumnType("text"); + + b.Property("Lang") + .HasColumnType("double precision"); + + b.Property("MischZeit") + .HasColumnType("timestamp without time zone"); + + b.Property("PackerDruckAnfang") + .HasColumnType("double precision"); + + b.Property("PackerDruckEnde") + .HasColumnType("double precision"); + + b.Property("SchadPositionID") + .HasColumnType("integer"); + + b.Property("Sichtkontrolle") + .HasColumnType("boolean"); + + b.Property("TraegerCharge") + .HasColumnType("text"); + + b.Property("TraegerHersteller") + .HasColumnType("text"); + + b.Property("TraegerKurzliner") + .HasColumnType("text"); + + b.Property("Video") + .HasColumnType("boolean"); + + b.Property("Wetter") + .HasColumnType("integer"); + + b.HasKey("ID"); + + b.HasIndex("SchadPositionID"); + + b.ToTable("KurzlinerSanierung"); + }); + + modelBuilder.Entity("KanSan.Base.Models.LeitungsverzeichnisPosition", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("Beschreibung") + .HasColumnType("text"); + + b.Property("Einheit") + .HasColumnType("text"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("Positionsnummer") + .HasColumnType("text"); + + b.HasKey("ID"); + + b.ToTable("LeitungsverzeichnisPositionen"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Projekt", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("KundeID") + .HasColumnType("integer"); + + b.Property("Ort") + .HasColumnType("text"); + + b.Property("Projektnummer") + .HasColumnType("text"); + + b.HasKey("ID"); + + b.HasIndex("KundeID"); + + b.ToTable("Projekte"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Sanierungskonzept", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("SanierungsTyp") + .HasColumnType("integer"); + + b.HasKey("ID"); + + b.ToTable("Sanierungskonzept"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Schaeden", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("Infiltation") + .HasColumnType("boolean"); + + b.Property("RissBruchScherbe") + .HasColumnType("boolean"); + + b.Property("SanierungsTyp") + .HasColumnType("integer"); + + b.Property("SanierungskonzeptID") + .HasColumnType("integer"); + + b.Property("SchadstelleFaekalienFrei") + .HasColumnType("boolean"); + + b.Property("SewerID") + .HasColumnType("integer"); + + b.Property("StutzenEinragend") + .HasColumnType("boolean"); + + b.Property("VorbehandeltFraeser") + .HasColumnType("boolean"); + + b.Property("VorbehandeltHD") + .HasColumnType("boolean"); + + b.Property("VorbehandeltMech") + .HasColumnType("boolean"); + + b.Property("WurzelInkrustationAblagerungen") + .HasColumnType("boolean"); + + b.HasKey("ID"); + + b.HasIndex("SanierungskonzeptID"); + + b.HasIndex("SewerID"); + + b.ToTable("Schaeden"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Sewer", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("BaustelleID") + .HasColumnType("integer"); + + b.Property("BaustellensicherungErforderlich") + .HasColumnType("boolean"); + + b.Property("DN") + .HasColumnType("integer"); + + b.Property("GenehmigungErforderlich") + .HasColumnType("boolean"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("HaltungGespuelt") + .HasColumnType("boolean"); + + b.Property("Material") + .HasColumnType("integer"); + + b.Property("ObjektNummer") + .HasColumnType("text"); + + b.Property("PunktObenID") + .HasColumnType("integer"); + + b.Property("PunktTypeOben") + .HasColumnType("integer"); + + b.Property("PunktTypeUnten") + .HasColumnType("integer"); + + b.Property("PunktUntenID") + .HasColumnType("integer"); + + b.Property("RohrleitungInBetrieb") + .HasColumnType("boolean"); + + b.Property("SewerType") + .HasColumnType("integer"); + + b.Property("StrasseName") + .HasColumnType("text"); + + b.Property("WasserHaltungDurchgefuehrt") + .HasColumnType("boolean"); + + b.HasKey("ID"); + + b.HasIndex("BaustelleID"); + + b.HasIndex("PunktObenID"); + + b.HasIndex("PunktUntenID"); + + b.ToTable("Kanaele"); + }); + + modelBuilder.Entity("KanSan.Base.Models.SewerPoint", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("Objektnummer") + .HasColumnType("text"); + + b.HasKey("ID"); + + b.ToTable("SewerPoints"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Taetigkeiten", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("Anzahl") + .HasColumnType("numeric"); + + b.Property("FahrzeugID") + .HasColumnType("integer"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("LeitungsverzeichnisPositionID") + .HasColumnType("integer"); + + b.Property("Mitarbeiter") + .HasColumnType("text"); + + b.Property("Position") + .HasColumnType("numeric"); + + b.Property("SanierungskonzeptID") + .HasColumnType("integer"); + + b.Property("ZeitStempel") + .HasColumnType("timestamp without time zone"); + + b.HasKey("ID"); + + b.HasIndex("FahrzeugID"); + + b.HasIndex("LeitungsverzeichnisPositionID"); + + b.HasIndex("SanierungskonzeptID"); + + b.ToTable("Taetigkeiten"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Baustelle", b => + { + b.HasOne("KanSan.Base.Models.Projekt", "Projekt") + .WithMany() + .HasForeignKey("ProjektID"); + }); + + modelBuilder.Entity("KanSan.Base.Models.HutprofilSan", b => + { + b.HasOne("KanSan.Base.Models.Schaeden", "SchadPosition") + .WithMany() + .HasForeignKey("SchadPositionID"); + }); + + modelBuilder.Entity("KanSan.Base.Models.KurzlinerSan", b => + { + b.HasOne("KanSan.Base.Models.Schaeden", "SchadPosition") + .WithMany() + .HasForeignKey("SchadPositionID"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Projekt", b => + { + b.HasOne("KanSan.Base.Models.Kunde", "Kunde") + .WithMany("Baustellen") + .HasForeignKey("KundeID"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Schaeden", b => + { + b.HasOne("KanSan.Base.Models.Sanierungskonzept", "Sanierungskonzept") + .WithMany() + .HasForeignKey("SanierungskonzeptID"); + + b.HasOne("KanSan.Base.Models.Sewer", "Sewer") + .WithMany("Schaeden") + .HasForeignKey("SewerID"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Sewer", b => + { + b.HasOne("KanSan.Base.Models.Baustelle", "Baustelle") + .WithMany("Kanaele") + .HasForeignKey("BaustelleID"); + + b.HasOne("KanSan.Base.Models.SewerPoint", "PunktOben") + .WithMany() + .HasForeignKey("PunktObenID"); + + b.HasOne("KanSan.Base.Models.SewerPoint", "PunktUnten") + .WithMany() + .HasForeignKey("PunktUntenID"); + }); + + modelBuilder.Entity("KanSan.Base.Models.Taetigkeiten", b => + { + b.HasOne("KanSan.Base.Models.Fahrzeug", "Fahrzeug") + .WithMany() + .HasForeignKey("FahrzeugID"); + + b.HasOne("KanSan.Base.Models.LeitungsverzeichnisPosition", "LeitungsverzeichnisPosition") + .WithMany() + .HasForeignKey("LeitungsverzeichnisPositionID"); + + b.HasOne("KanSan.Base.Models.Sanierungskonzept", "Sanierungskonzept") + .WithMany("Taetigkeiten") + .HasForeignKey("SanierungskonzeptID"); + }); +#pragma warning restore 612, 618 + } + } +} diff --git a/KanSan.Base/Migrations/20200316171603_GueteschutzHinzugefügt.cs b/KanSan.Base/Migrations/20200316171603_GueteschutzHinzugefügt.cs new file mode 100644 index 0000000..6eab54d --- /dev/null +++ b/KanSan.Base/Migrations/20200316171603_GueteschutzHinzugefügt.cs @@ -0,0 +1,254 @@ +using System; +using Microsoft.EntityFrameworkCore.Migrations; +using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata; + +namespace KanSan.Base.Migrations +{ + public partial class GueteschutzHinzugefügt : Migration + { + protected override void Up(MigrationBuilder migrationBuilder) + { + migrationBuilder.AddColumn( + name: "Infiltation", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "RissBruchScherbe", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "SchadstelleFaekalienFrei", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "StutzenEinragend", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "VorbehandeltFraeser", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "VorbehandeltHD", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "VorbehandeltMech", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "WurzelInkrustationAblagerungen", + table: "Schaeden", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "BaustellensicherungErforderlich", + table: "Kanaele", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "GenehmigungErforderlich", + table: "Kanaele", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "HaltungGespuelt", + table: "Kanaele", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "RohrleitungInBetrieb", + table: "Kanaele", + nullable: false, + defaultValue: false); + + migrationBuilder.AddColumn( + name: "WasserHaltungDurchgefuehrt", + table: "Kanaele", + nullable: false, + defaultValue: false); + + migrationBuilder.CreateTable( + name: "HutprofilSanierung", + columns: table => new + { + ID = table.Column(nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + GuidNr = table.Column(nullable: false), + SchadPositionID = table.Column(nullable: true), + Wetter = table.Column(nullable: false), + AussenTemp = table.Column(nullable: false), + KanalTemp = table.Column(nullable: false), + Sichtkontrolle = table.Column(nullable: false), + Bericht = table.Column(nullable: false), + Film = table.Column(nullable: false), + Video = table.Column(nullable: false), + Dichtheit = table.Column(nullable: false), + HarzmaterialHersteller = table.Column(nullable: true), + HarzMaterialArt = table.Column(nullable: true), + KompACharge = table.Column(nullable: true), + KompBCharge = table.Column(nullable: true), + TraegerKurzliner = table.Column(nullable: true), + TraegerHersteller = table.Column(nullable: true), + TraegerCharge = table.Column(nullable: true), + Flaechengewicht = table.Column(nullable: false), + Auffaelligkeit = table.Column(nullable: false), + FixierungAufPacker = table.Column(nullable: false), + MischZeit = table.Column(nullable: false), + AnpressenPacker = table.Column(nullable: false), + EntlueftenPacker = table.Column(nullable: false), + PackerDruckAnfang = table.Column(nullable: false), + PackerDruckEnde = table.Column(nullable: false), + RohrDN = table.Column(nullable: true), + Winkel = table.Column(nullable: true), + InnenBeschichtung = table.Column(nullable: false), + SeitenKanalDruckAnfang = table.Column(nullable: false), + SeitenKanalDruckEnde = table.Column(nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_HutprofilSanierung", x => x.ID); + table.ForeignKey( + name: "FK_HutprofilSanierung_Schaeden_SchadPositionID", + column: x => x.SchadPositionID, + principalTable: "Schaeden", + principalColumn: "ID", + onDelete: ReferentialAction.Restrict); + }); + + migrationBuilder.CreateTable( + name: "KurzlinerSanierung", + columns: table => new + { + ID = table.Column(nullable: false) + .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn), + GuidNr = table.Column(nullable: false), + SchadPositionID = table.Column(nullable: true), + Wetter = table.Column(nullable: false), + AussenTemp = table.Column(nullable: false), + KanalTemp = table.Column(nullable: false), + Sichtkontrolle = table.Column(nullable: false), + Bericht = table.Column(nullable: false), + Film = table.Column(nullable: false), + Video = table.Column(nullable: false), + Dichtheit = table.Column(nullable: false), + HarzmaterialHersteller = table.Column(nullable: true), + HarzMaterialArt = table.Column(nullable: true), + KompACharge = table.Column(nullable: true), + KompBCharge = table.Column(nullable: true), + TraegerKurzliner = table.Column(nullable: true), + TraegerHersteller = table.Column(nullable: true), + TraegerCharge = table.Column(nullable: true), + Flaechengewicht = table.Column(nullable: false), + Auffaelligkeit = table.Column(nullable: false), + FixierungAufPacker = table.Column(nullable: false), + MischZeit = table.Column(nullable: false), + AnpressenPacker = table.Column(nullable: false), + EntlueftenPacker = table.Column(nullable: false), + PackerDruckAnfang = table.Column(nullable: false), + PackerDruckEnde = table.Column(nullable: false), + Lang = table.Column(nullable: false), + Breit = table.Column(nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_KurzlinerSanierung", x => x.ID); + table.ForeignKey( + name: "FK_KurzlinerSanierung_Schaeden_SchadPositionID", + column: x => x.SchadPositionID, + principalTable: "Schaeden", + principalColumn: "ID", + onDelete: ReferentialAction.Restrict); + }); + + migrationBuilder.CreateIndex( + name: "IX_HutprofilSanierung_SchadPositionID", + table: "HutprofilSanierung", + column: "SchadPositionID"); + + migrationBuilder.CreateIndex( + name: "IX_KurzlinerSanierung_SchadPositionID", + table: "KurzlinerSanierung", + column: "SchadPositionID"); + } + + protected override void Down(MigrationBuilder migrationBuilder) + { + migrationBuilder.DropTable( + name: "HutprofilSanierung"); + + migrationBuilder.DropTable( + name: "KurzlinerSanierung"); + + migrationBuilder.DropColumn( + name: "Infiltation", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "RissBruchScherbe", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "SchadstelleFaekalienFrei", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "StutzenEinragend", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "VorbehandeltFraeser", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "VorbehandeltHD", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "VorbehandeltMech", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "WurzelInkrustationAblagerungen", + table: "Schaeden"); + + migrationBuilder.DropColumn( + name: "BaustellensicherungErforderlich", + table: "Kanaele"); + + migrationBuilder.DropColumn( + name: "GenehmigungErforderlich", + table: "Kanaele"); + + migrationBuilder.DropColumn( + name: "HaltungGespuelt", + table: "Kanaele"); + + migrationBuilder.DropColumn( + name: "RohrleitungInBetrieb", + table: "Kanaele"); + + migrationBuilder.DropColumn( + name: "WasserHaltungDurchgefuehrt", + table: "Kanaele"); + } + } +} diff --git a/KanSan.Base/Migrations/KanSanContextModelSnapshot.cs b/KanSan.Base/Migrations/KanSanContextModelSnapshot.cs index 3a9dda2..5d2e0a6 100644 --- a/KanSan.Base/Migrations/KanSanContextModelSnapshot.cs +++ b/KanSan.Base/Migrations/KanSanContextModelSnapshot.cs @@ -63,6 +63,110 @@ namespace KanSan.Base.Migrations b.ToTable("Fahrzeuge"); }); + modelBuilder.Entity("KanSan.Base.Models.HutprofilSan", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("AnpressenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Auffaelligkeit") + .HasColumnType("boolean"); + + b.Property("AussenTemp") + .HasColumnType("integer"); + + b.Property("Bericht") + .HasColumnType("boolean"); + + b.Property("Dichtheit") + .HasColumnType("boolean"); + + b.Property("EntlueftenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Film") + .HasColumnType("boolean"); + + b.Property("FixierungAufPacker") + .HasColumnType("boolean"); + + b.Property("Flaechengewicht") + .HasColumnType("integer"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("HarzMaterialArt") + .HasColumnType("text"); + + b.Property("HarzmaterialHersteller") + .HasColumnType("text"); + + b.Property("InnenBeschichtung") + .HasColumnType("boolean"); + + b.Property("KanalTemp") + .HasColumnType("integer"); + + b.Property("KompACharge") + .HasColumnType("text"); + + b.Property("KompBCharge") + .HasColumnType("text"); + + b.Property("MischZeit") + .HasColumnType("timestamp without time zone"); + + b.Property("PackerDruckAnfang") + .HasColumnType("double precision"); + + b.Property("PackerDruckEnde") + .HasColumnType("double precision"); + + b.Property("RohrDN") + .HasColumnType("text"); + + b.Property("SchadPositionID") + .HasColumnType("integer"); + + b.Property("SeitenKanalDruckAnfang") + .HasColumnType("double precision"); + + b.Property("SeitenKanalDruckEnde") + .HasColumnType("double precision"); + + b.Property("Sichtkontrolle") + .HasColumnType("boolean"); + + b.Property("TraegerCharge") + .HasColumnType("text"); + + b.Property("TraegerHersteller") + .HasColumnType("text"); + + b.Property("TraegerKurzliner") + .HasColumnType("text"); + + b.Property("Video") + .HasColumnType("boolean"); + + b.Property("Wetter") + .HasColumnType("integer"); + + b.Property("Winkel") + .HasColumnType("text"); + + b.HasKey("ID"); + + b.HasIndex("SchadPositionID"); + + b.ToTable("HutprofilSanierung"); + }); + modelBuilder.Entity("KanSan.Base.Models.Kunde", b => { b.Property("ID") @@ -93,6 +197,101 @@ namespace KanSan.Base.Migrations b.ToTable("Kunden"); }); + modelBuilder.Entity("KanSan.Base.Models.KurzlinerSan", b => + { + b.Property("ID") + .ValueGeneratedOnAdd() + .HasColumnType("integer") + .HasAnnotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn); + + b.Property("AnpressenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Auffaelligkeit") + .HasColumnType("boolean"); + + b.Property("AussenTemp") + .HasColumnType("integer"); + + b.Property("Bericht") + .HasColumnType("boolean"); + + b.Property("Breit") + .HasColumnType("double precision"); + + b.Property("Dichtheit") + .HasColumnType("boolean"); + + b.Property("EntlueftenPacker") + .HasColumnType("timestamp without time zone"); + + b.Property("Film") + .HasColumnType("boolean"); + + b.Property("FixierungAufPacker") + .HasColumnType("boolean"); + + b.Property("Flaechengewicht") + .HasColumnType("integer"); + + b.Property("GuidNr") + .HasColumnType("uuid"); + + b.Property("HarzMaterialArt") + .HasColumnType("text"); + + b.Property("HarzmaterialHersteller") + .HasColumnType("text"); + + b.Property("KanalTemp") + .HasColumnType("integer"); + + b.Property("KompACharge") + .HasColumnType("text"); + + b.Property("KompBCharge") + .HasColumnType("text"); + + b.Property("Lang") + .HasColumnType("double precision"); + + b.Property("MischZeit") + .HasColumnType("timestamp without time zone"); + + b.Property("PackerDruckAnfang") + .HasColumnType("double precision"); + + b.Property("PackerDruckEnde") + .HasColumnType("double precision"); + + b.Property("SchadPositionID") + .HasColumnType("integer"); + + b.Property("Sichtkontrolle") + .HasColumnType("boolean"); + + b.Property("TraegerCharge") + .HasColumnType("text"); + + b.Property("TraegerHersteller") + .HasColumnType("text"); + + b.Property("TraegerKurzliner") + .HasColumnType("text"); + + b.Property("Video") + .HasColumnType("boolean"); + + b.Property("Wetter") + .HasColumnType("integer"); + + b.HasKey("ID"); + + b.HasIndex("SchadPositionID"); + + b.ToTable("KurzlinerSanierung"); + }); + modelBuilder.Entity("KanSan.Base.Models.LeitungsverzeichnisPosition", b => { b.Property("ID") @@ -171,15 +370,39 @@ namespace KanSan.Base.Migrations b.Property("GuidNr") .HasColumnType("uuid"); + b.Property("Infiltation") + .HasColumnType("boolean"); + + b.Property("RissBruchScherbe") + .HasColumnType("boolean"); + b.Property("SanierungsTyp") .HasColumnType("integer"); b.Property("SanierungskonzeptID") .HasColumnType("integer"); + b.Property("SchadstelleFaekalienFrei") + .HasColumnType("boolean"); + b.Property("SewerID") .HasColumnType("integer"); + b.Property("StutzenEinragend") + .HasColumnType("boolean"); + + b.Property("VorbehandeltFraeser") + .HasColumnType("boolean"); + + b.Property("VorbehandeltHD") + .HasColumnType("boolean"); + + b.Property("VorbehandeltMech") + .HasColumnType("boolean"); + + b.Property("WurzelInkrustationAblagerungen") + .HasColumnType("boolean"); + b.HasKey("ID"); b.HasIndex("SanierungskonzeptID"); @@ -199,12 +422,21 @@ namespace KanSan.Base.Migrations b.Property("BaustelleID") .HasColumnType("integer"); + b.Property("BaustellensicherungErforderlich") + .HasColumnType("boolean"); + b.Property("DN") .HasColumnType("integer"); + b.Property("GenehmigungErforderlich") + .HasColumnType("boolean"); + b.Property("GuidNr") .HasColumnType("uuid"); + b.Property("HaltungGespuelt") + .HasColumnType("boolean"); + b.Property("Material") .HasColumnType("integer"); @@ -223,12 +455,18 @@ namespace KanSan.Base.Migrations b.Property("PunktUntenID") .HasColumnType("integer"); + b.Property("RohrleitungInBetrieb") + .HasColumnType("boolean"); + b.Property("SewerType") .HasColumnType("integer"); b.Property("StrasseName") .HasColumnType("text"); + b.Property("WasserHaltungDurchgefuehrt") + .HasColumnType("boolean"); + b.HasKey("ID"); b.HasIndex("BaustelleID"); @@ -307,6 +545,20 @@ namespace KanSan.Base.Migrations .HasForeignKey("ProjektID"); }); + modelBuilder.Entity("KanSan.Base.Models.HutprofilSan", b => + { + b.HasOne("KanSan.Base.Models.Schaeden", "SchadPosition") + .WithMany() + .HasForeignKey("SchadPositionID"); + }); + + modelBuilder.Entity("KanSan.Base.Models.KurzlinerSan", b => + { + b.HasOne("KanSan.Base.Models.Schaeden", "SchadPosition") + .WithMany() + .HasForeignKey("SchadPositionID"); + }); + modelBuilder.Entity("KanSan.Base.Models.Projekt", b => { b.HasOne("KanSan.Base.Models.Kunde", "Kunde") diff --git a/KanSan.Base/Models/GueteschutzProtokoll.cs b/KanSan.Base/Models/GueteschutzProtokoll.cs new file mode 100644 index 0000000..ff2947a --- /dev/null +++ b/KanSan.Base/Models/GueteschutzProtokoll.cs @@ -0,0 +1,28 @@ +using KanSan.Base.Interfaces; +using System; +using System.Collections.Generic; +using System.Text; + +namespace KanSan.Base.Models +{ + public abstract class GueteschutzProtokoll : IDatabaseEntry + { + public int ID { get; set; } + public Guid GuidNr { get; set; } + public Schaeden SchadPosition { get; set; } + public EWetter Wetter { get; set; } + public int AussenTemp { get; set; } + public int KanalTemp { get; set; } + public bool Sichtkontrolle { get; set; } + public bool Bericht { get; set; } + public bool Film { get; set; } + public bool Video { get; set; } + public bool Dichtheit { get; set; } + } + + public enum EWetter + { + TROCKEN, + FEUCHT + } +} diff --git a/KanSan.Base/Models/HutprofilSan.cs b/KanSan.Base/Models/HutprofilSan.cs new file mode 100644 index 0000000..0efde60 --- /dev/null +++ b/KanSan.Base/Models/HutprofilSan.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace KanSan.Base.Models +{ + public class HutprofilSan : PHarzSanierung + { + public string RohrDN { get; set; } + public string Winkel { get; set; } + public bool InnenBeschichtung { get; set; } + public double SeitenKanalDruckAnfang { get; set; } + public double SeitenKanalDruckEnde { get; set; } + } +} diff --git a/KanSan.Base/Models/KurzlinerSan.cs b/KanSan.Base/Models/KurzlinerSan.cs new file mode 100644 index 0000000..80d9c6d --- /dev/null +++ b/KanSan.Base/Models/KurzlinerSan.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace KanSan.Base.Models +{ + public class KurzlinerSan : PHarzSanierung + { + public double Lang { get; set; } + public double Breit { get; set; } + } +} diff --git a/KanSan.Base/Models/PHarzSanierung.cs b/KanSan.Base/Models/PHarzSanierung.cs new file mode 100644 index 0000000..c711950 --- /dev/null +++ b/KanSan.Base/Models/PHarzSanierung.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace KanSan.Base.Models +{ + public class PHarzSanierung : GueteschutzProtokoll + { + public string HarzmaterialHersteller { get; set; } + public string HarzMaterialArt { get; set; } + public string KompACharge { get; set; } + public string KompBCharge { get; set; } + public string TraegerKurzliner { get; set; } + public string TraegerHersteller { get; set; } + public string TraegerCharge { get; set; } + public int Flaechengewicht { get; set; } + public bool Auffaelligkeit { get; set; } + public bool FixierungAufPacker { get; set; } + public DateTime MischZeit { get; set; } + public DateTime AnpressenPacker { get; set; } + public DateTime EntlueftenPacker { get; set; } + public double PackerDruckAnfang { get; set; } + public double PackerDruckEnde { get; set; } + + } +} diff --git a/KanSan.Base/Models/Schaeden.cs b/KanSan.Base/Models/Schaeden.cs index 2eaecdd..08eaea8 100644 --- a/KanSan.Base/Models/Schaeden.cs +++ b/KanSan.Base/Models/Schaeden.cs @@ -11,5 +11,13 @@ namespace KanSan.Base.Models public Sewer Sewer { get; set; } public ESanierung SanierungsTyp { get; set; } public Sanierungskonzept Sanierungskonzept { get; set; } + public bool RissBruchScherbe { get; set; } + public bool WurzelInkrustationAblagerungen { get; set; } + public bool StutzenEinragend { get; set; } + public bool Infiltation { get; set; } + public bool VorbehandeltHD { get; set; } + public bool VorbehandeltMech { get; set; } + public bool VorbehandeltFraeser { get; set; } + public bool SchadstelleFaekalienFrei { get; set; } } } diff --git a/KanSan.Base/Models/Sewer.cs b/KanSan.Base/Models/Sewer.cs index 888528e..8a03e1e 100644 --- a/KanSan.Base/Models/Sewer.cs +++ b/KanSan.Base/Models/Sewer.cs @@ -19,6 +19,13 @@ namespace KanSan.Base.Models public SewerPoint PunktUnten { get; set; } public int DN { get; set; } public EMaterial Material { get; set; } + public bool RohrleitungInBetrieb { get; set; } + public bool HaltungGespuelt { get; set; } + public bool WasserHaltungDurchgefuehrt { get; set; } + public bool GenehmigungErforderlich { get; set; } + public bool BaustellensicherungErforderlich { get; set; } + + public List Schaeden { get; } = new List(); } } diff --git a/KanSan.Base/UnitOfWork.cs b/KanSan.Base/UnitOfWork.cs index 9de3311..98a8093 100644 --- a/KanSan.Base/UnitOfWork.cs +++ b/KanSan.Base/UnitOfWork.cs @@ -19,6 +19,8 @@ namespace KanSan.Base private BaseRepository _taetigkeiten; private BaseRepository _leistungsverzeichnisPositionen; private BaseRepository _fahrzeuge; + private BaseRepository _kurzliner; + private BaseRepository _hutprofil; public UnitOfWork(KanSanContext dbContext) { @@ -44,6 +46,8 @@ namespace KanSan.Base public IRepository LeistungsverzeichnisRepository => _leistungsverzeichnisPositionen ?? (_leistungsverzeichnisPositionen = new BaseRepository(_dbContext)); public IRepository FahrzeugRepository => _fahrzeuge ?? (_fahrzeuge = new BaseRepository(_dbContext)); + public IRepository KurzlinerRepository => _kurzliner ?? (_kurzliner = new BaseRepository(_dbContext)); + public IRepository HutprofilRepository => _hutprofil ?? (_hutprofil = new BaseRepository(_dbContext)); public void Commit() { diff --git a/KanSan.ViewModel/MainWindowViewModel.cs b/KanSan.ViewModel/MainWindowViewModel.cs index 4971ff9..a176375 100644 --- a/KanSan.ViewModel/MainWindowViewModel.cs +++ b/KanSan.ViewModel/MainWindowViewModel.cs @@ -36,7 +36,7 @@ namespace KanSan.ViewModel gitVersion = reader.ReadToEnd(); } - return gitVersion; + return string.Format("KanalSanierungsverwaltung : {0}",gitVersion); } } diff --git a/KanSan/KanSan.csproj b/KanSan/KanSan.csproj index baefc36..55d7e80 100644 --- a/KanSan/KanSan.csproj +++ b/KanSan/KanSan.csproj @@ -15,10 +15,10 @@ - - - - + + + + diff --git a/KanSan/MainWindow.xaml.cs b/KanSan/MainWindow.xaml.cs index a6394da..eca2a4a 100644 --- a/KanSan/MainWindow.xaml.cs +++ b/KanSan/MainWindow.xaml.cs @@ -122,9 +122,10 @@ namespace KanSan private void UCBaustelleList_BaustelleAdded(object sender, UI.SelectBaustelleEventArgs e) { - /*if (e.baustelle == null) return; + if (e.baustelle == null) return; UI.UCBaustelleEdit uBaustelleEdit = new UI.UCBaustelleEdit(e.baustelle); - */ + uBaustelleEdit.SpeichernClicked += Edit_SpeichernClicked; + ContentController.Content = uBaustelleEdit; } }