public ActionResult AracListesi(AracFiltreViewModel model) { var newReservationStartDay = new DateTime( year: Convert.ToInt32(model.alisTarihYil), month: Convert.ToInt32(model.alisTarihAy), day: Convert.ToInt32(model.alisTarihGun), hour: Convert.ToInt32(model.alisSaat.Substring(0, 2)), minute: Convert.ToInt32(model.alisSaat.Substring(3, 2)), second: 0); var newReservationEndDay = new DateTime( year: Convert.ToInt32(model.donusTarihYil), month: Convert.ToInt32(model.donusTarihAy), day: Convert.ToInt32(model.donusTarihGun), hour: Convert.ToInt32(model.donusSaat.Substring(0, 2)), minute: Convert.ToInt32(model.donusSaat.Substring(3, 2)), second: 0); if (newReservationEndDay < newReservationStartDay) { return(View(model)); } var res = getAraclist(model); ViewBag.Lokasyonlar = db.Lokasyon.ToList(); model.aracList = res; return(View(model)); }
public ActionResult AracListesi() { var res = getAraclist(null); ViewBag.Lokasyonlar = db.Lokasyon.ToList(); AracFiltreViewModel model = new AracFiltreViewModel { aracList = res }; return(View(model)); }
public ActionResult Anasayfa() { ViewBag.Lokasyonlar = db.Lokasyon.ToList(); AracFiltreViewModel model = new AracFiltreViewModel { alisTarihYil = DateTime.Now.Year.ToString(), alisTarihAy = DateTime.Now.Month.ToString().PadLeft(2, '0'), alisTarihGun = DateTime.Now.Day.ToString().PadLeft(2, '0'), donusTarihYil = DateTime.Now.Year.ToString(), donusTarihAy = DateTime.Now.Month.ToString().PadLeft(2, '0'), donusTarihGun = DateTime.Now.AddDays(1).Day.ToString().PadLeft(2, '0'), }; return(View(model)); }
List <AracViewModel> getAraclist(AracFiltreViewModel model) { if (model is null) { var res = (from arac in db.viewAracList where arac.AracKiralamaDurumu == 0 select new AracViewModel { Arac_ID = arac.Arac_ID, Base64Resim = "data:image/png;base64,", KM = (int)arac.AracGuncelKM, MarkaModel = arac.AracMarka_Adi + " " + arac.AracModel_Adi, VitesTuru = arac.VitesTipi, YakitTuru = arac.AracYakitTuru_Adi, Yil = arac.Arac_Yil }).Take(5).ToList(); fillImages(res); return(res); } else { var newReservationStartDay = new DateTime( year: Convert.ToInt32(model.alisTarihYil), month: Convert.ToInt32(model.alisTarihAy), day: Convert.ToInt32(model.alisTarihGun), hour: Convert.ToInt32(model.alisSaat.Substring(0, 2)), minute: Convert.ToInt32(model.alisSaat.Substring(3, 2)), second: 0); var newReservationEndDay = new DateTime( year: Convert.ToInt32(model.donusTarihYil), month: Convert.ToInt32(model.donusTarihAy), day: Convert.ToInt32(model.donusTarihGun), hour: Convert.ToInt32(model.donusSaat.Substring(0, 2)), minute: Convert.ToInt32(model.donusSaat.Substring(3, 2)), second: 0); var unavailableList = new List <int>(); var booked = db.RezervasyonOnKayit. Where(x => x.RezervasyonOnKayit_Durum == (int)RezervasyonOnKayitDurum.KabulEdildi). GroupBy(x => x.RezervasyonOnKayit_AracID); foreach (var item in booked) { var last = item.OrderByDescending(x => x.RezervasyonOnKayit_AlisSaati).FirstOrDefault(); if (last.RezervasyonOnKayit_TeslimTarihi.Date > newReservationStartDay.Date && last.RezervasyonOnKayit_TeslimSaati > newReservationStartDay.TimeOfDay || last.RezervasyonOnKayit_AlisTarihi.Date < newReservationEndDay.Date && last.RezervasyonOnKayit_AlisSaati < newReservationEndDay.TimeOfDay) { unavailableList.Add(last.RezervasyonOnKayit_AracID); } } var res = (from arac in db.viewAracList where arac.AracKiralamaDurumu == (int)AracDurumu.Bos && arac.Lokasyon_ID == model.alisLokasyon && !unavailableList.Contains(arac.Arac_ID) select new AracViewModel { Arac_ID = arac.Arac_ID, Base64Resim = "data:image/png;base64,", KM = (int)arac.AracGuncelKM, MarkaModel = arac.AracMarka_Adi + " " + arac.AracModel_Adi, VitesTuru = arac.VitesTipi, YakitTuru = arac.AracYakitTuru_Adi, Yil = arac.Arac_Yil }).Take(5).ToList(); fillImages(res); return(res); } }