Esempio n. 1
0
        public async Task <IActionResult> Update(string id, int page = 1, int sort = 1, bool ascending = true)
        {
            //za različite mogućnosti ažuriranja pogledati
            //attach, update, samo id, ...
            //https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/crud#update-the-edit-page

            try
            {
                Skladište skladište = await ctx.Skladište.FindAsync(id);

                if (skladište == null)
                {
                    return(NotFound("Neispravna naziv referentnog tipa: " + id));
                }

                if (await TryUpdateModelAsync <Skladište>(skladište, "",
                                                          s => s.Naziv
                                                          ))
                {
                    ViewBag.Page      = page;
                    ViewBag.Sort      = sort;
                    ViewBag.Ascending = ascending;
                    try
                    {
                        await ctx.SaveChangesAsync();

                        TempData[Constants.Message]       = "Skladiste ažurirana.";
                        TempData[Constants.ErrorOccurred] = false;
                        return(RedirectToAction(nameof(Index), new { page, sort, ascending }));
                    }
                    catch (Exception exc)
                    {
                        ModelState.AddModelError(string.Empty, exc.CompleteExceptionMessage());
                        return(View(skladište));
                    }
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "Podatke o skladistu nije moguće povezati s forme");
                    return(View(skladište));
                }
            }
            catch (Exception exc)
            {
                TempData[Constants.Message]       = exc.CompleteExceptionMessage();
                TempData[Constants.ErrorOccurred] = true;
                return(RedirectToAction(nameof(Edit), id));
            }
        }
Esempio n. 2
0
        public async Task <IActionResult> Update(int Id, int page = 1, int sort = 1, bool ascending = true)
        {
            try{
                KategorijaPoslova kategorijaPoslova = await ctx.KategorijaPoslova.FindAsync(Id);

                if (kategorijaPoslova == null)
                {
                    return(NotFound($"Ne postoji kategorija posla s oznakom: " + Id));
                }
                ViewBag.Page      = page;
                ViewBag.Sort      = sort;
                ViewBag.Ascending = ascending;
                bool ok = await TryUpdateModelAsync <KategorijaPoslova>(kategorijaPoslova, "", kp => kp.Naziv);

                if (ok)
                {
                    try{
                        await ctx.SaveChangesAsync();

                        TempData[Constants.Message]       = $"Kategorija posla  {kategorijaPoslova.Naziv} ažurirana.";
                        TempData[Constants.ErrorOccurred] = false;
                        return(RedirectToAction(nameof(Index), new { page = page, sort = sort, ascending = ascending }));
                    }
                    catch (Exception exc) {
                        ModelState.AddModelError(string.Empty, exc.CompleteExceptionMessage());
                        return(View(kategorijaPoslova));
                    }
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "Podatke o kategorijama poslova nije moguce povezati");
                    return(View(kategorijaPoslova));
                }
            }
            catch (Exception exc) {
                TempData[Constants.Message]       = exc.CompleteExceptionMessage();
                TempData[Constants.ErrorOccurred] = true;
                return(RedirectToAction(nameof(Index), new { Id, page = page, sort = sort, ascending = ascending }));
            }
        }
Esempio n. 3
0
        public async Task <IActionResult> Update(int Id, int page = 1, int sort = 1, bool ascending = true)
        {
            try{
                Certifikati certifikati = await ctx.Certifikati.FindAsync(Id);

                if (certifikati == null)
                {
                    return(NotFound($"Ne postoji država s oznakom: " + Id));
                }
                ViewBag.Page      = page;
                ViewBag.Sort      = sort;
                ViewBag.Ascending = ascending;
                bool ok = await TryUpdateModelAsync <Certifikati>(certifikati, "", c => c.Naziv, c => c.Opis);

                if (ok)
                {
                    try{
                        await ctx.SaveChangesAsync();

                        TempData[Constants.Message]       = $"Certifikat {certifikati.Naziv} ažuriran.";
                        TempData[Constants.ErrorOccurred] = false;
                        return(RedirectToAction(nameof(Index), new { page = page, sort = sort, ascending = ascending }));
                    }
                    catch (Exception exc) {
                        ModelState.AddModelError(string.Empty, exc.CompleteExceptionMessage());
                        return(View(certifikati));
                    }
                }
                else
                {
                    ModelState.AddModelError(string.Empty, "Podatke o certifikatima nije moguce povezati");
                    return(View(certifikati));
                }
            }
            catch (Exception exc) {
                TempData[Constants.Message]       = exc.CompleteExceptionMessage();
                TempData[Constants.ErrorOccurred] = true;
                return(RedirectToAction(nameof(Index), new { Id, page = page, sort = sort, ascending = ascending }));
            }
        }