Ejemplo n.º 1
0
 public EbayOrderModel(GetOrderResponseModel data, Data.Entities.EbayOrder orderEntity)
 {
     if (data.fulfillmentStartInstructions.Any() && data.fulfillmentStartInstructions[0].shippingStep?.shipTo?.contactAddress?.countryCode != "GB")
     {
         InitInternational(data, orderEntity);
     }
     else
     {
         Init(data, orderEntity);
     }
 }
Ejemplo n.º 2
0
            public EbayOrderModelItem(Lineitem item, Data.Entities.EbayOrder orderEntity, bool international)
            {
                var entity = orderEntity.OrderItems.Cast <Data.Entities.EbayOrderItem>().FirstOrDefault(x =>
                                                                                                        x.LegacyItemId == item.legacyItemId &&
                                                                                                        x.LegacyVariationId == (item.legacyVariationId ?? "0") &&
                                                                                                        x.LineItemId == item.lineItemId);

                if (international)
                {
                    InitInternational(item, entity);
                }
                else
                {
                    Init(item, entity);
                }
            }
Ejemplo n.º 3
0
        private void Init(GetOrderResponseModel data, Data.Entities.EbayOrder orderEntity)
        {
            IsInternationalOrder = false;
            OrderNumber          = data.orderId;
            OrderDate            = data.creationDate.ToString("yyyy-MM-dd");
            if (data.paymentSummary.payments[0].paymentDate != DateTime.MinValue)
            {
                OrderPaid = data.paymentSummary.payments[0].paymentDate.ToString("yyyy-MM-dd");
            }
            else
            {
                OrderPaid = "";
            }
            SubTotal         = data.pricingSummary.priceSubtotal.ToString();
            PostagePackaging = data.pricingSummary.deliveryCost.Difference(data.pricingSummary.deliveryDiscount);
            if (data.pricingSummary.priceDiscount != null)
            {
                Discount = data.pricingSummary.priceDiscount.ToString();
            }
            else
            {
                Discount = "£0.00";
            }
            TotalDecimal = data.pricingSummary.total.ToCurrency();
            Total        = data.pricingSummary.total.ToString();
            if (data.pricingSummary.tax != null)
            {
                Tax = data.pricingSummary.tax.ToString();
            }
            if (data.fulfillmentStartInstructions.Any() && data.fulfillmentStartInstructions[0].shippingStep?.shipTo != null)
            {
                Buyer = new EbayOrderModelBuyer(data.fulfillmentStartInstructions[0].shippingStep.shipTo);
            }
            Items = data.lineItems.Select(x => new EbayOrderModelItem(x, orderEntity, false));

            HasDiscount = string.IsNullOrEmpty(Discount) || Items.Any(x => string.IsNullOrEmpty(x.Discount));
            HasVariants = Items.Any(x => !string.IsNullOrEmpty(x.LegacyVariationId));
        }