Ejemplo n.º 1
0
        private string GetResultFromStar(Activity msg)
        {
            try
            {
                var request = CreateRequest(msg.Text, GetRegion());

                GetTendersResponse response = starService.GetTenders(request);

                Presenter presenter = PresenterFactory.GetPresenter(msg.ChannelId);

                if (response.Tenders.TotalRowsk__BackingField > 0)
                {
                    presenter.AddFoundInRegionHeader(msg.Text, GetRegion());
                    presenter.BuildResult(response);
                    presenter.BuildSearhLink(response.Tenders.Itemsk__BackingField.Count(), GetRegion());

                    if (String.IsNullOrEmpty(GetRegion()))
                    {
                        presenter.WarningNoRegion();
                    }

                    return(presenter.Result);
                }
                else
                {
                    presenter.NotFound(msg.Text);
                    return($"К сожалению, по запросу **{msg.Text}** ничего найти не удалось, попробуй перефразировать запрос");
                }
            }
            catch (Exception exception)
            {
                //TODO: Add error logging
                System.Diagnostics.Trace.TraceError(exception.Message, exception.StackTrace);
                return("Упс, что-то пошло не так... :(");
            }
        }