public Rezervasyon GetReservationDetail(int id)
        {
            if (id > 0)
            {
                var result = GetById(id);
                if (result != null)
                {
                    result.Car      = result.CarID > 0 ? _carManager.GetById(result.CarID) : null;
                    result.RentUser = result.RentUserID > 0 ? _rentUserManager.GetById(result.RentUserID) : null;
                }
                return(result);
            }

            return(new Rezervasyon()
            {
                Status = ReservationsStatus.Active,
                AlisTarihi = DateTime.Now,
                IadeTarihi = DateTime.Now
            });
        }
Beispiel #2
0
        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));
        }