public List <Rezervasyon> GetReservationList(int rentUserId) { var list = rentUserId > 0 ? List(i => i.RentUserID == rentUserId) : List(); if (list.HasElement()) { var carIds = list.Select(i => i.CarID).Distinct(); var carList = _carManager.List(car => carIds.Contains(car.Id)); var rentUserIds = list.Select(i => i.RentUserID).Distinct(); var retUserList = _rentUserManager.List(user => rentUserIds.Contains(user.Id)); list = list.Select(i => { i.Car = carList.FirstOrDefault(c => c.Id == i.CarID); i.RentUser = retUserList.FirstOrDefault(r => r.Id == i.RentUserID); return(i); }).OrderByDescending(o => o.AlisTarihi).ToList(); } return(list); }
public ActionResult Detail(Rezervasyon reservation) { var message = "İşleminize devam edemiyoruz. Lütfen giriş yaptığınız değerleri kontrol edip tekrar deneyiniz!"; var success = false; if (ModelState.IsValid) { //Kiralayan bilgisi yeni ise ekle if (reservation.RentUserID == 0) { var rentUser = _rentUserManager.List(i => i.Name == reservation.RentUser.Name && i.PhoneNumber == reservation.RentUser.PhoneNumber).FirstOrDefault(); if (rentUser == null) { _rentUserManager.Insert(reservation.RentUser); rentUser = reservation.RentUser; } reservation.RentUserID = rentUser.Id; } else { reservation.RentUser = _rentUserManager.GetById(reservation.RentUserID); } if (reservation.AdminID <= 0) { reservation.AdminID = 1; //şimdilik default 1 atıldı } if (reservation.Id > 0) { var persistent = _reservationManager.GetById(reservation.Id); if (persistent != null) { persistent.İadeYeri = reservation.İadeYeri; persistent.AlisYeri = reservation.AlisYeri; persistent.IadeTarihi = reservation.IadeTarihi; persistent.AlisTarihi = reservation.AlisTarihi; persistent.CarID = reservation.CarID; persistent.RentUserID = reservation.RentUserID; persistent.Status = reservation.Status; persistent.AdminID = reservation.AdminID; _reservationManager.Update(persistent); message = "Rezervasyon başarıyla güncellendi."; success = true; } else { message = "Rezervasyon bilgileri kaydedilemedi!"; } } else { _reservationManager.Insert(reservation); message = "Yeni rezervasyon kaydı başarıyla eklendi."; success = true; } } ViewBag.ReservationResult = success; ViewBag.ReservationMessage = message; return(GetModel(reservation)); }
public ActionResult Index() { var model = _rentUserManager.List(); return(View(model)); }