public async Task <DequeuePositionResult> RemoveFromQueue(DequeuePosition item)
        {
            if (item is null)
            {
                throw new ArgumentNullException(nameof(item));
            }

            try
            {
                QueueItem nextItem = await _repository.GetNextItem(item.ServiceType);

                if (nextItem is null)
                {
                    return(null);
                }

                return(new DequeuePositionResult
                {
                    CustomerID = nextItem.UserID,
                    CustomerNumberInQueue = nextItem.UserNumber
                });
            }
            catch (Exception e)
            {
                return(null);
            }
        }