public IActionResult AddPrzepis([FromBody] ViewPrzepis vprzepis) { try { return(new JsonResult(_repo.AddPrzepis(vprzepis))); } catch (Exception e) { return(BadRequest(e)); } }
public Przepis AddPrzepis(ViewPrzepis przepis) { foreach (var skladnik in przepis.Skladniki) { var result = _db.Skladnik.Where(x => x.ID == skladnik.ID); if (result.Count() == 0) { throw new Exception("Niektóre składniki nie występują w bazie"); } } foreach (var dieta in przepis.Diety) { var result = _db.Dieta.Where(x => x.ID == dieta.ID); if (result.Count() == 0) { throw new Exception("Niektóre diety nie występują w bazie"); } } foreach (var typDania in przepis.TypDanias) { var result = _db.TypDania.Where(x => x.ID == typDania.ID); if (result.Count() == 0) { throw new Exception("Niektóre typy dań nie występują w bazie"); } } var dbOpis = _db.Opis.Add(przepis.opis); przepis.Opis_ID = dbOpis.Entity.ID; var dbPrzepis = _db.Przepis.Add(przepis).Entity; foreach (var skladnik in przepis.Skladniki) { var skladnikDoPrzepis = new SkladnikDoPrzepis { ID = skladnik.ID, Ilosc = skladnik.Ilosc, Jednostka_ID = skladnik.Jednostka.ID, Przepis_ID = dbPrzepis.ID, Skladnik_ID = skladnik.ID }; _db.SkladnikDoPrzepis.Add(skladnikDoPrzepis); } foreach (var dieta in przepis.Diety) { var przepisDoDiety = new PrzepisDoDieta { Dieta_ID = dieta.ID, Przepis_ID = dbPrzepis.ID }; _db.PrzepisDoDieta.Add(przepisDoDiety); } foreach (var typDania in przepis.TypDanias) { var typDoPrzepisu = new TypDoPrzepis { Przepis_ID = dbPrzepis.ID, Typ_ID = typDania.ID }; } _db.SaveChanges(); return(dbPrzepis); }