コード例 #1
0
        private void ShowServiceState(string itemId, ITurnContext turnContext)
        {
            QueuedItem item = GetQueuedService(itemId);

            if (item != null)
            {
                OperationFinished?.Invoke(turnContext, item.GetCurrentState());
            }
            else
            {
                OperationFinished?.Invoke(turnContext, ConversationWords.GetRandomValueFromList(ConversationWords.emptyServicePhrases));
            }
        }
コード例 #2
0
        private void AskForServiceState(ActionOnItem actionOnItem, ITurnContext turnContext)
        {
            if (!IsValidServiceId(actionOnItem.itemName))
            {
                OperationFinished?.Invoke(turnContext, ConversationWords.GetRandomValueFromList(ConversationWords.emptyServicePhrases));
                return;
            }
            QueuedItem item = GetQueuedService(actionOnItem.itemName);

            if (item != null)
            {
                ShowServiceState(item.Id, turnContext);
            }
            else
            {
                OperationFinished?.Invoke(turnContext, ConversationWords.GetRandomValueFromList(ConversationWords.emptyServicePhrases));
            }
        }
コード例 #3
0
        private void RequestService(ActionOnItem actionOnItem, ITurnContext turnContext)
        {
            if (!IsValidServiceId(actionOnItem.itemName))
            {
                OperationFinished?.Invoke(turnContext, ConversationWords.GetRandomValueFromList(ConversationWords.emptyServicePhrases));
                return;
            }
            QueuedItem item = GetQueuedService(actionOnItem.itemName);

            if (item != null)
            {
                AddUserToServiceQueue(turnContext.Activity.From.Name, item, turnContext);
            }
            else
            {
                CreateQueuedService(turnContext.Activity.From.Name, actionOnItem.itemName);
                OperationFinished?.Invoke(turnContext, $"{actionOnItem.itemName} ha sido reservado por {turnContext.Activity.From.Name}");
            }
        }
コード例 #4
0
        private void SetServiceFree(ActionOnItem actionOnItem, ITurnContext turnContext)
        {
            if (!IsValidServiceId(actionOnItem.itemName))
            {
                OperationFinished?.Invoke(turnContext, ConversationWords.GetRandomValueFromList(ConversationWords.emptyServicePhrases));
                return;
            }
            QueuedItem item = GetQueuedService(actionOnItem.itemName);

            if (item == null)
            {
                OperationFinished?.Invoke(turnContext, ConversationWords.GetRandomValueFromList(ConversationWords.emptyServicePhrases));
                return;
            }
            if (item.IsCurrentOwner(turnContext.Activity.From.Name))
            {
                RemoveOwnerFromService(item, turnContext);
                return;
            }
            OperationFinished?.Invoke(turnContext, ConversationWords.GetRandomValueFromList(ConversationWords.authorizationErrors));
        }