コード例 #1
0
ファイル: FormViewModel.cs プロジェクト: nemesv/ASTRA.EMSG
        private void MapServiceOnZustandsabschnittSelected(object sender, SelectZustandsabschnittDataTransferEventArgs dataTransferEventArgs)
        {
            var zustandsabschnittGisdto = dtoService.GetDTOByID <ZustandsabschnittGISDTO>(dataTransferEventArgs.Id);
            var strassenabschnittGisdto = dtoService.Get <StrassenabschnittGISDTO>().Single(s => s.Id == zustandsabschnittGisdto.StrassenabschnittGIS);

            ZustandsabschnittViewModel = new ZustandsabschnittViewModel(zustandsabschnittGisdto, strassenabschnittGisdto, dtoService, windowService, schadenMetadatenService, formService, messageBoxService, geoJsonService);
            IsVisible = true;
        }
コード例 #2
0
        public IDTOGeometryHolder GenerateModelFromGeoJsonString(IReferenzGruppeDTOHolder model, string geoJSONString)
        {
            List <FeatureWithID> childs = GeoJSONReader.ReadFeatureWithID(new StringReader(geoJSONString)).Attributes[geoJSONAttribute_childs] as List <FeatureWithID>;
            ReferenzGruppeDTO    referenzGruppeModel = new ReferenzGruppeDTO();

            foreach (FeatureWithID child in childs)
            {
                AchsenReferenzDTO newAchsenref = new AchsenReferenzDTO();
                newAchsenref.AchsenSegmentDTO = dtoService.GetDTOByID <AchsenSegmentDTO>(Guid.Parse(child.Attributes[geoJSONAttribute_AchsenSegmentId].ToString()));
                newAchsenref.Shape            = child.Geometry;
                newAchsenref.Shape.SRID       = GisConstants.SRID;

                referenzGruppeModel.AddAchsenReferenz(newAchsenref);
            }


            model.Shape             = GeoJSONReader.ReadFeatureWithID(new StringReader(geoJSONString)).Geometry;
            model.Shape.SRID        = GisConstants.SRID;
            model.ReferenzGruppeDTO = referenzGruppeModel;
            return(model);
        }
コード例 #3
0
        private void Load(ZustandsabschnittGISDTO za)
        {
            var strassenabschnitt = dtoService.GetDTOByID <StrassenabschnittGISDTO>(za.StrassenabschnittGIS);
            var massnahmenvorschlagKatalogDtos = dtoService
                                                 .Get <MassnahmenvorschlagKatalogDTO>()
                                                 .Where(mvk => mvk.KatalogTyp == MassnahmenvorschlagKatalogTyp.Trottoir && mvk.Belastungskategorie == strassenabschnitt.Belastungskategorie);

            MassnahmenvorschlagList = new List <NameValueItemViewModel <Guid?> > {
                new NameValueItemViewModel <Guid?>(string.Empty, null)
            }
            .Concat(massnahmenvorschlagKatalogDtos
                    .Select(mvk => new NameValueItemViewModel <Guid?>(MobileLocalization.GetLocalizedMassnahmenvorschlag(mvk.Typ), mvk.Id)))
            .ToList();

            if (string.IsNullOrEmpty(za.BezeichnungVon) && string.IsNullOrEmpty(za.BezeichnungBis))
            {
                WindowTitle = string.Format(MobileLocalization.ZustandTrottoirShortWindowTitle, strassenabschnittGisdto.Strassenname);
            }
            else
            {
                WindowTitle = string.Format(MobileLocalization.ZustandTrottoirtWindowTitle, strassenabschnittGisdto.Strassenname, za.BezeichnungVon, za.BezeichnungBis);
            }

            HasTrottoirBeideSeiten = strassenabschnittGisdto.Trottoir == TrottoirTyp.BeideSeiten;

            HasTrottoirLinks = strassenabschnittGisdto.Trottoir == TrottoirTyp.Links ||
                               strassenabschnittGisdto.Trottoir == TrottoirTyp.BeideSeiten;

            HasTrottoirRechts = strassenabschnittGisdto.Trottoir == TrottoirTyp.Rechts ||
                                strassenabschnittGisdto.Trottoir == TrottoirTyp.BeideSeiten;

            ZustandsindexTrottoirLinks  = za.ZustandsindexTrottoirLinks;
            ZustandsindexTrottoirRechts = za.ZustandsindexTrottoirRechts;

            DringlichkeitTrottoirLinks  = za.MassnahmenvorschlagLinks == null ? DringlichkeitTyp.Unbekannt : za.MassnahmenvorschlagLinks.Dringlichkeit;
            DringlichkeitTrottoirRechts = za.MassnahmenvorschlagRechts == null ? DringlichkeitTyp.Unbekannt : za.MassnahmenvorschlagRechts.Dringlichkeit;

            MassnahmenvorschlagTrottoirLinks  = za.MassnahmenvorschlagLinks == null ? null : za.MassnahmenvorschlagLinks.Typ;
            MassnahmenvorschlagTrottoirRechts = za.MassnahmenvorschlagRechts == null ? null : za.MassnahmenvorschlagRechts.Typ;
        }
コード例 #4
0
        private void UpdateKosten()
        {
            if (Massnahmenvorschlag.HasValue)
            {
                var massnahmenvorschlagKatalogDto = dtoService.GetDTOByID <MassnahmenvorschlagKatalogDTO>(Massnahmenvorschlag.Value);
                Kosten = massnahmenvorschlagKatalogDto.DefaultKosten;

                Gesamtkosten = Math.Round((zustandsabschnittGisDto.Laenge ?? 0) * (strassenabschnittGisdto.BreiteFahrbahn ?? 0) * (Kosten ?? 0), 2);
            }
            else
            {
                Kosten       = null;
                Gesamtkosten = null;
            }
        }
コード例 #5
0
 public void Save()
 {
     if (IsValid)
     {
         zustandsabschnittGisdto.Laenge                = Laenge;
         zustandsabschnittGisdto.Aufnahmedatum         = Aufnahmedatum;
         zustandsabschnittGisdto.Aufnahmeteam          = Aufnahmeteam;
         zustandsabschnittGisdto.Abschnittsnummer      = Abschnittsnummer;
         zustandsabschnittGisdto.Wetter                = Wetter;
         zustandsabschnittGisdto.Bemerkung             = Bemerkung;
         zustandsabschnittGisdto.FlaecheFahrbahn       = FlaecheFahrbahn;
         zustandsabschnittGisdto.FlaceheTrottoirLinks  = FlaecheTrottoirLinks;
         zustandsabschnittGisdto.FlaceheTrottoirRechts = FlaecheTrottoirRechts;
         var strab = dtoService.GetDTOByID <StrassenabschnittGISDTO>(zustandsabschnittGisdto.StrassenabschnittGIS);
         if (!strab.ZustandsabschnittenId.Any(s => s.Equals(zustandsabschnittGisdto.Id)))
         {
             strab.ZustandsabschnittenId.Add(zustandsabschnittGisdto.Id);
         }
         dtoService.CreateOrReplaceDTO(zustandsabschnittGisdto);
         dtoService.CreateOrReplaceDTO(strab);
     }
 }