示例#1
0
        private string GetResource(ExtendedReportOption option)
        {
            var pdfType = option == null ? "Pdf" :
                          option.PaymentOption == PaymentOption.WithoutPayment ? "Pdf" : "PdfWithPayments";
            var resource = $"{Client.ResourceUrl}{_documentType}/{_id}/{pdfType}";

            return(resource);
        }
示例#2
0
        private Dictionary <string, string> CreateQueryParams(ExtendedReportOption option)
        {
            var queryParams = new Dictionary <string, string>();

            if (option != null)
            {
                queryParams.Add("compressed", option.Compressed.ToString(CultureInfo.InvariantCulture));
                queryParams.Add("language", option.Language.ToString());
                if (option.PaymentOption == PaymentOption.WithOnlyEetPayment)
                {
                    queryParams.Add("onlyEetPayments", "true");
                }
            }

            return(queryParams);
        }
示例#3
0
        /// <summary>
        /// Get report.
        /// </summary>
        /// <param name="resource">Resource.</param>
        /// <param name="option">Option.</param>
        /// <returns>API result.</returns>
        protected ApiResult <string> GetBase(string resource, ExtendedReportOption option)
        {
            var queryParams = CreateQueryParams(option);

            return(Client.Get <string>(resource, queryParams));
        }
示例#4
0
        /// <summary>
        /// Get report.
        /// </summary>
        /// <param name="option">Option.</param>
        /// <returns>API result.</returns>
        protected ApiResult <string> GetBase(ExtendedReportOption option)
        {
            var resource = GetResource(option);

            return(GetBase(resource, option));
        }
 /// <summary>
 /// Get report.
 /// </summary>
 /// <param name="option">Option.</param>
 /// <returns>API result.</returns>
 public ApiResult <string> Get(ExtendedReportOption option = null)
 {
     return(GetBase(option));
 }
示例#6
0
        /// <summary>
        /// Get report.
        /// </summary>
        /// <param name="resource">Resource.</param>
        /// <param name="option">Option.</param>
        /// <param name="cancellationToken">Cancellation token.</param>
        /// <returns>API result.</returns>
        protected Task <ApiResult <string> > GetBaseAsync(string resource, ExtendedReportOption option, CancellationToken cancellationToken)
        {
            var queryParams = CreateQueryParams(option);

            return(Client.GetAsync <string>(resource, queryParams, cancellationToken));
        }
示例#7
0
        /// <summary>
        /// Get report.
        /// </summary>
        /// <param name="option">Option.</param>
        /// <param name="cancellationToken">Cancellation token.</param>
        /// <returns>API result.</returns>
        protected Task <ApiResult <string> > GetBaseAsync(ExtendedReportOption option, CancellationToken cancellationToken)
        {
            var resource = GetResource(option);

            return(GetBaseAsync(resource, option, cancellationToken));
        }
示例#8
0
 /// <summary>
 /// Get report.
 /// </summary>
 /// <param name="option">Option.</param>
 /// <param name="cancellationToken">Cancellation token.</param>
 /// <returns>API result.</returns>
 public Task <ApiResult <string> > GetAsync(ExtendedReportOption option = null, CancellationToken cancellationToken = default)
 {
     return(GetBaseAsync(option, cancellationToken));
 }