Пример #1
0
        public void AddGuest(DTO.Guest newDTOGuest)
        {
            Guest newModelGuest = new Guest();

            convertToModelGuest(newDTOGuest, newModelGuest);
            try
            {
                using (var db = new GuestAppContext())
                {
                    var existingGuest = db.Guests.Find(newDTOGuest.Id);
                    if (existingGuest != null)
                    {
                        db.EventsGuests.Add(new EventGuest {
                            EventId = _currentEvent.Id, GuestId = newDTOGuest.Id
                        });
                    }
                    else
                    {
                        db.EventsGuests.Add(new EventGuest {
                            EventId = _currentEvent.Id, Guest = newModelGuest
                        });
                    }
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                MessageBoxError(ex.Message);
            }
        }
Пример #2
0
        public async Task <List <DTO.Guest> > GetGuestListAsync()
        {
            try
            {
                using (var db = new GuestAppContext())
                {
                    var usersEvents = await db.Events.Where(e => e.UserId == _userId)
                                      .Include(e => e.EventGuests)
                                      .ThenInclude(eg => eg.Guest)
                                      .ThenInclude(g => g.Region)
                                      .Include(e => e.EventGuests)
                                      .ThenInclude(eg => eg.Guest)
                                      .ThenInclude(g => g.City)
                                      .ToListAsync();

                    var guestList = new List <Guest>();
                    foreach (var Event in usersEvents)
                    {
                        foreach (var eventGuest in Event.EventGuests)
                        {
                            guestList.Add(eventGuest.Guest);
                        }
                    }
                    return(guestList.OrderBy(g => g.LastName).ToList().ToDTOGuestList());
                }
            }
            catch (Exception ex)
            {
                MessageBoxError(ex.Message);
            }
            return(null);
        }
Пример #3
0
        public List <DTO.Guest> GetEventGuests()
        {
            using (var db = new GuestAppContext())
            {
                var eventGuests = db.EventsGuests.Where(eg => eg.EventId == _currentEvent.Id).Join(db.Guests,
                                                                                                   eg => eg.GuestId,
                                                                                                   g => g.Id,
                                                                                                   (eventsGuests, guests) =>
                                                                                                   new Model.Guest
                {
                    Id          = guests.Id,
                    GuestTitle  = guests.GuestTitle,
                    FirstNames  = guests.FirstNames,
                    FullName    = guests.FullName,
                    LastName    = guests.LastName,
                    HouseNumber = guests.HouseNumber,
                    Street      = guests.Street,
                    Region      = guests.Region,
                    City        = guests.City,
                    Zip         = guests.Zip,
                    IsFamily    = guests.IsFamily
                }).ToList();

                var orderdGuests = eventGuests.OrderBy(jg => jg.LastName).ToList();
                return(orderdGuests.ToDTOGuestList());
            }
        }
Пример #4
0
 public List <Event> GetAllEvents()
 {
     using (var db = new GuestAppContext())
     {
         return(db.Events.Where(e => e.UserId == User.Id).ToList());;
     }
 }
Пример #5
0
 public void DeleteUser(string usersId)
 {
     using (var db = new GuestAppContext())
     {
         var modelUser = db.Users.Find(usersId);
         db.Users.Remove(modelUser);
     }
 }
Пример #6
0
 public void EditUser(DTO.User user)
 {
     using (var db = new GuestAppContext())
     {
         var modelUser = db.Users.Find(user.Id);
         modelUser.Email = user.Email;
     }
 }
Пример #7
0
        public void AddUser(DTO.User user)
        {
            var modelUser = Mapper.UserMapper(user, new Model.User());

            using (var db = new GuestAppContext())
            {
                db.Users.Add(modelUser);
            }
        }
Пример #8
0
        public DTO.User GetUser(string usersId)
        {
            Model.User modelUser;
            using (var db = new GuestAppContext())
            {
                modelUser = db.Users.Find(usersId);
            }
            var dtoUser = Mapper.UserMapper(modelUser, new DTO.User());

            return(dtoUser);
        }
Пример #9
0
 public List <DTO.Guest> SPSearch(DTO.Guest SearchGuest)
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             return(db.Guests.FromSqlRaw(String.Format("EXECUTE GuestFinder {0},{1},{2},{3},{4},{5};", _userId, _currentEvent.Id, SearchGuest.FullName, SearchGuest.Street, SearchGuest.City, SearchGuest.Region)).ToList().ToDTOGuestList());
         }
     }
     catch (Exception ex)
     {
         MessageBoxError(ex.Message);
     }
     return(null);
 }
Пример #10
0
 public int?GetCityId(string city)
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             var dbCity = db.Cities.SingleOrDefault(c => c.Name == city);
             return(dbCity.Id);
         }
     }
     catch (Exception ex)
     {
         MessageBoxError(ex.Message);
     }
     return(null);
 }
Пример #11
0
 public void DeleteGuestFromAllEvents(DTO.Guest SelectedGuest)
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             var guestToDelete = db.Guests.Find(SelectedGuest.Id);
             db.Guests.Remove(guestToDelete);
             db.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         MessageBoxError(ex.InnerException.Message);
     }
 }
Пример #12
0
 public void RemoveGuestFromCurrentEvent(DTO.Guest selectedGuest)
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             var guestToDelete = db.EventsGuests.SingleOrDefault(eg => eg.EventId == _currentEvent.Id && eg.GuestId == selectedGuest.Id);
             db.EventsGuests.Remove(guestToDelete);
             db.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         MessageBoxError(ex.InnerException.Message);
     }
 }
Пример #13
0
 public void DeleteEvent(Model.Event eventToDelete)
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             var eventToRemove = db.Events.Find(eventToDelete.Id);
             db.Events.Remove(eventToRemove);
             db.SaveChanges();
         }
     }
     catch (Exception e)
     {
         throw;
     }
 }
Пример #14
0
 public int?GetRegionId(string region)
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             var dbRegion = db.Regions.SingleOrDefault(r => r.Name == region);
             return(dbRegion.Id);
         }
     }
     catch (Exception ex)
     {
         MessageBoxError(ex.Message);
     }
     return(null);
 }
Пример #15
0
        public void AddEvent(DTO.Event newEvent)
        {
            var modelEvent = Mapper.EventMapper(newEvent, new Model.Event());

            try
            {
                using (var db = new GuestAppContext())
                {
                    modelEvent.UserId = User.Id;
                    db.Events.Add(modelEvent);
                    db.SaveChanges();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #16
0
        public void EditEvent(DTO.Event eventToEdit, DTO.Event modifiedEvent)
        {
            try
            {
                using (var db = new GuestAppContext())
                {
                    var modelEvent = db.Events.Find(eventToEdit.Id);
                    modelEvent.Name = modifiedEvent.Name;
                    modelEvent.Date = modifiedEvent.Date;

                    db.SaveChanges();
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Пример #17
0
 public void EditGuestDetails()
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             var modelGuestToEdit = db.Guests.Find(UsersSelectedGuestToEdit.Id);
             convertToModelGuest(UsersSelectedGuestToEdit, modelGuestToEdit);
             db.SaveChanges();
         }
     }
     catch (Exception ex)
     {
         var message = MessageBox.Show("There seems to be an error, make sure that there are no fields left empty!" +
                                       Environment.NewLine + ex.Message,
                                       "Error!", MessageBoxButton.OK, MessageBoxImage.Error);
         throw;
     }
 }
Пример #18
0
 public List <DTO.Guest> GetGuestList()
 {
     try
     {
         using (var db = new GuestAppContext())
         {
             var usersEventsIds = db.Events.Where(e => e.UserId == _userId).Select(e => e.Id);
             var eventsGuestsId = db.EventsGuests.Where(eg => usersEventsIds.Contains(eg.EventId)).Select(eg => eg.GuestId);
             var usersGuests    = db.Guests.Where(g => eventsGuestsId.Contains(g.Id))
                                  .Include(g => g.City)
                                  .Include(g => g.Region).ToList();
             return(usersGuests.ToDTOGuestList());
         }
     }
     catch (Exception ex)
     {
         MessageBoxError(ex.Message);
     }
     return(null);
 }