public async Task <IActionResult> PutPodrucjeProjekt([FromRoute] int id, [FromBody] PodrucjeProjekt podrucjeProjekt) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != podrucjeProjekt.Id) { return(BadRequest()); } _context.Entry(podrucjeProjekt).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!PodrucjeProjektExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> PostPodrucjeProjekt([FromBody] PodrucjeProjekt podrucjeProjekt) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.PodrucjeProjekt.Add(podrucjeProjekt); await _context.SaveChangesAsync(); return(CreatedAtAction("GetPodrucjeProjekt", new { id = podrucjeProjekt.Id }, podrucjeProjekt)); }
public async Task <IActionResult> PostProjekt([FromBody] ProjektDTO projektDTO) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } DodajDokumente(projektDTO.Dokumenti); Projekt projekt = new Projekt() { IdProjekta = projektDTO.IdProjekta, Naziv = projektDTO.Naziv, Opis = projektDTO.Opis, KljucneRijeci = projektDTO.KljucneRijeci, DatumPocetka = projektDTO.DatumPocetka, DatumZavrsetka = projektDTO.DatumZavrsetka, IdFaze = projektDTO.IdFaze, IdStacka = projektDTO.IdStacka }; projekt.IdStackaNavigation = _context.TehnoloskiStack.FirstOrDefault(x => x.IdStacka == projekt.IdStacka); projekt.IdFazeNavigation = _context.Faza.FirstOrDefault(x => x.IdFaze == projekt.IdFaze); foreach (var i in projektDTO.Tehnologije) { TehnologijaProjekt x = new TehnologijaProjekt() { IdProjekta = projekt.IdProjekta, IdTehnologije = i.IdTehnologije, IdProjektaNavigation = projekt, }; x.IdTehnologijeNavigation = _context.Tehnologija.FirstOrDefault(a => a.IdTehnologije == i.IdTehnologije); _context.TehnologijaProjekt.Add(x); } foreach (var i in projektDTO.Podrucja) { PodrucjeProjekt x = new PodrucjeProjekt() { IdProjekta = projekt.IdProjekta, IdPodrucja = i.IdPodrucja, IdProjektaNavigation = projekt, }; x.IdPodrucjaNavigation = _context.PoslovnoPodrucje.FirstOrDefault(a => a.IdPodrucja == i.IdPodrucja); _context.PodrucjeProjekt.Add(x); } int n = projektDTO.Dokumenti.Count; List <Dokument> dokumenti = _context.Dokument.OrderByDescending(x => x.IdDokumenta).Take(n).ToList(); foreach (var i in dokumenti) { DokumentProjekt x = new DokumentProjekt() { IdProjekta = projekt.IdProjekta, IdDokumenta = i.IdDokumenta, IdProjektaNavigation = projekt, }; x.IdDokumentaNavigation = _context.Dokument.FirstOrDefault(a => a.IdDokumenta == i.IdDokumenta); _context.DokumentProjekt.Add(x); } foreach (var i in projektDTO.Sudionici) { OsobaProjekt x = new OsobaProjekt() { IdProjekta = projekt.IdProjekta, IdOsobe = i.IdOsobe, IdProjektaNavigation = projekt, IdUloge = i.IdUloge }; x.IdOsobeNavigation = _context.Osoba.FirstOrDefault(a => a.IdOsobe == i.IdOsobe); x.IdUlogeNavigation = _context.Uloga.FirstOrDefault(a => a.IdUloge == i.IdUloge); _context.OsobaProjekt.Add(x); } _context.Projekt.Add(projekt); await _context.SaveChangesAsync(); return(CreatedAtAction("GetProjekt", new { id = projekt.IdProjekta }, projekt)); }