コード例 #1
0
        public void UpdateZustandsabschnittTrottoirModel(ZustandsabschnittdetailsTrottoirModel zustandsabschnittdetailsTrottoirModel)
        {
            //TODO: Use refleaction traslator
            ZustandsabschnittBase zustandsabschnittBase = GetZustandsabschnittBase(zustandsabschnittdetailsTrottoirModel.Id);

            zustandsabschnittBase.ZustandsindexTrottoirLinks = zustandsabschnittdetailsTrottoirModel.LinkeTrottoirZustandsindex;

            zustandsabschnittBase.MassnahmenvorschlagTrottoirLinks = zustandsabschnittdetailsTrottoirModel.LinkeTrottoirMassnahmenvorschlagKatalogId == null
                                                       ? null
                                                       : transactionScopeProvider.GetById <MassnahmenvorschlagKatalog>(zustandsabschnittdetailsTrottoirModel.LinkeTrottoirMassnahmenvorschlagKatalogId.Value);
            zustandsabschnittBase.KostenMassnahmenvorschlagTrottoirLinks = zustandsabschnittdetailsTrottoirModel.LinkeTrottoirKosten;
            zustandsabschnittBase.DringlichkeitTrottoirLinks             = zustandsabschnittdetailsTrottoirModel.LinkeTrottoirDringlichkeit;


            zustandsabschnittBase.ZustandsindexTrottoirRechts = zustandsabschnittdetailsTrottoirModel.RechteTrottoirZustandsindex;

            zustandsabschnittBase.MassnahmenvorschlagTrottoirRechts = zustandsabschnittdetailsTrottoirModel.RechteTrottoirMassnahmenvorschlagKatalogId == null
                                                        ? null
                                                        : transactionScopeProvider.GetById <MassnahmenvorschlagKatalog>(zustandsabschnittdetailsTrottoirModel.RechteTrottoirMassnahmenvorschlagKatalogId.Value);
            zustandsabschnittBase.KostenMassnahmenvorschlagTrottoirRechts = zustandsabschnittdetailsTrottoirModel.RechteTrottoirKosten;
            zustandsabschnittBase.DringlichkeitTrottoirRechts             = zustandsabschnittdetailsTrottoirModel.RechteTrottoirDringlichkeit;

            //Update back the Kosten and GesamtKosten calculated field
            zustandsabschnittdetailsTrottoirModel.LinkeTrottoirGesamtKosten  = zustandsabschnittBase.KostenTrottoirLinks;
            zustandsabschnittdetailsTrottoirModel.RechteTrottoirGesamtKosten = zustandsabschnittBase.KostenTrottoirRechts;
            zustandsabschnittdetailsTrottoirModel.LinkeTrottoirKosten        = GetKosten(zustandsabschnittBase.MassnahmenvorschlagTrottoirLinks, zustandsabschnittBase.KostenMassnahmenvorschlagTrottoirLinks);
            zustandsabschnittdetailsTrottoirModel.RechteTrottoirKosten       = GetKosten(zustandsabschnittBase.MassnahmenvorschlagTrottoirRechts, zustandsabschnittBase.KostenMassnahmenvorschlagTrottoirRechts);

            UpdateZustandsabschnittBase(zustandsabschnittBase);
        }
コード例 #2
0
        public void UpdateZustandsabschnittdetails(ZustandsabschnittdetailsModel zustandsabschnittdetailsModel)
        {
            var zustandsabschnittBase = GetZustandsabschnittBase(zustandsabschnittdetailsModel.Id);

            zustandsabschnittBase.Erfassungsmodus = zustandsabschnittdetailsModel.Erfassungsmodus;

            zustandsabschnittBase.MassnahmenvorschlagFahrbahn = zustandsabschnittdetailsModel.MassnahmenvorschlagKatalog == null ? null : transactionScopeProvider.GetById <MassnahmenvorschlagKatalog>(zustandsabschnittdetailsModel.MassnahmenvorschlagKatalog.Value);
            zustandsabschnittBase.DringlichkeitFahrbahn       = zustandsabschnittdetailsModel.Dringlichkeit;

            if (zustandsabschnittBase.MassnahmenvorschlagFahrbahn == null)
            {
                zustandsabschnittBase.KostenMassnahmenvorschlagFahrbahn = null;
            }
            else
            {
                zustandsabschnittBase.KostenMassnahmenvorschlagFahrbahn =
                    zustandsabschnittBase.KostenMassnahmenvorschlagFahrbahn == zustandsabschnittBase.MassnahmenvorschlagFahrbahn.DefaultKosten
                        ? null
                        : zustandsabschnittdetailsModel.Kosten;
            }

            //Update back the Kosten and KostenFahrbahn calculated field
            zustandsabschnittdetailsModel.KostenFahrbahn = zustandsabschnittBase.KostenFahrbahn;
            zustandsabschnittdetailsModel.Kosten         = GetKosten(zustandsabschnittBase.MassnahmenvorschlagFahrbahn, zustandsabschnittBase.Kosten);
            zustandsabschnittdetailsModel.Belag          = zustandsabschnittBase.StrassenabschnittBase.Belag;

            DeleteSchadenData(zustandsabschnittBase);

            switch (zustandsabschnittdetailsModel.Erfassungsmodus)
            {
            case ZustandsErfassungsmodus.Manuel:
                zustandsabschnittBase.Zustandsindex = zustandsabschnittdetailsModel.Zustandsindex.Value;
                break;

            case ZustandsErfassungsmodus.Grob:
                zustandsabschnittBase.Zustandsindex = zustandsabschnittdetailsModel.ZustandsindexCalculated;
                GetSchadengruppen(zustandsabschnittdetailsModel.SchadengruppeModelList).ForEach(zustandsabschnittBase.AddSchadengruppe);
                break;

            case ZustandsErfassungsmodus.Detail:
                zustandsabschnittBase.Zustandsindex = zustandsabschnittdetailsModel.ZustandsindexCalculated;
                CreateSchadendetails(zustandsabschnittdetailsModel.SchadengruppeModelList.SelectMany(sg => sg.SchadendetailModelList)).ForEach(zustandsabschnittBase.AddSchadendetail);
                break;
            }

            UpdateZustandsabschnittBase(zustandsabschnittBase);
        }
コード例 #3
0
 protected override void UpdateEntityFieldsInternal(InspektionsRtStrAbschnitteModel model, InspektionsRtStrAbschnitte entity)
 {
     entity.StrassenabschnittGIS = transactionScopeProvider.GetById <StrassenabschnittGIS>(model.StrassenabschnittId);
     base.UpdateEntityFieldsInternal(model, entity);
 }