示例#1
0
        public IActionResult Index()
        {
            var clientId       = _userManager.GetUserId(User);
            var reservationsDb = _context.Reservations.Where(r => r.ClientId == clientId)
                                 .OrderByDescending(r => r.IsActive).ThenBy(r => r.IsCancel).ToList();

            foreach (var reservation in reservationsDb)
            {
                reservation.Apartment           = _context.Apartments.FirstOrDefault(a => a.Id == reservation.ApartmentId);
                reservation.Apartment.CityBlock = _context.CityBlocks.FirstOrDefault(b => b.Id == reservation.Apartment.CityBlockId);
                if (reservation.TimeTo < DateTime.Now)
                {
                    reservation.IsActive = false;
                }
            }

            _context.SaveChanges();

            var reservModel = new ReservationsModel
            {
                Reservations = reservationsDb
            };

            return(View(reservModel));
        }
示例#2
0
        //
        // GET: /Reservation/MyReservations
        public ActionResult MyReservations()
        {
            var model = new ReservationsModel();

            model.Items = this.reservationRepositoy.GetReservations(new Guid(User.Identity.GetUserId()));

            return(View(model));
        }
        public IActionResult Index()
        {
            using var db = new BookingContext();

            var booksAvailable = new ReservationsModel();

            foreach (var book in db.Books)
            {
                var total = db.BooksCopies.Count(x => x.BookId == book.BookId);

                var totalCurrentBook = db.ReservedBook.Count(x => x.BookId == book.BookId && x.ReturnedDate == null);

                booksAvailable.AvailableBooks.Add(new AvailableBooksModel()
                {
                    Book            = book.Name,
                    Available       = total - totalCurrentBook,
                    BookId          = book.BookId,
                    Author          = book.Author,
                    PublicationYear = book.PublicationYear
                });
            }

            UserID = db.Users.FirstOrDefault(x => x.Username == _httpContextAccessor.HttpContext.Session.GetString("user")).UserId;

            foreach (var reservations in db.ReservedBook.Where(x => x.UserId == UserID))
            {
                var user = db.Users.FirstOrDefault(x => x.UserId == reservations.UserId).Username;

                var book = db.Books.FirstOrDefault(x => x.BookId == reservations.BookId);

                booksAvailable.ReservedBooks.Add(new ReservedBooksModel()
                {
                    Book          = book.Name,
                    Author        = book.Author,
                    ReservationId = reservations.ReservedBookId,
                    User          = user,
                    Date          = reservations.ReservedDate.ToString("yyyy-MM-dd hh:mm"),
                    CollectedDate = reservations.CollectedDate?.ToString("yyyy-MM-dd hh:mm"),
                    ReturnDate    = reservations.ReturnDate?.ToString("yyyy-MM-dd hh:mm"),
                    ReturnedDate  = reservations.ReturnedDate?.ToString("yyyy-MM-dd hh:mm")
                });
            }

            return(View(booksAvailable));
        }
        /*Action JsonResult que con un condional Case evaluara que metodo se ejecutara dependiendo de la Peticion del cliente*/
        public JsonResult Reservation(int?id, ReservationsModel item)
        {
            switch (Request.HttpMethod)
            {
            case "POST":
                return(Json(reservations.createReservations(item)));

            case "PUT":
                return(Json(reservations.updateReservations(item)));

            case "GET":
                return(Json(reservations.returnReservation(id.GetValueOrDefault()), JsonRequestBehavior.AllowGet));

            case "DELETE":
                return(Json(reservations.deleteReservations(id.GetValueOrDefault())));
            }

            return(Json(new { Error = true, Message = "Operacion HTTP desconocida" }));
        }
示例#5
0
 public DBSessionsProvider()
 {
     _sessionsModel = new ReservationsModel();
 }
示例#6
0
 public DBCartsProvider()
 {
     _reservationsModel = new ReservationsModel();
 }