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); }
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); }
protected override void UpdateEntityFieldsInternal(InspektionsRtStrAbschnitteModel model, InspektionsRtStrAbschnitte entity) { entity.StrassenabschnittGIS = transactionScopeProvider.GetById <StrassenabschnittGIS>(model.StrassenabschnittId); base.UpdateEntityFieldsInternal(model, entity); }