public IActionResult UpdateServiser([FromBody] ServiserApiModel model, int idServiser) { if (model != null && ModelState.IsValid) { var servis = _context.Servis.Find(model.IdServis); if (servis == null) { logger.LogError("Servis s ID=" + model.IdServis + " ne postoji"); return(BadRequest("Servis s ID=" + model.IdServis + " ne postoji")); } var serviser = _context.Serviser.Find(idServiser); if (serviser == null) { logger.LogError("Serviser s ID=" + idServiser + " ne postoji"); return(BadRequest("Serviser s ID=" + idServiser + " ne postoji")); } serviser.Ime = model.Ime; serviser.Prezime = model.Prezime; serviser.Opis = model.Opis; serviser.IdServis = servis.Id; try { _context.Update(serviser); _context.SaveChanges(); logger.LogInformation("Serviser " + serviser.Ime + " " + serviser.Prezime + " uspješno izmjenjen"); return(new ObjectResult(model)); } catch (Exception ex) { logger.LogError(ex.Message); return(BadRequest(ex.Message)); } } else { logger.LogError("Serviser nije spremljen."); return(BadRequest("Serviser nije spremljen.")); } }
public IActionResult CreateServiser([FromBody] ServiserApiModel model) { if (model != null) { var servis = _context.Servis.Find(model.IdServis); if (servis == null) { return(BadRequest("Servis s ID=" + model.IdServis + " ne postoji.")); } Serviser serviser = new Serviser { Ime = model.Ime, Prezime = model.Prezime, Opis = model.Opis, IdServis = model.IdServis }; try { _context.Serviser.Add(serviser); _context.SaveChanges(); logger.LogInformation("Serviser " + model.Ime + " " + model.Prezime + " uspješno dodan."); return(new ObjectResult(serviser)); } catch (Exception ex) { logger.LogError(ex.Message); return(BadRequest(ex.Message)); } } else { logger.LogError("Servis nije odabran."); return(BadRequest("Servis nije odabran.")); } }
//[SwaggerResponseAttribute((int)HttpStatusCode.OK, typeof(IActionResult), Description = "Spremanje servisera iz excel tablice")] public IActionResult ServiseriImport(ICollection <IFormFile> files) { var uploads = Path.Combine(_environment.WebRootPath, "uploads"); List <ServiserApiModel> serviseri = new List <ServiserApiModel>(); List <string> statusi = new List <string>(); foreach (var file in files) { if (file.Length > 0) { try { using (ExcelPackage package = new ExcelPackage(file.OpenReadStream())) { ExcelWorksheet worksheet = package.Workbook.Worksheets[SHEET_NAME]; int rowCount = worksheet.Dimension.Rows; int ColCount = worksheet.Dimension.Columns; for (int row = 2; row <= rowCount; row++) { ServiserApiModel serviser = new ServiserApiModel(); CultureInfo culture = CultureInfo.InvariantCulture; string ime = null, prezime = null, opis = null, servis = null; if (worksheet.Cells[row, 1].Value != null && !worksheet.Cells[row, 1].Value.ToString().Equals("")) { ime = worksheet.Cells[row, 1].Value.ToString(); serviser.Ime = ime; } else { statusi.Add("NE (Ime prazno)"); } if (worksheet.Cells[row, 2].Value != null && !worksheet.Cells[row, 2].Value.ToString().Equals("")) { prezime = worksheet.Cells[row, 2].Value.ToString(); serviser.Prezime = prezime; } else { statusi.Add("NE (Prezime prazno)"); } if (worksheet.Cells[row, 3].Value != null && !worksheet.Cells[row, 3].Value.ToString().Equals("")) { opis = worksheet.Cells[row, 3].Value.ToString(); serviser.Opis = opis; } else { opis = null; serviser.Opis = null; } if (worksheet.Cells[row, 4].Value != null && !worksheet.Cells[row, 4].Value.ToString().Equals("")) { servis = worksheet.Cells[row, 4].Value.ToString(); serviser.Servis = servis; } else { statusi.Add("NE (Servis prazan)"); } if (ime == null || prezime == null || servis == null) { serviseri.Add(serviser); continue; } Servis servisBaza = context.Servis.Where(s => s.Ime == serviser.Servis).FirstOrDefault(); if (servisBaza == null) { statusi.Add("NE (Servis ne postoji)"); serviseri.Add(serviser); continue; } try { Serviser serviserBaza = new Serviser { Ime = serviser.Ime, Prezime = serviser.Prezime, Opis = serviser.Opis, IdServis = servisBaza.Id }; context.Serviser.Add(serviserBaza); context.SaveChanges(); statusi.Add("DA"); } catch (Exception e) { statusi.Add("NE (" + e.Message + ")"); } finally { serviseri.Add(serviser); } } } } catch (Exception e) { return(NotFound(e.Message)); } } byte[] content; using (ExcelPackage excel = new ExcelPackage()) { excel.Workbook.Properties.Title = "Status unosa servisera"; excel.Workbook.Properties.Author = "Nikola Gajski"; var worksheet = excel.Workbook.Worksheets.Add("Statusi"); //First add the headers worksheet.Cells[1, 1].Value = "Ime"; worksheet.Cells[1, 2].Value = "Prezime"; worksheet.Cells[1, 3].Value = "Opis"; worksheet.Cells[1, 4].Value = "Servis"; worksheet.Cells[1, 5].Value = "Spremljen"; for (int i = 0; i < serviseri.Count; i++) { worksheet.Cells[i + 2, 1].Value = serviseri[i].Ime; worksheet.Cells[i + 2, 2].Value = serviseri[i].Prezime; worksheet.Cells[i + 2, 3].Value = serviseri[i].Opis; worksheet.Cells[i + 2, 4].Value = serviseri[i].Servis; worksheet.Cells[i + 2, 5].Value = statusi[i]; } worksheet.Cells[1, 1, serviseri.Count + 1, 6].AutoFitColumns(); content = excel.GetAsByteArray(); } return(File(content, ExcelContentType, "StatusUnosaServisera.xlsx")); } return(View()); }