示例#1
0
        public async Task <IActionResult> Index()
        {
            var queues = _queueService.FindAll();

            var availableRooms = SettingsHandler.ApplicationSettings.AvailableRooms;

            RoomsViewModel roomVMElement = new RoomsViewModel();

            foreach (var room in availableRooms)
            {
                int usersQuantity = queues.Where(q => q.RoomNo.Equals(room)).ToList().Count();
                var queue         = queues.Where(q => q.RoomNo.Equals(room)).OrderByDescending(t => t.Timestamp).FirstOrDefault();
                if (queue != null)
                {
                    var user = _repo.User.FindByCondition(u => u.Id == queue.UserId).FirstOrDefault();

                    roomVMElement.Queue    = queue;
                    roomVMElement.RoomNo   = room;
                    roomVMElement.UserName = user.UserName;
                    roomVMElement.QuantityOfAssignedUsers = usersQuantity;
                }
                else
                {
                    roomVMElement.RoomNo = room;
                }
                RoomsVM.Add(roomVMElement);
                roomVMElement = new RoomsViewModel();
            }

            return(View(RoomsVM));
        }
示例#2
0
        public IHttpActionResult All()
        {
            try
            {
                BLRooms rooms     = new BLRooms();
                var     room_list = rooms.All();

                RoomsVM obj = new RoomsVM();

                return(Ok(obj.CreateList(room_list)));
            }

            catch (Exception ex)
            {
                return(InternalServerError(ex));
            }
        }
示例#3
0
        public async Task <IActionResult> Details(string roomNo)
        {
            var queues = _queueService.FindAll();

            queues = queues.Where(q => q.RoomNo.Equals(roomNo)).OrderByDescending(q => q.Timestamp).ToList();
            if (queues != null)
            {
                foreach (var queue in queues)
                {
                    queue.Timestamp = queue.Timestamp.ToLocalTime();
                    var roomVMElement = new RoomsViewModel()
                    {
                        Queue    = queue,
                        RoomNo   = roomNo,
                        UserName = _repo.User.FindByCondition(u => u.Id == queue.UserId).Select(u => u.UserName).FirstOrDefault()
                    };
                    RoomsVM.Add(roomVMElement);
                }
            }
            return(View(RoomsVM));
        }
 //
 // GET: /Admin/Rooms/
 public ActionResult Index(int PageNo = 1, int PageSize = 10, string SearchTerm = "")
 {
     try
     {
         string     query    = "PageNo=" + PageNo + "&PageSize=" + PageSize + "&SearchTerm=" + SearchTerm;
         RoomsAPIVM apiModel = objAPI.GetRecordByQueryString <RoomsAPIVM>("configuration", "rooms", query);
         RoomsVM    model    = new RoomsVM();
         model.Rooms      = apiModel.Rooms;
         model.PagingInfo = new PagingInfo {
             CurrentPage = PageNo, ItemsPerPage = PageSize, TotalItems = apiModel.TotalRecords
         };
         if (Request.IsAjaxRequest())
         {
             return(PartialView("_pvRoomsList", model));
         }
         return(View(model));
     }
     catch (AuthorizationException)
     {
         TempData["ErrMsg"] = "Your Login Session has expired. Please Login Again";
         return(RedirectToAction("Login", "Account", new { Area = "" }));
     }
 }
示例#5
0
 protected override void OnNavigatedTo(NavigationEventArgs e)
 {
     DataContext = new RoomsVM();
 }