protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); this.DataContext = _edit = e.Parameter as NacharbeitungsErgebnis; SpielerStatusCombo.SelectedItem = _edit.SpielerStatus; }
public async Task <bool> SaveNachbereitungAsync(NacharbeitungsErgebnis ergebnis) { var client = GetClient(_apiKey); try { var result = await client.PostAsJsonAsync("nachbereitung", ergebnis).ConfigureAwait(false); if (result.IsSuccessStatusCode) { return(true); } else { return(false); } } catch (Exception ex) { } return(false); }
public async Task <StatusCodeResult> Post([FromBody] NacharbeitungsErgebnis value) { var existing = await _store.GetAsync <Auftrittstermin>(value.Id); if (existing == null) { return(BadRequest()); } if (!existing.NachbereitetVon.Contains(value.SpielerId)) { existing.NachbereitetVon.Add(value.SpielerId); } if (value.GefahreneKilometer > 0) { foreach (var auslage in existing.Auslagen) { if (auslage.SpielerId == value.SpielerId && auslage.GefahreneKilometer > 0) { existing.Auslagen.Remove(auslage); break; } } existing.Auslagen.Add(new Auslagen() { GefahreneKilometer = value.GefahreneKilometer, SpielerId = value.SpielerId }); } existing.Abwesend.Remove(value.SpielerId); existing.Helfer.Remove(value.SpielerId); existing.Moderator.Remove(value.SpielerId); existing.Spieler.Remove(value.SpielerId); existing.Vorgemerkt.Remove(value.SpielerId); switch (value.SpielerStatus) { case Contracts.Interfaces.SpielerStatus.Abwesend: existing.Abwesend.Add(value.SpielerId); break; case Contracts.Interfaces.SpielerStatus.Helfer: existing.Helfer.Add(value.SpielerId); break; case Contracts.Interfaces.SpielerStatus.Moderator: existing.Moderator.Add(value.SpielerId); break; case Contracts.Interfaces.SpielerStatus.Spieler: existing.Spieler.Add(value.SpielerId); break; case Contracts.Interfaces.SpielerStatus.Vorgemerkt: existing.Vorgemerkt.Add(value.SpielerId); break; default: return(BadRequest()); } var success = await _store.SaveAsync(existing); if (!success) { return(BadRequest()); } else { return(Ok()); } }