Files
Kansan/KanSan.ViewModel/TaetigkeitEditViewModel.cs
2020-04-13 18:17:07 +02:00

110 lines
2.9 KiB
C#

using KanSan.Base;
using KanSan.Base.Interfaces;
using KanSan.Base.Interfaces.UI;
using KanSan.Base.Models;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
namespace KanSan.ViewModel
{
public class TaetigkeitEditViewModel : PropertyChangedClass, INotifyPropertyChanged, ITaetigkeitEditViewModel
{
IUnitOfWork unitOfWork = new UnitOfWork(new KanSanContext());
Fahrzeug fahrzeug;
string mitarbeiter;
DateTime zeitStempel;
decimal anzahl;
string bemerkung;
Taetigkeiten model;
LeistungsverzeichnisPosition leistungsverzeichnis;
#region getsetters
public Fahrzeug Fahrzeug
{
get => fahrzeug;
set
{
if (fahrzeug == value) return;
fahrzeug = value;
OnPropertyChanged();
}
}
public string Mitarbeiter
{
get => mitarbeiter;
set
{
if (mitarbeiter == value) return;
mitarbeiter = value;
OnPropertyChanged();
}
}
public DateTime ZeitStempel
{
get => zeitStempel;
set
{
if (zeitStempel == value) return;
zeitStempel = value;
OnPropertyChanged();
}
}
public bool Erledigt => !zeitStempel.Equals(DateTime.MinValue);
public decimal Anzahl
{
get => anzahl;
set
{
if (anzahl == value) return;
anzahl = value;
OnPropertyChanged();
}
}
public string Bemerkung
{
get => bemerkung;
set
{
if (bemerkung == value) return;
bemerkung = value;
OnPropertyChanged();
}
}
public LeistungsverzeichnisPosition Leistungsverzeichnis
{
get => leistungsverzeichnis;
set
{
if (leistungsverzeichnis == value) return;
leistungsverzeichnis = value;
OnPropertyChanged();
}
}
#endregion
public TaetigkeitEditViewModel(Taetigkeiten taetigkeiten)
{
model = taetigkeiten;
mitarbeiter = model.Mitarbeiter;
anzahl = model.Anzahl;
zeitStempel = model.ZeitStempel;
bemerkung = model.Bemerkung;
fahrzeug = model.Fahrzeug;
}
public void Speichern()
{
model.Mitarbeiter = mitarbeiter;
model.Anzahl = anzahl;
model.ZeitStempel = zeitStempel;
model.Bemerkung = bemerkung;
model.Fahrzeug = fahrzeug;
unitOfWork.TaetigkeitenRepository.Update(model);
unitOfWork.Commit();
}
}
}