private async Task Prihlasit(OsobaDto neprihlaseny) { // pokud kliknu na přihlášení a následně na změnu termínu, dojde // - ke spuštění volání API pro přihlášení // - k nastavení State.Prihlaseni na null // - a k spuštění volní API pro načtení detailů termínu. // Pokud dojde k dokončení přihlášení před načtením termínu, je již State.Prihlaseni a State.Neprihlaseni null. // Pokud dokde k dokončení přihlášení po načtení termíu, jsou ve State.Prihlaseni a State.Neprihlaseni hodnoty nového termínu. // Takže nemůžeme volat Add/Remove nad State.Prihlaseni. Potřebujeme je volat nad kolekcemi platnými před spuštěním přihlašování. var prihlaseni = State.Prihlaseni; var neprihlaseni = State.Neprihlaseni; await Progress.ExecuteInProgressAsync(async() => await TerminWebApiClient.PrihlasitAsync(State.AktualniTerminId.Value, neprihlaseny.Id)); if (!prihlaseni.Contains(neprihlaseny)) { prihlaseni.Add(neprihlaseny); } neprihlaseni.Remove(neprihlaseny); Toaster.Success($"{neprihlaseny.PrijmeniJmeno} přihlášen(a)."); await LocalStorageService.SetItemAsync("PrefferedOsobaId", neprihlaseny.Id); PrefferedOsobaId = neprihlaseny.Id; }
public IActionResult UpdateOsoba(OsobaDto input, long id) { using (var transaction = _context.Database.BeginTransaction()) { try { var osoba = _context.Osobas.Find(id); if (osoba != null) { osoba.Ime = input.Ime; osoba.Prezime = input.Prezime; osoba.KancelarijaId = input.KancelarijaId; _context.SaveChanges(); transaction.Commit(); return(Ok($"Osoba sa id: {id} je modifikovana.")); } } catch (Exception e) { return(NoContent()); } } return(BadRequest()); }
public int DodajEntitet(OsobaDto entitet) { var osoba = ObjectMapper.Map <Osoba>(entitet); int id = _repository.InsertAndGetId(osoba); return(id); }
private async Task Odhlasit(OsobaDto prihlaseny) { var prihlaseni = State.Prihlaseni; var neprihlaseni = State.Neprihlaseni; await Progress.ExecuteInProgressAsync(async() => await TerminWebApiClient.OdhlasitAsync(State.AktualniTerminId.Value, prihlaseny.Id)); if (!neprihlaseni.Contains(prihlaseny)) // pokud došlo k doubleclicku, mohl se tam dostat { neprihlaseni.Add(prihlaseny); neprihlaseni.Sort((a, b) => a.PrijmeniJmeno.CompareTo(b.PrijmeniJmeno)); } prihlaseni.Remove(prihlaseny); Toaster.Success($"{prihlaseny.PrijmeniJmeno} odhlášen(a)."); }
public IActionResult NovaOsoba(OsobaDto input) { using (var transaction = _context.Database.BeginTransaction()) { try { if (input != null) { var osoba = new Osoba { Ime = input.Ime, Prezime = input.Prezime, KancelarijaId = input.KancelarijaId }; _context.Osobas.Add(osoba); _context.SaveChanges(); var novaOsoba = _context.Osobas.Last(); var novaOsobaKancelarija = novaOsoba.KancelarijaId; var kancelarijaIme = _context.Kancelarijas.Where(k => k.Id == novaOsobaKancelarija) .FirstOrDefault(); var lista = kancelarijaIme.Osobas; lista.Add(osoba); transaction.Commit(); return(Ok("Nova osoba je kreirana.")); } } catch (Exception e) { return(BadRequest()); } } return(BadRequest()); }
public IActionResult IzmenaInfoOsobe(OsobaDto noviInfo) { _osobaService.IzmeniEntitet(noviInfo); return(RedirectToAction("Index")); }
public IActionResult NovaOsoba(OsobaDto novaOsoba) { _osobaService.DodajEntitet(novaOsoba); return(RedirectToAction("Index")); }
public void IzmeniEntitet(OsobaDto entitet) { _repository.Update(ObjectMapper.Map <Osoba>(entitet)); }