示例#1
0
        public ActionResult Edit(EditEventViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                var context = new CheckInDbContext();
                ViewBag.States = context.States.ToList();
                return(View(viewModel));
            }

            using (var context = new CheckInDbContext())
            {
                var eventDb = context.Events.Include(s => s.Address).FirstOrDefault(x => x.Id == viewModel.Id);
                eventDb.Address.AddressName = viewModel.Address;
                eventDb.Address.StateId     = viewModel.StateId;
                eventDb.Address.CityName    = viewModel.City;
                eventDb.Address.ZipCode     = viewModel.ZipCode;
                eventDb.Date         = Convert.ToDateTime(string.Format("{0},{1}", viewModel.Date, viewModel.Time));
                eventDb.PlaceOfEvent = viewModel.PlaceOfEvent;
                eventDb.Name         = viewModel.NameOfEvent;
                eventDb.ModifiedOn   = DateTime.Now;
                eventDb.Modifiedby   = User.Identity.GetUserId();

                context.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
        public ActionResult Confirm(IList <GuestViewModel> viewModel)
        {
            //do poprawy
            using (var context = new CheckInDbContext())
            {
                var viewModelIRN = viewModel[0].InvitationRecordNumber;
                var invitations  = context.Invitations.Include(s => s.Guests)
                                   .FirstOrDefault(x => x.InvitationRecordNumber == viewModelIRN);

                foreach (var guestDb in invitations.Guests)
                {
                    foreach (var guestViewModel in viewModel)
                    {
                        if (guestDb.Id == guestViewModel.Id)
                        {
                            guestDb.IsConfirmedMainGuest  = guestViewModel.IsConfirmedMainGuest;
                            guestDb.IsConfirmedExtraGuest = guestViewModel.IsConfirmedExtraGuest;
                        }
                    }
                }

                context.SaveChanges();
            }
            return(RedirectToAction("Index", "Home"));
        }
示例#3
0
 public void DeleteInvitation(int id)
 {
     using (var context = new CheckInDbContext()){
         var customer = context.Invitations.FirstOrDefault(s => s.Id == id);
         customer.IsActive   = false;
         customer.Modifiedby = User.Identity.GetUserId();
         customer.ModifiedOn = DateTime.Now;
         context.SaveChanges();
     }
 }
示例#4
0
 public void DeleteEvent(int id)
 {
     using (var contex = new CheckInDbContext())
     {
         var currentEvent = contex.Events.FirstOrDefault(s => s.Id == id);
         currentEvent.IsActive   = false;
         currentEvent.ModifiedOn = DateTime.Now;
         currentEvent.Modifiedby = User.Identity.GetUserId();
         contex.SaveChanges();
     }
 }
示例#5
0
        public ActionResult AddInvatition(AddGuestViewModel viewModel)
        {
            var modelContext = new CheckInDbContext();

            if (!ModelState.IsValid)
            {
                ViewBag.States = modelContext.States.ToList();
                return(View("AddInvitation"));
            }

            using (var context = new CheckInDbContext())
            {
                string invitationNumber;

                do
                {
                    invitationNumber = InivationNumberGenerator.InvitationNumber();
                } while (context.InvitationNumbersLists.Any(x => x.InvitationNumber == invitationNumber));


                var newInvitation = new Invitation()
                {
                    CreatedBy  = User.Identity.GetUserId(),
                    Modifiedby = User.Identity.GetUserId(),
                    CreatedOn  = DateTime.Now,
                    ModifiedOn = DateTime.Now,
                    GroupName  = viewModel.GroupName,
                    Address    = new Address()
                    {
                        AddressName = viewModel.Address,
                        CityName    = viewModel.City,
                        StateId     = viewModel.StateId,
                        ZipCode     = viewModel.ZipCode
                    },
                    Guests   = viewModel.Guest.ToList(),
                    EventId  = viewModel.EventId,
                    IsActive = true,
                    InvitationRecordNumber = invitationNumber,
                };
                context.Invitations.Add(newInvitation);
                InvitationNumbersList newNumber = new InvitationNumbersList {
                    InvitationNumber = invitationNumber
                };
                context.InvitationNumbersLists.Add(newNumber);
                context.SaveChanges();
            }

            return(RedirectToAction("Index", new { eventId = viewModel.EventId }));
        }
示例#6
0
        public ActionResult AddEvent(AddEventViewModel viewModel)
        {
            AddEventViewModel addEvent     = new AddEventViewModel();
            CheckInDbContext  contextModel = new CheckInDbContext();

            if (!ModelState.IsValid)
            {
                ViewBag.States     = (from o in contextModel.States select o).ToList();
                ViewBag.EventTypes = (from o in contextModel.EventTypes select o).ToList();

                return(View("AddEvent", addEvent));
            }
            using (var context = new CheckInDbContext())
            {
                var newEvent = new Event
                {
                    CreatedBy    = User.Identity.GetUserId(),
                    Modifiedby   = User.Identity.GetUserId(),
                    CreatedOn    = DateTime.Now,
                    ModifiedOn   = DateTime.Now,
                    Name         = viewModel.NameOfEvent,
                    Date         = Convert.ToDateTime(string.Format("{0},{1}", viewModel.Date, viewModel.Time)),
                    PlaceOfEvent = viewModel.PlaceOfEvent,
                    EventTypeId  = viewModel.EventTypeId,
                    IsActive     = true,
                    Address      = new Address()
                    {
                        AddressName = viewModel.Address,
                        ZipCode     = viewModel.ZipCode,
                        CityName    = viewModel.City,
                        StateId     = viewModel.StateId
                    }
                };
                context.Events.Add(newEvent);
                context.SaveChanges();
            }


            return(RedirectToAction("Index"));
        }
示例#7
0
        public ActionResult Edit(EditGuestViewModel viewModel)
        {
            var contex = new CheckInDbContext();

            if (!ModelState.IsValid)
            {
                ViewBag.States = contex.States.ToList();
                return(View(viewModel));
            }
            // To Do I have to
            using (var context = new CheckInDbContext())
            {
                var invitation = context.Invitations.Where(s => s.Id == viewModel.Id)
                                 .FirstOrDefault();
                var temp = invitation.Guests.Count - 1 < viewModel.Guest.Count;

                if (invitation.Guests.Count - 1 < viewModel.Guest.Count)
                {
                    invitation.Guests.AddRange(viewModel.Guest.Skip(Convert.ToInt32(invitation.Guests.Count)));
                }

                invitation.GroupName           = viewModel.GroupName;
                invitation.Address.AddressName = viewModel.Address;
                invitation.Address.CityName    = viewModel.City;
                invitation.Address.StateId     = viewModel.StateId;

                for (int i = 0; i < viewModel.Guest.Count; i++)
                {
                    invitation.Guests[i].FirstName    = viewModel.Guest[i].FirstName;
                    invitation.Guests[i].LastName     = viewModel.Guest[i].LastName;
                    invitation.Guests[i].IsActive     = viewModel.Guest[i].IsActive;
                    invitation.Guests[i].IsExtraGuest = viewModel.Guest[i].IsExtraGuest;
                }

                context.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }