public IActionResult DatumSelecteren() { var tijden = HoneyMoonDb.BeschikbareTijden.ToList(); // Key Value Dictionary <DateTime, bool[]> used = new Dictionary <DateTime, bool[]>(); foreach (var afspraak in HoneyMoonDb.Afspraak) { if (!used.ContainsKey(afspraak.AfspraakDatum.Date)) { used[afspraak.AfspraakDatum.Date] = new bool[tijden.Count()]; } // Date Time (boolean) used[afspraak.AfspraakDatum.Date][tijden.IndexOf(afspraak.Tijd_FK)] = true; } List <string> list = new List <string>(); foreach (var item in used) { if (tijden.Count() == item.Value.Where(a => a).Count()) { list.Add(item.Key.Date.ToString("dd-MM-yyyy")); } } AfspraakVM vm = new AfspraakVM(); vm.UitgeschakeldeDatum = list; // Geef de datum terug die geen tijden hebben. return(View(vm)); }
public IActionResult TijdSelecteren(string datGeselecteerdeDatum) { DateTime dt = datGeselecteerdeDatum != null?DateTime.Parse(datGeselecteerdeDatum).Date : DateTime.Now.Date; var tijden = HoneyMoonDb.BeschikbareTijden.ToList(); foreach (var afspraak in HoneyMoonDb.Afspraak) { if (afspraak.AfspraakDatum.Date.CompareTo(dt) == 0) { tijden.Remove(afspraak.Tijd_FK); } } AfspraakVM vm = new AfspraakVM(); vm.beschikbareTijden = tijden; return(View(vm)); }