public async Task <IActionResult> Create(int?id) { Osoba o = null; ZaposlenikVMs.ZaposlenikCreateVM model = null; if (id != null && id != 0) { o = await _db.Osobe.Include(i => i.Zaposlenik).FirstOrDefaultAsync(f => f.OsobaId == id); } if (o == null) { return(NotFound()); } model = new ZaposlenikVMs.ZaposlenikCreateVM() { OsobaId = o.OsobaId, OsobaNaziv = o.Ime + " " + o.Prezime }; if (o.Zaposlenik != null) { model.ZaposlenikVM = new ZaposlenikVMs.ZaposlenikVM() { ZaposlenikId = o.Zaposlenik.ZaposlenikId, BrojLicneKarte = o.Zaposlenik.BrojLicneKarte, BrojRacuna = o.Zaposlenik.BrojRacuna, StepenObrazovanja = o.Zaposlenik.StepenObrazovanja }; } return(PartialView("_Create", model)); }
public IActionResult Create(ZaposlenikVMs.ZaposlenikCreateVM model) { //string name = $"{nameof(model.ZaposlenikVM)}.{nameof(model.ZaposlenikVM.BrojLicneKarte)}"; //ModelState.AddModelError(name, "Error"); ModelState.Remove("ZaposlenikVM.ZaposlenikId"); if (!ModelState.IsValid) { return(PartialView("_Create", model)); } try { string detailsMessage = "Uspješno "; Zaposlenik z = new Zaposlenik() { ZaposlenikId = model.OsobaId, StepenObrazovanja = model.ZaposlenikVM.StepenObrazovanja, BrojLicneKarte = model.ZaposlenikVM.BrojLicneKarte, BrojRacuna = model.ZaposlenikVM.BrojRacuna }; if (model.ZaposlenikVM.ZaposlenikId != 0) { _db.Zaposlenici.Attach(z); _db.Entry(z).State = EntityState.Modified; detailsMessage += "editovana."; } else { _db.Zaposlenici.Add(z); detailsMessage += "promovisana u zaposlenika."; } _db.SaveChanges(); return(RedirectToAction("QuickDetails", "Osoba", new { area = nameof(AdministrativniRadnik), id = z.ZaposlenikId })); } catch (Exception e) { return(BadRequest("Došlo je do greške prilikom snimanja podatka u bazu.; " + e.Message)); } }