public async Task <EditValutaDto> AddValuta(PostValutaDto postValutaDto) { var httpClient = _httpClientFactory.CreateClient("valute"); var url = $"09a14a921f6de3a3c311a083/pair/HRK/{postValutaDto.Naziv}"; var response = await httpClient.GetAsync(url); var responseStream = await response.Content.ReadAsStreamAsync(); var responseObject = await JsonSerializer.DeserializeAsync <KonverzijaValute>(responseStream); var korisnik = await _userManager.FindByNameAsync(postValutaDto.UserName); var valuta = new Valuta() { Naziv = postValutaDto.Naziv, AktivnoOd = postValutaDto.AktivnoOd, AktivnoDo = postValutaDto.AktivnoDo, Tecaj = responseObject.conversion_rate, SlikaValute = postValutaDto.SlikaValute, KorisnikId = korisnik.Id }; var role = _context.UserRoles .Where(u => u.UserId == korisnik.Id) .FirstOrDefault(); if (role.RoleId != 2) { throw new Exception("Izabrani korisnik nije u funkciji moderatora i ne može biti zadužen za valutu."); } _context.Add(valuta); await _context.SaveChangesAsync(); return(_mapper.Map <EditValutaDto>(valuta)); }
public async Task <EditValutaDto> AddValuta(PostValutaDto postValutaDto) { return(await _service.AddValuta(postValutaDto)); }