当前位置: 首页>>代码示例>>C#>>正文


C# DataClassesDataContext.XEROPayments方法代码示例

本文整理汇总了C#中DataClassesDataContext.XEROPayments方法的典型用法代码示例。如果您正苦于以下问题:C# DataClassesDataContext.XEROPayments方法的具体用法?C# DataClassesDataContext.XEROPayments怎么用?C# DataClassesDataContext.XEROPayments使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在DataClassesDataContext的用法示例。


在下文中一共展示了DataClassesDataContext.XEROPayments方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: PostPaymentsToXero

        public HttpResponseMessage PostPaymentsToXero(SearchFilter searchFilter)
        {
            using (DataClassesDataContext context = new DataClassesDataContext())
            {
                try
                {
                    var payments = context.XEROPayments(searchFilter.StartDate, searchFilter.EndDate);
                    foreach (var payment in payments)
                    {
                        PaymentToInvoiceViewModelConverter invoiceConverter = new PaymentToInvoiceViewModelConverter();
                        try
                        {
                            InvoiceViewModel invoiceViewModel = invoiceConverter.Convert(payment);
                            invoicesToPostList.Add(invoiceViewModel);
                        }
                        catch (InvoiceValidationException e)
                        {
                            ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
                            return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
                        }
                        catch (CustomerDoesNotExistException e)
                        {
                            ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
                            return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
                        }
                    }
                }
                catch (System.Data.SqlClient.SqlException)
                {
                    ModelStateDictionary dictionary = errorStringConvertor.Convert("To many invoices in daterange");
                    return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
                }
            }
            try
            {
                xeroLogic.ExportInvoices(invoicesToPostList);
            }
            catch (XeroApiLimitException e)
            {
                ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
                return this.Request.CreateErrorResponse(HttpStatusCode.BadGateway, dictionary);
            }
            catch (XeroException e)
            {
                ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
                return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
            }
            catch (XeroApiValidationException e)
            {
                ModelStateDictionary dictionary = errorStringConvertor.Convert(e.Message);
                return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
            }
            catch (Exception)
            {
                ModelStateDictionary dictionary = errorStringConvertor.Convert("Something went wrong. Please check the data and try again.");
                return this.Request.CreateErrorResponse(HttpStatusCode.InternalServerError, dictionary);
            }

            return this.Request.CreateResponse(HttpStatusCode.OK);
        }
开发者ID:markplaatsman,项目名称:XeroIntegration,代码行数:60,代码来源:ExportPaymentsToXeroWebApiController.cs

示例2: GetPayment

        public HttpResponseMessage GetPayment(SearchFilter searchFilter)
        {
            List<PaymentViewModel> resultList = new List<PaymentViewModel>();
            using (DataClassesDataContext context = new DataClassesDataContext())
            {
                try
                {
                    var payments = context.XEROPayments(searchFilter.StartDate, searchFilter.EndDate);

                    foreach (var payment in payments)
                    {
                        PaymentViewModel paymentViewModel = new PaymentViewModel()
                        {
                            InvoiceNumber = payment.InvoiceNumber,
                            ContactName = payment.ContactName,
                            Email = payment.EmailAddress,
                            Address1 = payment.POAddressLine1,
                            Address2 = payment.POAddressLine2,
                            Address3 = payment.POAddressLine3,
                            City = payment.POCity,
                            Region = payment.PORegion,
                            Country = payment.POCountry,
                            PostalCode = payment.POPostalCode,
                            InvoiceDate = payment.InvoiceDate.GetValueOrDefault().ToString("dd-MM-yy"),
                            DueDate = payment.DueDate.GetValueOrDefault().ToString("dd-MM-yy"),
                            InventoryItemCode = payment.InventoryItemCode.ToString(),
                            Description = payment.Description,
                            Quantity = payment.Quantity.ToString(),
                            UnitAmount = payment.UnitAmount.ToString(),
                            Discount = payment.Discount.ToString(),
                            AccountCode = payment.AccountCode.ToString(),
                            TaxType = payment.TaxType,
                            TrackingName = payment.TrackingName1,
                            TrackingOption = payment.TrackingOption1,
                            Reference = payment.Reference,
                            BrandingTheme = payment.BrandingTheme
                        };

                        resultList.Add(paymentViewModel);
                    }
                }
                catch (System.Data.SqlClient.SqlException)
                {
                    ModelStateDictionary dictionary = errorStringConvertor.Convert("To many payments in daterange");
                    return this.Request.CreateErrorResponse(HttpStatusCode.BadRequest, dictionary);
                }

                return this.Request.CreateResponse(HttpStatusCode.OK, resultList);
            }
        }
开发者ID:markplaatsman,项目名称:XeroIntegration,代码行数:50,代码来源:PaymentWebApiController.cs


注:本文中的DataClassesDataContext.XEROPayments方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。