Sanierungsmaßnahmen können hinzugefügt werden

This commit is contained in:
Husky
2020-04-05 16:05:24 +02:00
parent 0dda1a4644
commit a48d28ba22
16 changed files with 1008 additions and 4 deletions

View File

@@ -41,6 +41,7 @@ namespace KanSan.ViewModel.Objekte
newSewer.RohrleitungInBetrieb = InBetrieb;
newSewer.StrasseName = Strasse;
newSewer.ObjektNummer = PunktOben;
unitOfWork.KanaeleRepository.Update(newSewer,false);
unitOfWork.Commit();

View File

@@ -0,0 +1,72 @@
using KanSan.Base;
using KanSan.Base.Enums;
using KanSan.Base.Interfaces;
using KanSan.Base.Interfaces.UI;
using KanSan.Base.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace KanSan.ViewModel
{
public class SanierungskonzeptListViewModel : ISanierungskonzeptListViewModel
{
IUnitOfWork unitOfWork = new UnitOfWork(new KanSanContext());
private bool canAddNewSan = true;
Sanierungskonzept sanKonzept;
private ESanierung sanierung;
private Schaeden schaden;
private List<Taetigkeiten> taetigkeiten = new List<Taetigkeiten>();
public ESanierung Sanierung => sanierung;
public bool CanAddNewSan => canAddNewSan;
public List<Taetigkeiten> Taetigkeiten => taetigkeiten;
public SanierungskonzeptListViewModel(Schaeden schaden)
{
//this.schaden = schaden;
var d = unitOfWork.SchaedenRepository.Get(x => x.GuidNr.Equals(schaden.GuidNr),includeProperties: "Sanierungskonzept").First();
canAddNewSan = (d.Sanierungskonzept == null);
this.schaden = d;
if (!canAddNewSan)
{
sanierung = d.Sanierungskonzept.SanierungsTyp;
sanKonzept = unitOfWork.SanierungskonzeptRepository.Get(x => x.GuidNr.Equals(d.Sanierungskonzept.GuidNr),includeProperties:"Taetigkeiten").FirstOrDefault();
taetigkeiten = sanKonzept.Taetigkeiten;
}
}
public Taetigkeiten NeueTaetigkeit()
{
Guid guid = Guid.NewGuid();
Taetigkeiten taetigkeiten = new Taetigkeiten()
{
Sanierungskonzept = this.sanKonzept,
GuidNr = guid
};
sanKonzept.Taetigkeiten.Add(taetigkeiten);
unitOfWork.SanierungskonzeptRepository.Update(sanKonzept);
unitOfWork.Commit();
return taetigkeiten;
}
public Sanierungskonzept NeueSanierungskonzept()
{
Guid guid = Guid.NewGuid();
Sanierungskonzept san = new Sanierungskonzept()
{
GuidNr = guid,
};
schaden.Sanierungskonzept = san;
unitOfWork.SchaedenRepository.Update(schaden);
unitOfWork.Commit();
return san;
}
}
}

View File

@@ -0,0 +1,109 @@
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;
LeitungsverzeichnisPosition 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 LeitungsverzeichnisPosition 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();
}
}
}