public int UpdateWaitList(int id, WalkInWaitList list) { //throw new NotImplementedException(); context.WalkInWaitLists.Attach(list); var entry = context.Entry(list); //Get assigned table // //var table = context.GuestTables.Where(t => t.TableNumber == list.ServedTableNumber); //var newTable = context.Entry(table); //newTable.State = EntityState.Modified; entry.State = EntityState.Modified; try { context.SaveChanges(); return(0); } catch (DbUpdateConcurrencyException dbUpdateConcurrencyException) { var msg = dbUpdateConcurrencyException.Message; return(1); } }
public void UpdateWaitList(int id, WalkInWaitList list) { //throw new NotImplementedException(); //Get the list based on guestId // WalkInWaitList wList = _waitListRepository.GetWalkInWaitListByGuestId(id); wList.UpdateDate = DateTime.Now; wList.StatusChangeTime = DateTime.Now; wList.WaitingStatus = list.WaitingStatus; wList.ServedTime = DateTime.Now; if (wList.WaitingStatus == "Waiting" || wList.WaitingStatus == "Available") { wList.ServedTableNumber = ""; } else { wList.ServedTableNumber = list.ServedTableNumber; } var completeCode = _waitListRepository.UpdateWaitList(id, wList); if (wList.WaitingStatus == "Served") { if (completeCode == 0) { //Get table by table number // var table = _tableManagementRepository.GetGuestTable(wList.ServedTableNumber, wList.OrganizationId); if (table != null) { table.TableStatus = "Occupied"; table.UpdateDate = DateTime.Now; table.LastUpdateTime = DateTime.Now; wList.ServedTime = DateTime.Now; _waitListRepository.UpdateTableStatus(table); } } } }
public void AddToWaitList(Domain.ViewModels.WaitListViewModel waitList) { //throw new NotImplementedException(); WalkInWaitList list = new WalkInWaitList( waitList.GuestGroupSize, waitList.OrganizationId, waitList.WaitingStatus, waitList.IsActive ); Guest guest = new Guest( waitList.GuestFirstName, waitList.GuestLastName, waitList.GuestContactTel, waitList.GuestContactEmail ); _waitListRepository.AddToWaitList(list, guest); }
public IHttpActionResult UpdateWaitList(int id, WalkInWaitList list) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _waitListService.UpdateWaitList(id, list); //Get guest info and send sms message - for production // var guest = _waitListService.GetGuestFromWaitList(list.GuestId); //Get organization name var org = _userProfileService.GetOrganizationById(list.OrganizationId); var to = guest.GuestContactTel; var msg = ""; if (list.WaitingStatus == "Available") { msg = "Dear " + guest.GuestFirstName + ", a table is available for you now. Please come to report to the front desk. Thanks."; } else { msg = "Dear " + guest.GuestFirstName + ", Welcome to " + org.Name + ". Thank you."; } //SendSmsMessage(); SendSmsMessageToGuest(to, msg); //For full testing and production return(Ok()); }