Пример #1
0
        public void AddMassnahmenvorschlag(MassnahmenvorschlagKatalogCreateModel editModel)
        {
            var erfassungsPeriods = Query <ErfassungsPeriod>().Where(ep => !ep.IsClosed).Fetch(ep => ep.Mandant).ToList();
            int legendNumber      = GetLegendNumber(editModel.Typ);
            var parent            = new MassnahmentypKatalog();

            parent.KatalogTyp   = editModel.KatalogTyp;
            parent.Typ          = editModel.Typ;
            parent.LegendNumber = legendNumber;
            CurrentSession.Save(parent);
            foreach (var kosten in editModel.KonstenModels)
            {
                var massnahmenvorschlagKatalogEditModel =
                    new GlobalMassnahmenvorschlagKatalog
                {
                    Belastungskategorie = GetEntityById <Belastungskategorie>(kosten.Belastungskategorie),
                    DefaultKosten       = kosten.DefaultKosten ?? 0,
                    Parent = parent
                };
                var entity = CreateEntity(massnahmenvorschlagKatalogEditModel);
                foreach (var erfassungsPeriod in erfassungsPeriods)
                {
                    var realisierteMassnahmenvorschlagKatalog = new MassnahmenvorschlagKatalog();
                    entityServiceMappingEngine.Translate(entity, realisierteMassnahmenvorschlagKatalog);

                    realisierteMassnahmenvorschlagKatalog.Mandant          = erfassungsPeriod.Mandant;
                    realisierteMassnahmenvorschlagKatalog.ErfassungsPeriod = erfassungsPeriod;

                    Create(realisierteMassnahmenvorschlagKatalog);
                }
            }
        }
Пример #2
0
        public void DeleteMassnahmenvorschlag(string typ)
        {
            if (IsMassnahmenvorschlagKatalogUsed(typ))
            {
                throw new InvalidOperationException("GlobalRealisierteMassnahmenvorschlagKatalog can not be Deleted because it is in use!");
            }

            MassnahmentypKatalog parent = null;

            foreach (var massnahmenvorschlagKatalog in Queryable.Where(m => m.Parent.Typ == typ))
            {
                parent = massnahmenvorschlagKatalog.Parent;
                DeleteEntity(massnahmenvorschlagKatalog.Id);
            }
            if (parent != null)
            {
                Delete(parent);
            }
        }
Пример #3
0
        public void GenerateStammDaten(ISession session)
        {
            //Configurations
            var temp = session.Query <KopieAchsenSegment>().ToList();

            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("b29de818-e2eb-444d-9b63-b2e7472f9917"), EigenschaftTyp = BenchmarkingGruppenTyp.NetzGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 50m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("1f9efdfd-0851-4c2d-a481-3f7502e0d789"), EigenschaftTyp = BenchmarkingGruppenTyp.NetzGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 75m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("b8d9732b-80fb-47ce-b786-b25f00517081"), EigenschaftTyp = BenchmarkingGruppenTyp.NetzGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 100m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("948d17d2-1702-4543-b9dc-2cfaf5c663c5"), EigenschaftTyp = BenchmarkingGruppenTyp.NetzGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 150m
            });

            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("fe584a54-5361-46ca-9e81-b4f981a5848a"), EigenschaftTyp = BenchmarkingGruppenTyp.EinwohnerGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 1000m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("0b5ff486-31b7-40d7-85d3-c0a1ec8c9e00"), EigenschaftTyp = BenchmarkingGruppenTyp.EinwohnerGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 3000m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("61b40a25-843a-4050-b4a2-383f5f0a0dbf"), EigenschaftTyp = BenchmarkingGruppenTyp.EinwohnerGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 5000m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("3fb3a7de-9500-4115-bcba-1f0421692ba4"), EigenschaftTyp = BenchmarkingGruppenTyp.EinwohnerGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 10000m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("d15c9963-d788-466a-b98c-f500ce8e3429"), EigenschaftTyp = BenchmarkingGruppenTyp.EinwohnerGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 50000m
            });

            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("71c88d19-1937-4480-94c5-882255ed0a28"), EigenschaftTyp = BenchmarkingGruppenTyp.MittlereHoehenlageSiedlungsgebieteGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 500m
            });
            session.Save(new BenchmarkingGruppenConfiguration {
                Id = new Guid("3135d9f7-9900-4776-83cc-812f30f926d2"), EigenschaftTyp = BenchmarkingGruppenTyp.MittlereHoehenlageSiedlungsgebieteGroesse.ToDataBaseEigenschaftTyp(), Grenzwert = 800m
            });

            //Lookups
            var belastungskategorieIA = new Belastungskategorie {
                Id = new Guid("178b3184-9d6d-4f41-acc0-c0cdaafedd30"), Typ = "IA", Reihenfolge = 1, DefaultBreiteFahrbahn = 4.5m, DefaultBreiteTrottoirRechts = 1.5m, DefaultBreiteTrottoirLinks = 1.5m, ColorCode = "#b7e9b1", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung }
            };
            var belastungskategorieIB = new Belastungskategorie {
                Id = new Guid("1c04104f-59c4-4b77-8863-d0ebf4b89374"), Typ = "IB", Reihenfolge = 2, DefaultBreiteFahrbahn = 5.5m, DefaultBreiteTrottoirRechts = 1.5m, DefaultBreiteTrottoirLinks = 1.5m, ColorCode = "#90d188", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung }
            };
            var belastungskategorieIC = new Belastungskategorie {
                Id = new Guid("514c5d7e-204d-4bf5-8f25-0bd35b928f1b"), Typ = "IC", Reihenfolge = 3, DefaultBreiteFahrbahn = 5.75m, DefaultBreiteTrottoirRechts = 1.5m, DefaultBreiteTrottoirLinks = 1.5m, ColorCode = "#60ab57", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung }
            };
            var belastungskategorieII = new Belastungskategorie {
                Id = new Guid("e73f807c-5986-4c41-9dc0-b077ccff9423"), Typ = "II", Reihenfolge = 4, DefaultBreiteFahrbahn = 7, DefaultBreiteTrottoirRechts = 2.0m, DefaultBreiteTrottoirLinks = 2.0m, ColorCode = "#38aabb", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung }
            };
            var belastungskategorieIII = new Belastungskategorie {
                Id = new Guid("fe685f5c-5380-46be-a3a8-4ae0a711110b"), Typ = "III", Reihenfolge = 5, DefaultBreiteFahrbahn = 7, DefaultBreiteTrottoirRechts = 2.5m, DefaultBreiteTrottoirLinks = 2.5m, ColorCode = "#3882bb", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung }
            };
            var belastungskategorieIV = new Belastungskategorie {
                Id = new Guid("c4400520-a2e0-4479-9814-2dcdb70e3bd1"), Typ = "IV", Reihenfolge = 6, DefaultBreiteFahrbahn = 14, DefaultBreiteTrottoirRechts = 2.5m, DefaultBreiteTrottoirLinks = 2.5m, ColorCode = "#194e95", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung }
            };
            var belastungskategoriePflaesterung = new Belastungskategorie {
                Id = new Guid("685ac75a-9906-4b48-9fa8-dceaf6e9d0d6"), Typ = "Pflaesterung", Reihenfolge = 7, DefaultBreiteFahrbahn = 4.5m, DefaultBreiteTrottoirRechts = 1.5m, DefaultBreiteTrottoirLinks = 1.5m, ColorCode = "#EEDFCC", AllowedBelagList = { BelagsTyp.Pflaesterung }
            };
            var belastungskategorieChaussierung = new Belastungskategorie {
                Id = new Guid("e7ffd19b-e82e-4cfd-8275-42ce74f21c3b"), Typ = "Chaussierung", Reihenfolge = 8, DefaultBreiteFahrbahn = 2.5m, DefaultBreiteTrottoirRechts = null, DefaultBreiteTrottoirLinks = null, ColorCode = "#CDC0B0", AllowedBelagList = { BelagsTyp.Chaussierung }
            };
            var belastungskategorieBenutzerdefiniert1 = new Belastungskategorie {
                Id = new Guid("062faaa1-90ba-4a5e-845f-fda9916bdb0a"), Typ = "Benutzerdefiniert1", Reihenfolge = 9, DefaultBreiteFahrbahn = null, DefaultBreiteTrottoirRechts = null, DefaultBreiteTrottoirLinks = null, ColorCode = "#8B8378", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung, BelagsTyp.Pflaesterung }
            };
            var belastungskategorieBenutzerdefiniert2 = new Belastungskategorie {
                Id = new Guid("40143851-612e-4cac-b828-92fcc01f05e0"), Typ = "Benutzerdefiniert2", Reihenfolge = 10, DefaultBreiteFahrbahn = null, DefaultBreiteTrottoirRechts = null, DefaultBreiteTrottoirLinks = null, ColorCode = "#CDAF95", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung, BelagsTyp.Pflaesterung }
            };
            var belastungskategorieBenutzerdefiniert3 = new Belastungskategorie {
                Id = new Guid("cdab134e-b963-4083-b639-72de5b55542d"), Typ = "Benutzerdefiniert3", Reihenfolge = 11, DefaultBreiteFahrbahn = null, DefaultBreiteTrottoirRechts = null, DefaultBreiteTrottoirLinks = null, ColorCode = "#8B7765", AllowedBelagList = { BelagsTyp.Asphalt, BelagsTyp.Beton, BelagsTyp.Chaussierung, BelagsTyp.Pflaesterung }
            };

            session.Save(belastungskategorieIA);
            session.Save(belastungskategorieIB);
            session.Save(belastungskategorieIC);
            session.Save(belastungskategorieII);
            session.Save(belastungskategorieIII);
            session.Save(belastungskategorieIV);
            session.Save(belastungskategoriePflaesterung);
            session.Save(belastungskategorieChaussierung);
            session.Save(belastungskategorieBenutzerdefiniert1);
            session.Save(belastungskategorieBenutzerdefiniert2);
            session.Save(belastungskategorieBenutzerdefiniert3);

            session.Save(new OeffentlicheVerkehrsmittelKatalog {
                Id = new Guid("6f23a412-b0cd-4b4d-9d83-34552f320b17"), Typ = "Vorhanden"
            });
            session.Save(new OeffentlicheVerkehrsmittelKatalog {
                Id = new Guid("e05e6cf4-87f5-44e7-acbd-0271fa1e9d8b"), Typ = "NichtVorhanden"
            });

            session.Save(new GemeindeKatalog {
                Id = new Guid("5f4cb921-81a7-4e00-b2ff-95604345a54d"), Typ = "Zentrum"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("7f4884c8-094d-4f50-aab0-76bedd653803"), Typ = "Periurbane"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("22507369-b88c-43d8-adfa-7e5f7000fefa"), Typ = "Suburbane"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("2f3a861c-e9e9-4fec-987f-9f131bf3d9eb"), Typ = "Industrielle"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("dc8e5429-28c4-46ec-adf9-68c800c0a5c3"), Typ = "Laendliche"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("db5f3c28-72a8-4246-951c-6e46a550df21"), Typ = "Agrargemischte"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("495885af-16b2-4834-9c9f-a61886495e55"), Typ = "Einkommensstarke"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("ebb5f0a4-15c1-4e69-899d-405b4c923592"), Typ = "Touristisch"
            });
            session.Save(new GemeindeKatalog {
                Id = new Guid("43bdf3a0-37d7-44d5-b89e-90fbb5b5b3b2"), Typ = "Agrarische"
            });


            var massnahmentypKatalog1 = new MassnahmentypKatalog {
                Id = Guid.NewGuid(), Typ = "Oberflaechenverbesserung", KatalogTyp = MassnahmenvorschlagKatalogTyp.Fahrbahn, LegendNumber = 2
            };

            session.Save(massnahmentypKatalog1);
            var massnahmentypKatalog2 = new MassnahmentypKatalog {
                Id = Guid.NewGuid(), Typ = "Deckbelagserneuerung", KatalogTyp = MassnahmenvorschlagKatalogTyp.Fahrbahn, LegendNumber = 5
            };

            session.Save(massnahmentypKatalog2);
            var massnahmentypKatalog3 = new MassnahmentypKatalog {
                Id = Guid.NewGuid(), Typ = "Belagserneuerung", KatalogTyp = MassnahmenvorschlagKatalogTyp.Fahrbahn, LegendNumber = 3
            };

            session.Save(massnahmentypKatalog3);
            var massnahmentypKatalog4 = new MassnahmentypKatalog {
                Id = Guid.NewGuid(), Typ = "ErneuerungOberbau", KatalogTyp = MassnahmenvorschlagKatalogTyp.Fahrbahn, LegendNumber = 1
            };

            session.Save(massnahmentypKatalog4);
            var massnahmentypKatalog5 = new MassnahmentypKatalog {
                Id = Guid.NewGuid(), Typ = "Erneuerung", KatalogTyp = MassnahmenvorschlagKatalogTyp.Trottoir, LegendNumber = 4
            };

            session.Save(massnahmentypKatalog5);

            foreach (var belastungskategorie in session.Query <Belastungskategorie>())
            {
                session.Save(new GlobalMassnahmenvorschlagKatalog {
                    Id = Guid.NewGuid(), Parent = massnahmentypKatalog1, DefaultKosten = 50, Belastungskategorie = belastungskategorie
                });
                session.Save(new GlobalMassnahmenvorschlagKatalog {
                    Id = Guid.NewGuid(), Parent = massnahmentypKatalog2, DefaultKosten = 100, Belastungskategorie = belastungskategorie
                });
                session.Save(new GlobalMassnahmenvorschlagKatalog {
                    Id = Guid.NewGuid(), Parent = massnahmentypKatalog3, DefaultKosten = 200, Belastungskategorie = belastungskategorie
                });
                session.Save(new GlobalMassnahmenvorschlagKatalog {
                    Id = Guid.NewGuid(), Parent = massnahmentypKatalog4, DefaultKosten = 300, Belastungskategorie = belastungskategorie
                });
                session.Save(new GlobalMassnahmenvorschlagKatalog {
                    Id = Guid.NewGuid(), Parent = massnahmentypKatalog5, DefaultKosten = 125, Belastungskategorie = belastungskategorie
                });
            }

            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("ed251feb-1037-42c1-8b52-cb19b8d939b5"), Belastungskategorie = belastungskategorieIA, GesamtflaecheFahrbahn = 430, FlaecheFahrbahn = 380, FlaecheTrottoir = 150, AlterungsbeiwertI = 1.6m, AlterungsbeiwertII = 1.3m
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("e29c34ec-f653-4b46-895f-4267abaaa84c"), Belastungskategorie = belastungskategorieIB, GesamtflaecheFahrbahn = 400, FlaecheFahrbahn = 320, FlaecheTrottoir = 150, AlterungsbeiwertI = 1.6m, AlterungsbeiwertII = 1.3m
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("41ce71e5-3370-4919-8ea6-82bcb0927b7c"), Belastungskategorie = belastungskategorieIC, GesamtflaecheFahrbahn = 140, FlaecheFahrbahn = 140, FlaecheTrottoir = 150, AlterungsbeiwertI = 1.4m, AlterungsbeiwertII = 0.9m
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("8d42420b-923b-4ef7-b346-f69fb7d3700b"), Belastungskategorie = belastungskategorieII, GesamtflaecheFahrbahn = 380, FlaecheFahrbahn = 310, FlaecheTrottoir = 125, AlterungsbeiwertI = 1.8m, AlterungsbeiwertII = 1.4m
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("c2ec0420-7cdd-4202-a0da-8d6f3afebf5e"), Belastungskategorie = belastungskategorieIII, GesamtflaecheFahrbahn = 430, FlaecheFahrbahn = 340, FlaecheTrottoir = 125, AlterungsbeiwertI = 2.2m, AlterungsbeiwertII = 1.9m
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("3afac0cd-126a-4cc2-9abd-8acbbd20fe37"), Belastungskategorie = belastungskategorieIV, GesamtflaecheFahrbahn = 340, FlaecheFahrbahn = 300, FlaecheTrottoir = 115, AlterungsbeiwertI = 2.6m, AlterungsbeiwertII = 2.1m
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("44d60c35-ca9c-4861-82ac-887b13b4f7ff"), Belastungskategorie = belastungskategoriePflaesterung, GesamtflaecheFahrbahn = 0, FlaecheFahrbahn = 0, FlaecheTrottoir = 0, AlterungsbeiwertI = 0, AlterungsbeiwertII = 0
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("43c8347e-0209-4351-86d5-8efb62c55de8"), Belastungskategorie = belastungskategorieChaussierung, GesamtflaecheFahrbahn = 0, FlaecheFahrbahn = 0, FlaecheTrottoir = 0, AlterungsbeiwertI = 0, AlterungsbeiwertII = 0
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("033964e7-4e54-404e-a5c5-30f90f9016e1"), Belastungskategorie = belastungskategorieBenutzerdefiniert1, GesamtflaecheFahrbahn = 0, FlaecheFahrbahn = 0, FlaecheTrottoir = 0, AlterungsbeiwertI = 0, AlterungsbeiwertII = 0
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("e8675b61-3ce5-4528-9c7f-faf004643bd5"), Belastungskategorie = belastungskategorieBenutzerdefiniert2, GesamtflaecheFahrbahn = 0, FlaecheFahrbahn = 0, FlaecheTrottoir = 0, AlterungsbeiwertI = 0, AlterungsbeiwertII = 0
            });
            session.Save(new GlobalWiederbeschaffungswertKatalog {
                Id = new Guid("f8a4e4cd-b4e8-4b0e-9696-4a1d56a7dc13"), Belastungskategorie = belastungskategorieBenutzerdefiniert3, GesamtflaecheFahrbahn = 0, FlaecheFahrbahn = 0, FlaecheTrottoir = 0, AlterungsbeiwertI = 0, AlterungsbeiwertII = 0
            });

            AddScriptLogEntries(session);
        }