MH: Überprüfung auf Überschneidungen in Abwesenheiten mit farblicher Markierung betroffener Zeilen

This commit is contained in:
Marcel Hirschle
2021-02-23 11:45:37 +01:00
parent 1c9488b698
commit b1b4d9763b

View File

@@ -47,7 +47,10 @@ namespace BeWo.View.Detail
private void AddAbsenceTimes()
{
if(!PruefeAufUeberschneidungen())
var ueberschneidungen = PruefeAufUeberschneidungen();
AbwesenheitenMitUeberschneidungenFaerben(ueberschneidungen);
if (ueberschneidungen.Count == 0)
{
AbsenceTimes?.NewVM.ValidateDates(() =>
{
@@ -61,7 +64,7 @@ namespace BeWo.View.Detail
}
}
private bool PruefeAufUeberschneidungen()
private List<AbsenceTimeVM> PruefeAufUeberschneidungen()
{
bool ueberschneidung = false;
var neu = AbsenceTimes.NewVM;
@@ -111,22 +114,39 @@ namespace BeWo.View.Detail
}
if (ueberschneidung)
{
abwesenheitenMitUeberschneidungen.Add(time);
ueberschneidung = false;
}
}
if(abwesenheitenMitUeberschneidungen.Count > 0)
AbwesenheitenMitUeberschneidungenFaerben(abwesenheitenMitUeberschneidungen);
return ueberschneidung;
return abwesenheitenMitUeberschneidungen;
}
private void AbwesenheitenMitUeberschneidungenFaerben(List<AbsenceTimeVM> abwesenheitenMitUeberschneidungen)
{
string color = ServiceFacade.DoOperationsServiceSync(s => s.GetColorForServiceRecordView2());
string white = "#FFFFFF";
foreach (var vm in AbsenceTimes.VMList)
{
vm.BackgroundColor = white;
}
foreach (var vm in abwesenheitenMitUeberschneidungen)
{
vm.BackgroundColor = color;
}
//foreach (var item in abwesenheitenMitUeberschneidungen)
//{
// foreach (var vm in AbsenceTimes.VMList)
// {
// if (vm.DataContract.AbsenceTimeOid == item.DataContract.AbsenceTimeOid)
// item.BackgroundColor = color;
// else
// item.BackgroundColor = white;
// }
//}
}
private void RemoveAbsenceTime()