コード例 #1
0
        public void CreateNormalReservation(CreateReservationModel model, int memberID)
        {
            if (model.PotentialReservations.Count > 4)
            {
                throw new Exception("Members should not be more than 4");
            }

            var teeTimeRepo = new TeeTimeRepository(new BAISTGolfCourseDbContext());

            var teeTime = teeTimeRepo.GetWithReservationsById(model.TeeTimeID);

            foreach (var member in model.PotentialReservations)
            {
                var reservation = new Reservations
                {
                    DateCreated = DateTime.Now,
                    TeeTimeID   = model.TeeTimeID,
                    MemberID    = member.MemberID,
                    Status      = member.Status,
                    IsApproved  = false,
                    Type        = Enums.ReservationType.Normal
                };

                teeTime.Reservations.Add(reservation);
            }

            var reservationCount = teeTime.Reservations.Count;

            if (reservationCount == 4)
            {
                teeTime.Status = Enums.TeeTimeStatus.Closed;
            }

            teeTimeRepo.SaveChanges();
        }
コード例 #2
0
        public void CreateStandingReservation(CreateReservationModel model, int memberID)
        {
            var teeTimeRepo = new TeeTimeRepository(new BAISTGolfCourseDbContext());

            var teeTime = teeTimeRepo.GetWithReservationsById(model.TeeTimeID);

            foreach (var member in model.PotentialReservations)
            {
                var reservation = new Reservations
                {
                    DateCreated = DateTime.Now,
                    TeeTimeID   = model.TeeTimeID,
                    MemberID    = member.MemberID,
                    Status      = member.Status,
                    IsApproved  = false,
                    Type        = Enums.ReservationType.Standing
                };

                teeTime.Reservations.Add(reservation);
            }

            teeTime.Status = Enums.TeeTimeStatus.Closed;

            teeTimeRepo.SaveChanges();
        }