Files
DaSaSo/DaSaSo.ViewModel/SewerDamageEditViewModel.cs
2021-10-01 12:20:24 +02:00

79 lines
2.4 KiB
C#

using DaSaSo.Domain.Model;
using DaSaSo.ViewModel.Controls;
using DaSaSo.ViewModel.Interface;
using Microsoft.Toolkit.Mvvm.Input;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DaSaSo.ViewModel
{
public class SewerDamageEditViewModel : BaseViewModel
{
private SewerDamage? _damage;
public SewerDamageControllViewModel damageControllViewModel { get; set; }
public SewerPreperationControllViewModel preperationControllViewModel { get; set; }
public IRelayCommand Berechne { get; set; }
private string? _entfernung;
public string Entfernung
{
get => _entfernung;
set
{
_entfernung = value;
OnPropertyChanged();
}
}
public SewerDamage? Damage
{
get => _damage;
set
{
_damage = value;
OnPropertyChanged();
}
}
public SewerDamageEditViewModel(IActualProject actualProject)
{
if (actualProject.AktuellSewerDamage == null) throw new NullReferenceException(nameof(actualProject.AktuellSewerDamage));
Damage = actualProject.AktuellSewerDamage;
damageControllViewModel = new SewerDamageControllViewModel(Damage.DamageType);
preperationControllViewModel = new SewerPreperationControllViewModel(Damage.PreparationType);
Entfernung = Damage.Distance.ToString();
/*Berechne = new RelayCommand(() =>
{
//Debugger.Break();
Damage.DamageType = damageControllViewModel.CalculateDamageFlags();
Damage.PreparationType = preperationControllViewModel.CalculatePreparationFlags();
});
*/
}
~SewerDamageEditViewModel()
{
//Debugger.Break();
}
public override void Dispose()
{
// Alle Werte Speichern, form wurde geändert (Noch nicht in DB!)
Damage.DamageType = damageControllViewModel.CalculateDamageFlags();
Damage.PreparationType = preperationControllViewModel.CalculatePreparationFlags();
damageControllViewModel.Dispose();
preperationControllViewModel.Dispose();
base.Dispose();
}
}
}