public bool CreateReservation(CreateReserveInputModel inputModel, string currentMemberID)
        {
            var currentMember = _memberRepository.FindBy(x => x.EmailAddress ==
                                                         currentMemberID).SingleOrDefault();

            var checkReservation = _reservationRepository.FindBy(x => x.MemberID ==
                                                                 currentMember.ID &&
                                                                 x.TeeTimeID == inputModel.TeetimeId).SingleOrDefault();

            if (checkReservation == null)
            {
                //Create Reservation For Current Member
                var reservationMember = new Reservations
                {
                    DateCreated = DateTime.UtcNow,
                    Status      = ReservationStatus.Accepted,
                    MemberID    = currentMember.ID,
                    TeeTimeID   = inputModel.TeetimeId
                };
                _reservationRepository.Add(reservationMember);
                _reservationRepository.SaveChanges();


                if (inputModel.Reservations.Count > 0)
                {
                    foreach (var reservation in inputModel.Reservations)
                    {
                        var check = _reservationRepository.FindBy(x => x.MemberID ==
                                                                  reservation.MemberId &&
                                                                  x.TeeTimeID == inputModel.TeetimeId).SingleOrDefault();

                        if (check == null)
                        {
                            var newReservation = new Reservations
                            {
                                DateCreated = DateTime.UtcNow,
                                Status      = (ReservationStatus)reservation.CurrentStatus,
                                MemberID    = reservation.MemberId,
                                TeeTimeID   = inputModel.TeetimeId
                            };
                            _reservationRepository.Add(newReservation);
                            _reservationRepository.SaveChanges();
                        }
                    }
                }
                return(true);
            }

            return(false);
        }
Esempio n. 2
0
        private static List <string> GenerateMail(Reservations reservations)
        {
            List <string> output = new List <string>();

            string subject = "About your reservation";

            output.Add(subject);

            string body = $"Hello {reservations.Name} {reservations.Lastname}!" + Environment.NewLine;

            body += $"Your reservation for the flight has been booked successfully.";
            output.Add(body);
            return(output);
        }
Esempio n. 3
0
        public Database()
        {
            string        connectionString = @"Server=LAPTOP-LSE8ACET\SQL_SERVER;Database=TransportReservation;User Id=sa;Password=12345;";
            SqlConnection conn             = new SqlConnection(connectionString);

            Authentication = new Authentication(conn);
            Managers       = new Managers(conn);
            Sellers        = new Sellers(conn);
            Tickets        = new Tickets(conn);
            Customers      = new Customers(conn);
            Buses          = new Buses(conn);
            Admins         = new Admins(conn);
            Reservations   = new Reservations(conn);
        }
 public ActionResult Edit([Bind(Include = "ReservationID,CarID,CostumerID,ReservStatsID,StartDate,EndDate,Location,CouponCode")] Reservations reservations)
 {
     if (ModelState.IsValid)
     {
         db.Entry(reservations).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.CarID         = new SelectList(db.Cars, "CarID", "Plate", reservations.CarID);
     ViewBag.CouponCode    = new SelectList(db.Coupons, "CouponCode", "Description", reservations.CouponCode);
     ViewBag.CostumerID    = new SelectList(db.Customers, "CostumerID", "Name", reservations.CostumerID);
     ViewBag.ReservStatsID = new SelectList(db.ReservationStatuses, "ReservStatsID", "Name", reservations.ReservStatsID);
     return(View(reservations));
 }
        public IHttpActionResult AddReservations(Reservations reservations)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            //reservations.MeetingRooms = db.MeetingRooms.Find(reservations.MeetingRoom_Id);
            //reservations.Users = db.Users.Find(reservations.User_Id);

            db.Reservations.Add(reservations);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = reservations.Id }, reservations));
        }
Esempio n. 6
0
        public void CanBeCancelledBy_UserIsAdmin_ReturnsTrue()
        {
            //Arrange
            var reservations = new Reservations();
            //Act
            var result = reservations.CanBeCancelledBy(new User {
                IsAdmin = true
            });

            //Assert
            //Assert.IsTrue(result);
            //Assert.That(result, Is.True);
            Assert.That(result == true);
        }
        // GET: Reservations/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Reservations reservations = db.Reservations.Find(id);

            if (reservations == null)
            {
                return(HttpNotFound());
            }
            return(View(reservations));
        }
        public async Task <IActionResult> DeleteCarReservation(int id)
        {
            Reservations carItem = _context.CarReservations.Find(id);

            if (carItem == null)
            {
                return(NotFound());
            }

            _context.CarReservations.Remove(carItem);
            await _context.SaveChangesAsync();

            return(NoContent());
        }
        public async Task <ActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Reservations roomUsage = await db.RoomUsages.FindAsync(id);

            if (roomUsage == null)
            {
                return(HttpNotFound());
            }
            return(View(roomUsage));
        }
        public HttpResponseMessage Delete(int id)
        {
            var reservation = Reservations.GetSingle(id);

            // returning 404 if the entity doesn't exist
            if (reservation == null)
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }

            Reservations.Delete(reservation);
            Reservations.Save();
            return(Request.CreateResponse(HttpStatusCode.OK));
        }
Esempio n. 11
0
        public void CanBeCancelledBy_AnotherUser_ReturnsFalse()
        {
            //Arrange
            var user         = new User();
            var reservations = new Reservations {
                MadeBy = user
            };

            //Act
            var result = reservations.CanBeCancelledBy(new User());

            //Assert
            Assert.IsFalse(result);
        }
Esempio n. 12
0
        public async Task <IHttpActionResult> DeleteReservations(int id)
        {
            Reservations reservations = await db.Reservations.FindAsync(id);

            if (reservations == null)
            {
                return(NotFound());
            }

            db.Reservations.Remove(reservations);
            await db.SaveChangesAsync();

            return(Ok(reservations));
        }
Esempio n. 13
0
        private void goAccueil(object dest)
        {
            UserControl destUC = null;

            switch ((string)dest)
            {
            case "accueil":
                destUC = ListPages.FirstOrDefault(x => x is Accueil);
                if (destUC == null)
                {
                    destUC = new Accueil();
                }
                break;

            case "clients":
                destUC = ListPages.FirstOrDefault(x => x is Clients);
                if (destUC == null)
                {
                    destUC = new Clients();
                }
                break;

            case "reservations":
                destUC = ListPages.FirstOrDefault(x => x is Reservations);
                if (destUC == null)
                {
                    destUC = new Reservations();
                }
                break;

            case "repas":
                destUC = ListPages.FirstOrDefault(x => x is Repas);
                if (destUC == null)
                {
                    destUC = new Repas();
                }
                break;

            case "menages":
                destUC = ListPages.FirstOrDefault(x => x is Menages);
                if (destUC == null)
                {
                    destUC = new Menages();
                }
                break;
            }

            CurrentPage = destUC;
        }
Esempio n. 14
0
        /// <summary>
        /// After we find the query through the FindReservationByKeys method we can update it with the new instance of model.
        /// With instance methog excepts the parameters ID's to find query.
        ///
        /// Next we have to check if car was changed. If so:
        /// Old car set available and new car set busy
        /// </summary>
        /// <param name="reservation"></param>
        /// <param name="oldCustomerID"></param>
        /// <param name="oldCarID"></param>
        /// <param name="oldStartDate"></param>
        public void UpdateReservation(Reservations reservation, int oldCustomerID, int oldCarID, DateTime oldStartDate)
        {
            string firstExpression =
                @"UPDATE Reservations SET CarID=@CarID, CustomerID=@CustomerID, 
                 StartDate=@StartDate, EndDate=@EndDate, Location=@Location
                 WHERE CustomerID=@oldCustomerID AND CarID=@oldCarID AND StartDate=@oldStartDate";

            using (SqlCommand cmd = new SqlCommand(firstExpression, connection)) {
                cmd.Parameters.AddWithValue("@oldCarID", oldCarID);
                cmd.Parameters.AddWithValue("@oldCustomerID", oldCustomerID);
                cmd.Parameters.AddWithValue("@oldStartDate", oldStartDate);
                cmd.Parameters.AddWithValue("@CarID", reservation.CarID);
                cmd.Parameters.AddWithValue("@CustomerID", reservation.CustomerID);
                cmd.Parameters.AddWithValue("@StartDate", reservation.StartDate);
                cmd.Parameters.AddWithValue("@EndDate", reservation.EndDate);
                cmd.Parameters.AddWithValue("@Location", reservation.Location);

                connection.Open();
                cmd.ExecuteNonQuery();
                //Console.WriteLine("Reservation was updated");
            }

            if (oldCarID == reservation.CarID)
            {
                connection.Close();
                return;
            }

            string secondExpression =
                @"UPDATE Cars SET Cars.IsBusy=@IsBusy WHERE CarID=@oldCarID";

            using (SqlCommand cmd = new SqlCommand(secondExpression, connection)) {
                cmd.Parameters.AddWithValue("@oldCarID", oldCarID);
                cmd.Parameters.AddWithValue("@IsBusy", false);
                cmd.ExecuteNonQuery();
                Console.WriteLine("{0} Car with ID is available now", oldCarID);
            }

            string thirdExpression =
                @"UPDATE Cars SET Cars.IsBusy=@IsBusy WHERE CarID=@CarID";

            using (SqlCommand cmd = new SqlCommand(thirdExpression, connection)) {
                cmd.Parameters.AddWithValue("@CarID", reservation.CarID);
                cmd.Parameters.AddWithValue("@IsBusy", true);
                cmd.ExecuteNonQuery();
                Console.WriteLine("{0} Car with ID is reserved", reservation.CarID);
                connection.Close();
            }
        }
Esempio n. 15
0
        public async Task <IActionResult> GetReservationsById(int id)
        {
            try
            {
                Reservations ret = await _repository.Reservations.GetReservationsByIdAsync(id);

                _logger.LogInfo($"Returned reservation by id from database.");
                return(Ok(ret));
            }
            catch (Exception ex)
            {
                _logger.LogError($"Something went wrong inside GetReservationsById action: {ex.Message}");
                return(StatusCode(500, "Internal server error" + ex));
            }
        }
Esempio n. 16
0
        public async Task <bool> IsRoomFreeInPeriod(Room room, DateTime begin, DateTime end, string currReservId = null)
        {
            var reservs = await Reservations.Where(x => x.Room.Id == room.Id && currReservId != x.Id).ToListAsync();

            foreach (var reserv in reservs)
            {
                if ((begin >= reserv.CheckInTime && begin <= reserv.CheckOutTime) ||
                    (end >= reserv.CheckInTime && end <= reserv.CheckOutTime) ||
                    (begin <= reserv.CheckOutTime && end >= reserv.CheckOutTime))
                {
                    return(false);
                }
            }
            return(true);
        }
 private void Refresh()
 {
     ClearFilter();
     Reservations.Refresh(App.Model.Reservations);
     if (showId != null)
     {
         Show = (from s in App.Model.Shows where s.Id == showId select s).FirstOrDefault();
     }
     else if (clientId != null)
     {
         Client = (from c in App.Model.Clients where c.Id == clientId select c).FirstOrDefault();
     }
     SelectedReservation = null;
     SetMode();
 }
Esempio n. 18
0
        public IActionResult AddRSVP(int weddingID)
        {
            int?UserID = HttpContext.Session.GetInt32("UserID");
            // var DelReservation = _context.reservations.Where(p => p.weddingsid == weddingID).ToList();
            // var DelReservation = _context.reservations.Where(p => p.id == reservationID).SingleOrDefault();
            Reservations myReservation = new Reservations();

            myReservation.created_at = DateTime.Now;
            myReservation.updated_at = DateTime.Now;
            myReservation.usersid    = (int)UserID;
            myReservation.weddingsid = weddingID;
            _context.reservations.Add(myReservation);
            _context.SaveChanges();
            return(RedirectToAction("Dashboard"));
        }
        public HttpResponseMessage Get(int id)
        {
            var reservation = Reservations.GetSingle(id);

            // Handling the HTTP status codes
            if (reservation != null)
            {
                return(Request.CreateResponse <ReservationDTO>
                           (HttpStatusCode.OK, reservation.ToReservationDTO()));
            }
            else
            {
                return(Request.CreateResponse(HttpStatusCode.NotFound));
            }
        }
Esempio n. 20
0
        public void CanBeCancelledBy_SameUserCancellingReservation_ReturnsTrue()
        {
            //Arrange => Test edecegimiz metodun ait oldugu sinifitan obje yaratma bolumu
            var user         = new User();
            var reservations = new Reservations {
                MadeBy = user
            };

            //Act => yarattigimiz objeler uzerinden test edilecek olan metodlara ulasiriz
            var result = reservations.CanBeCancelledBy(user);

            //Assert
            Assert.IsTrue(result);
            Assert.That(result, Is.True);
        }
        //public Cars Find(int CarID)
        //{
        //    Cars c = car.Find(p => p.CarID == CarID);

        //    if (c != null)
        //    {
        //        return c;
        //    }
        //    else
        //    {
        //        throw new Exception("Customer not found!");
        //    }
        //}

        public ActionResult Edit(int CarID, int Id, DateTime StartDate)
        {
            //Reservations rent = context.Find(p => (p.CarID == IdCar) && (p.Id == Id) && (p.StartDate == dt));

            Reservations rent = context.Find(CarID, Id, StartDate);

            if (rent == null)
            {
                return(HttpNotFound());
            }
            else
            {
                return(View(rent));
            }
        }
        public void CheckTimes_SelectedEndTimeIsAfterSunIsUp_ReturnFalse()
        {
            Reservations    reservation       = new Reservations();
            TimeSpan        sunUp             = new TimeSpan(8, 0, 0);
            TimeSpan        sunDown           = new TimeSpan(16, 0, 0);
            List <TimeSpan> beginTimes        = new List <TimeSpan>();
            List <TimeSpan> endTimes          = new List <TimeSpan>();
            TimeSpan        selectedBeginTime = new TimeSpan(12, 0, 0);
            TimeSpan        selectedEndTime   = new TimeSpan(17, 0, 0);
            // Act
            var result = reservation.CheckTime(selectedBeginTime, selectedEndTime, beginTimes, endTimes, sunUp, sunDown, true);

            // Assert
            Assert.IsFalse(result);
        }
Esempio n. 23
0
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Reservations reservations = db.Reservations.Find(id);

            if (reservations == null)
            {
                return(HttpNotFound());
            }
            this.AddNotification("Are you sure you want to delete the reservation?", NotificationType.WARNING);
            return(View(reservations));
        }
Esempio n. 24
0
        public void CancelReservation(Reservation reservation)
        {
            if (Reservations.Contains <Reservation>(reservation))
            {
                IList <Table> tables = reservation.ReservedList.ToList <Table>();
                foreach (Table t in tables)
                {
                    reservation.RemoveReservable(t);
                }

                Reservations.Remove(reservation);

                reservation.Delete();
            }
        }
        private ReservViewModels PopulateViewModel(Reservations reservation)
        {
            var reservationViewModel = new ReservViewModels
            {
                ID               = reservation.ID,
                DateCreated      = reservation.DateCreated,
                TeeTimeID        = reservation.TeeTimeID,
                GolfCourse       = reservation.TeeTime.GolfCourse.CourseName,
                TeeTimeStartDate = reservation.TeeTime.StartDate,
                TeeTimeEndDate   = reservation.TeeTime.EndDate,
                Status           = reservation.Status
            };

            return(reservationViewModel);
        }
Esempio n. 26
0
        public async Task Test_GetReservationById_ValidId_ShouldReturn_Object()
        {
            var reservation = Reservations.First();

            _mockingHelper.RepositoryTicket.Setup(_ => _.GetReservationByIdAsync(reservation.Id))
            .ReturnsAsync(reservation);

            var result = await _reservationService.GetReservationByIdAsync(1L);

            result.Should().NotBeNull();
            result.Id.Should().Be(reservation.Id);
            result.ScheduleId.Should().Be(reservation.ScheduleId);
            result.TicketId.Should().Be(reservation.TicketId);
            _mockingHelper.RepositoryTicket.Verify(_ => _.GetReservationByIdAsync(reservation.Id), Times.Once);
        }
Esempio n. 27
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.Params["id"] == null)
            {
                Response.Redirect("Activity.aspx");
                return;;
            }
            String id     = Request.Params["id"].ToString();
            Player player = Reservations.FindPlayerById(id);
            bool   mark   = false;

            this.DetailTable.Caption = player.Name;
            if (!IsPostBack)
            {
                this.PasscodeTb.Text = player.Passcode;
                this.NameTb.Text     = player.Name;
                mark = player.Marked;
            }
            this.DeleteUserLbl.Visible         = true;
            this.DeleteUserBtn.Visible         = true;
            this.DeleteUserBtn.CommandArgument = player.Id;

            TableRow  row       = new TableRow();
            TableCell labelCell = new TableCell();

            labelCell.Text = "Change Name";
            row.Cells.Add(labelCell);
            TableCell valueCell = new TableCell();

            valueCell.HorizontalAlign = HorizontalAlign.Right;
            // PasscodeTb.Font.Size = new FontUnit("1.2em");
            valueCell.Controls.Add(NameTb);
            PasscodeTb.Font.Size = FontUnit.XXLarge;
            row.Cells.Add(valueCell);
            TableCell saveCell = new TableCell();

            saveCell.HorizontalAlign = HorizontalAlign.Right;
            ImageButton imageBtn = new ImageButton();

            imageBtn.ID       = id + "," + this.DetailTable.Caption + ",saveNameBtn";
            imageBtn.ImageUrl = "~/Icons/Save.png";
            imageBtn.Width    = new Unit(Constants.IMAGE_BUTTON_SIZE);
            imageBtn.Height   = new Unit(Constants.IMAGE_BUTTON_SIZE);
            imageBtn.Click   += new ImageClickEventHandler(SaveName_Click);
            saveCell.Controls.Add(imageBtn);
            row.Cells.Add(saveCell);
            this.DetailTable.Rows.Add(row);
        }
Esempio n. 28
0
        public void Update(Type t)
        {
            if (t == typeof(Movie))
            {
                var _actualMovies = _db.GetObjects <Movie>();
                Movies.Clear();

                foreach (var movie in _actualMovies)
                {
                    Movies.Add(movie);
                }
                var _actualShows = _db.GetObjects <Show>();
                RemoveFilter();
                Shows.Clear();

                foreach (var show in _actualShows)
                {
                    Shows.Add(show);
                }
                var _day = DateTime.ParseExact(_showDateFilter, "dd/MM/yyyy", null);
                ApplyDateFilter(_day);
            }
            else if (t == typeof(Show))
            {
                var _actualShows = _db.GetObjects <Show>();
                Shows.Clear();
                //   RemoveFilter();
                foreach (var show in _actualShows)
                {
                    Shows.Add(show);
                }
                var day = DateTime.ParseExact(_showDateFilter, "dd/MM/yyyy", null);
                //    ApplyDateFilter(day);
            }
            else if (t == typeof(Reservation))
            {
                var _actualReservations = _db.GetObjects <Reservation>();
                App.Current.Dispatcher.Invoke(delegate
                {
                    Reservations.Clear();

                    foreach (var reservation in _actualReservations)
                    {
                        Reservations.Add(reservation);
                    }
                });
            }
        }
Esempio n. 29
0
        private void ReserveAgain_Click(object sender, RoutedEventArgs e)
        {
            //get data from correct row
            var r = ((FrameworkElement)sender).DataContext as Reservations;

            //Check if member has already 2 reservations
            if (Reservations.CheckAmountReservations(MemberId) >= 2)
            {
                MessageBox.Show("U kunt geen nieuwe reservering plaatsen omdat u al 2 aankomende reserveringen heeft.", "Opnieuw reserveren", MessageBoxButton.OK, MessageBoxImage.Error);
            }
            else
            {
                SelectDateOfReservation.Screen = SelectDateOfReservation.PreviousScreen.ReservationsScreen;
                Switcher.Switch(new SelectDateOfReservation(r.BoatId, r.BoatName, r.BoatType, AccessLevel, FullName, MemberId));
            }
        }
        private void SendReservationEmail(Reservations res)
        {
            var subject = " Beach House Reservation ID:" + res.Id + " has been created!";
            var to      = new EmailAddress(res.User.Email.Trim(), res.User.FirstName.Trim() + " " + res.User.LastName.Trim());
            var toAdmin = GetAdminEmailAddress();

            var plainTextContent = "Reservation ID:" + res.Id + " date: " + res.Date.ToShortDateString() + " nights: " + res.ReservationDetails.Count();

            var htmlContent = "<p>Hello <strong> " + res.User.FirstName.Trim() + " " + res.User.LastName.Trim() + "</strong>,</p><p> Thanks for reserving the ASEITHSMUS Bejuco Beach House.This is your reservation summary:<p>" +
                              getCheckInCheckOut(res) + "<br>" + "<strong> Total Nights:</strong> " + res.ReservationDetails.Count() + " <strong> Total Charge:</strong> $" + res.ReservationDetails.Sum(x => x.Rate) + " (USD) <br/> " +
                              "<a href = " + getTAndCUrl() + "> Terms and Conditions</a></p><p> Please remember that cancellations are allowed until one week before the Check In date, right after that date no cancellations can be made.</p> " +
                              "<p> Bejuco Beach House Google Maps link <a href =" + getTAndCUrl() + "> here </a></p><p> Regards,<br/><strong> Bejuco Beach House Administration Team</strong></p>";

            var emailToUser  = SendEmailAsync(subject, to, plainTextContent, htmlContent);
            var emailToAdmin = SendEmailAsync(subject, toAdmin, plainTextContent, htmlContent);
        }