public AutoOglas PopuniAutoOglas(AutoOglasViewModel autoOglasViewModel, AutoOglas autoOglasZaIzmenu = null) { if (autoOglasZaIzmenu == null) { autoOglasZaIzmenu = new AutoOglas(); } // >> ZAJEDNICKI >>> autoOglasZaIzmenu.NaslovOglasa = autoOglasViewModel.AutoOglas.NaslovOglasa; autoOglasZaIzmenu.OpisOglasa = autoOglasViewModel.AutoOglas.OpisOglasa; autoOglasZaIzmenu.Cena = autoOglasViewModel.AutoOglas.Cena; autoOglasZaIzmenu.ValutaId = autoOglasViewModel.AutoOglas.ValutaId; autoOglasZaIzmenu.StanjeId = autoOglasViewModel.AutoOglas.StanjeId; autoOglasZaIzmenu.DatumPostavljanja = autoOglasViewModel.AutoOglas.DatumPostavljanja == default(DateTime) ? DateTime.Now : autoOglasViewModel.AutoOglas.DatumPostavljanja; if (autoOglasZaIzmenu.Slike == null) { autoOglasZaIzmenu.Slike = new Collection <Slika>(); } autoOglasZaIzmenu.UserAutorOglasaId = autoOglasViewModel.AutoOglas.UserAutorOglasaId ?? User.Identity.GetUserId(); // <<< ZAJEDNICKI <<< autoOglasZaIzmenu.Godiste = autoOglasViewModel.AutoOglas.Godiste; autoOglasZaIzmenu.Kilometraza = autoOglasViewModel.AutoOglas.Kilometraza; autoOglasZaIzmenu.KonjskeSnage = autoOglasViewModel.AutoOglas.KonjskeSnage; autoOglasZaIzmenu.Kubikaza = autoOglasViewModel.AutoOglas.Kubikaza; autoOglasZaIzmenu.MarkaAutaId = autoOglasViewModel.AutoOglas.MarkaAutaId; autoOglasZaIzmenu.ModelAutaId = autoOglasViewModel.AutoOglas.ModelAutaId; return(autoOglasZaIzmenu); }
public AutoOglasViewModel NapraviAutoOglasViewModel(AutoOglas oglasIzBaze = null) { var markeAuta = dbContext.MarkeAuta; var stanja = dbContext.Stanja; var valute = dbContext.Valute; return(new AutoOglasViewModel() { AutoOglas = oglasIzBaze ?? new AutoOglas(), MarkeAuta = markeAuta.ToList(), Stanja = stanja.ToList(), Valute = valute.ToList() }); }
public ActionResult SaveOglas(AutoOglasViewModel newAutoOglasViewModel, List <HttpPostedFileBase> uploadedImages = null) { //Za slucaj da mora da se vrati na formu zbog modelstate not valid************************************** AutoOglas autoOglasUBazi = dbContext.Oglasi .OfType <AutoOglas>() .Include(o => o.Slike) .SingleOrDefault(o => o.Id == newAutoOglasViewModel.AutoOglas.Id); var markeAuta = dbContext.MarkeAuta; var stanja = dbContext.Stanja; var valute = dbContext.Valute; newAutoOglasViewModel.MarkeAuta = markeAuta.ToList(); newAutoOglasViewModel.Stanja = stanja.ToList(); newAutoOglasViewModel.Valute = valute.ToList(); if (newAutoOglasViewModel.AutoOglas.Id != 0) { newAutoOglasViewModel.AutoOglas.Slike = autoOglasUBazi.Slike; } //Za slucaj da mora da se vrati na formu zbog modelstate not valid************************************** PomocnaKlasa.TipoviGreskeUploadSlika tipGreskeUploadSlika = PomocnaKlasa.ProveriValidnostUploadovanihSlika(uploadedImages); switch (tipGreskeUploadSlika) { case PomocnaKlasa.TipoviGreskeUploadSlika.MaxPetSlikaPoOglasu: ViewBag.Greska = "Maksimalno 5 slika po oglasu!"; break; case PomocnaKlasa.TipoviGreskeUploadSlika.PogresanFormatSlika: ViewBag.Greska = "Izaberite samo slike!"; break; case PomocnaKlasa.TipoviGreskeUploadSlika.PrevelikaSlika: ViewBag.Greska = "Svaki fajl mora biti manji od 500kb!"; break; } if (tipGreskeUploadSlika != PomocnaKlasa.TipoviGreskeUploadSlika.NemaGreske) { return(View("AutoOglasForm", newAutoOglasViewModel)); } if (!ModelState.IsValid) { ViewBag.Greska = "Proverite unesene podatke"; return(View("AutoOglasForm", newAutoOglasViewModel)); } else { string userId = User.Identity.GetUserId(); int oglasId; if (newAutoOglasViewModel.AutoOglas.Id != 0) { PopuniAutoOglas(newAutoOglasViewModel, autoOglasUBazi); if (PomocnaKlasa.DaLiDodajeViseOdPetSlika(uploadedImages, autoOglasUBazi)) { ViewBag.Greska = "Maksimalno 5 slika po oglasu!"; return(View("AutoOglasForm", newAutoOglasViewModel)); } oglasId = autoOglasUBazi.Id; PomocnaKlasa.DodajSlikeOglasu(userId, oglasId, autoOglasUBazi, uploadedImages); } else { AutoOglas newAutoOglas = PopuniAutoOglas(newAutoOglasViewModel); dbContext.Oglasi.Add(newAutoOglas); dbContext.SaveChanges(); oglasId = newAutoOglas.Id; PomocnaKlasa.DodajSlikeOglasu(userId, oglasId, newAutoOglas, uploadedImages); } dbContext.SaveChanges(); return(RedirectToAction("Details", new { id = oglasId })); } }