public IActionResult AddImages([FromBody] string[] urls, string ponudabroj, short?stavkabroj) { var pon = _dbContext.ponuda.FirstOrDefault(p => p.broj == ponudabroj); if (pon == null) { return(NotFound()); } else { HttpWebRequest httpWebRequest; short?ponuda_dokument = null; var dokumenti = _dbContext.ponuda_dokument.Where(ps => ps.ponuda_broj == ponudabroj); if (dokumenti != null && dokumenti.Count() > 0) { ponuda_dokument = dokumenti.Max(ps => ps.dokument_broj); } short i = 0; ponuda_dokument = ponuda_dokument == null ? (short)1 : (short)(ponuda_dokument.Value + 1); foreach (var url in urls) { if (dokumenti.FirstOrDefault(d => d.naziv == url) == null) { httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.ContentType = "image/jpeg"; httpWebRequest.Method = "GET"; using (var response = (HttpWebResponse)httpWebRequest.GetResponse()) { using (var stream = response.GetResponseStream()) { var ms = new MemoryStream(); stream.CopyTo(ms); byte[] Value = ms.ToArray(); var dokument = new ponuda_dokument() { stavka_broj = stavkabroj, ponuda_broj = ponudabroj, dokument = Value, naziv = url, opis = response.ContentType, dokument_broj = (short)(ponuda_dokument.Value + i) }; _dbContext.ponuda_dokument.Add(dokument); i++; } } } } _dbContext.SaveChanges(); return(Ok()); } }
public IActionResult UploadDokument(IFormFile blob, string ponudabroj, short?stavkabroj) { string filePath = null; try { filePath = Path.Combine(_configuration["ContentPath"], blob.FileName.Split(".")[0] + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + "." + blob.FileName.Split(".")[1]); var pon = _dbContext.ponuda.Include(p => p.partner).Include(p => p.Korisnik).Include(p => p.stavke).ThenInclude(s => s.artikal).Include(p => p.dokumenti).FirstOrDefault(p => p.broj == ponudabroj); if (pon == null) { return(NotFound()); } else { short?ponuda_dokument = null; var dokumenti = _dbContext.ponuda_dokument.Where(ps => ps.ponuda_broj == ponudabroj); if (dokumenti != null && dokumenti.Count() > 0) { ponuda_dokument = dokumenti.Max(ps => ps.dokument_broj); } ponuda_dokument = ponuda_dokument == null ? (short)1 : (short)(ponuda_dokument.Value + 1); //using (var fileStream = new FileStream(filePath, FileMode.Create)) //{ var ms = new MemoryStream(); blob.OpenReadStream().CopyTo(ms); byte[] Value = ms.ToArray(); var dokument = new ponuda_dokument() { stavka_broj = stavkabroj, ponuda_broj = ponudabroj, dokument = Value, naziv = blob.FileName, opis = blob.ContentType, dokument_broj = ponuda_dokument.Value }; _dbContext.ponuda_dokument.Add(dokument); _dbContext.SaveChanges(); // await blob.CopyToAsync(fileStream); //} return(Ok(dokument)); } } catch (Exception ex) { _logger.LogError(ex, filePath); return(BadRequest()); } }
public static ponuda_dokument WithoutData(this ponuda_dokument dokument) { dokument.dokument = null; return(dokument); }