private SchadendetailDTO CreateSchadendetailDto(DetailItemViewModel detailItem)
 {
     return(new SchadendetailDTO
     {
         SchadenausmassTyp = detailItem.SchadenausmassTyp,
         SchadendetailTyp = detailItem.SchadendetailTyp,
         SchadenschwereTyp = detailItem.SchadenschwereTyp,
         ZustandsabschnittId = zustandsabschnittGisdto.Id
     });
 }
        public DetailGroupItemViewModel(SchadengruppeMetadaten schadengruppeMetadaten, List <SchadendetailDTO> schadendetailDtos)
        {
            DetailItemViewModels = new ObservableCollection <DetailItemViewModel>();

            int rowNumber = 0;

            foreach (var schadendetailMetadaten in schadengruppeMetadaten.Schadendetails)
            {
                var schadendetailDto = schadendetailDtos == null
                                           ? null
                                           : schadendetailDtos
                                       .SingleOrDefault(sd => sd.SchadendetailTyp == schadendetailMetadaten.SchadendetailTyp);

                var detailItemViewModel = new DetailItemViewModel(schadendetailMetadaten, schadendetailDto, rowNumber % 2 != 0);
                DetailItemViewModels.Add(detailItemViewModel);
                detailItemViewModel.PropertyChanged += (sender, args) => Recalculate();
                rowNumber++;
            }

            Gewicht          = schadengruppeMetadaten.Gewicht;
            SchadengruppeTyp = schadengruppeMetadaten.SchadengruppeTyp;

            SchadengruppeBezeichnung = LocalizationLocator.MobileLocalization.GetSchadengruppeBezeichnung(schadengruppeMetadaten.SchadengruppeTyp);
        }