public async Task <JsonResult> KreirajSastojak( [HttpTrigger(AuthorizationLevel.Function, "POST", Route = "v1/recepti/{idRecepta}/sastojci")][FromBody] SastojakDTO sastojakDTO, [FromRoute] string idRecepta) { _dnevnik.LogInformation("KreirajSastojak funkcija je primila zahtev. Id: " + idRecepta); var odgovor = new JsonResult(null); SastojakDTO kreiraniSastojakDTO = null; try { kreiraniSastojakDTO = await _receptiServis.KreirajSastojak(idRecepta, sastojakDTO); odgovor.StatusCode = StatusCodes.Status201Created; odgovor.Value = kreiraniSastojakDTO; } catch (ReceptiAPIIzuzetak rai) { odgovor.StatusCode = rai.HttpStatusKod; odgovor.Value = new GreskaDTO { PorukaGreske = rai.Poruka }; } catch (Exception i) { _dnevnik.LogError("Neobradjen izuzetak u funkciji KreirajSastojak.", i); odgovor.StatusCode = StatusCodes.Status500InternalServerError; odgovor.Value = new GreskaDTO { PorukaGreske = KonstantneVrednosti.GreskaNaServerskojStrani }; } return(odgovor); }
public async Task <SastojakDTO> KreirajSastojak(string idRecepta, SastojakDTO sastojakDTO) { Recept recept = await _receptiRepozitorijum.PronadjiJedan(idRecepta); Sastojak sastojak = _maper.Map <Sastojak>(sastojakDTO); sastojak.Id = Guid.NewGuid().ToString(); sastojak.DatumKreiranja = DateTime.UtcNow; sastojak.DatumAzuriranja = DateTime.UtcNow; sastojak.IdRecepta = idRecepta; sastojak = await _sastojciRepozitorijum.Kreiraj(sastojak); return(_maper.Map <SastojakDTO>(sastojak)); }
public async Task <SastojakDTO> AzurirajSastojak(string idRecepta, string idNamirnice, SastojakDTO sastojakDTO) { Recept recept = await _receptiRepozitorijum.PronadjiJedan(idRecepta); List <Sastojak> sastojci = await _sastojciRepozitorijum.PronadjiSve("idNamirnice", idNamirnice, false, 1, 1); Sastojak sastojak = sastojci.FirstOrDefault(); sastojak = _maper.Map <SastojakDTO, Sastojak>(sastojakDTO, sastojak); sastojak.DatumAzuriranja = DateTime.UtcNow; sastojak = await _sastojciRepozitorijum.Azuriraj(sastojak); return(_maper.Map <SastojakDTO>(sastojak)); }