Exemplo n.º 1
0
        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;
        }
Exemplo n.º 2
0
        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());
        }
Exemplo n.º 3
0
        public int DodajEntitet(OsobaDto entitet)
        {
            var osoba = ObjectMapper.Map <Osoba>(entitet);
            int id    = _repository.InsertAndGetId(osoba);

            return(id);
        }
Exemplo n.º 4
0
        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).");
        }
Exemplo n.º 5
0
        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());
        }
Exemplo n.º 6
0
 public IActionResult IzmenaInfoOsobe(OsobaDto noviInfo)
 {
     _osobaService.IzmeniEntitet(noviInfo);
     return(RedirectToAction("Index"));
 }
Exemplo n.º 7
0
 public IActionResult NovaOsoba(OsobaDto novaOsoba)
 {
     _osobaService.DodajEntitet(novaOsoba);
     return(RedirectToAction("Index"));
 }
Exemplo n.º 8
0
 public void IzmeniEntitet(OsobaDto entitet)
 {
     _repository.Update(ObjectMapper.Map <Osoba>(entitet));
 }