protected override LineItem ToOrderModel(CartModule.Core.Model.LineItem lineItem)
        {
            var cartLineItem  = (DemoCartLineItem)lineItem;
            var orderLineItem = (DemoOrderLineItem)base.ToOrderModel(lineItem);

            orderLineItem.Id = cartLineItem.Id;
            orderLineItem.ConfiguredGroupId = cartLineItem.ConfiguredGroupId;
            return(orderLineItem);
        }
예제 #2
0
        protected virtual LineItem ToOrderModel(CartModule.Core.Model.LineItem lineItem)
        {
            if (lineItem == null)
            {
                throw new ArgumentNullException(nameof(lineItem));
            }

            var retVal = AbstractTypeFactory <LineItem> .TryCreateInstance();

            retVal.CatalogId             = lineItem.CatalogId;
            retVal.CategoryId            = lineItem.CategoryId;
            retVal.Comment               = lineItem.Note;
            retVal.Currency              = lineItem.Currency;
            retVal.Height                = lineItem.Height;
            retVal.ImageUrl              = lineItem.ImageUrl;
            retVal.IsGift                = lineItem.IsGift;
            retVal.Length                = lineItem.Length;
            retVal.MeasureUnit           = lineItem.MeasureUnit;
            retVal.Name                  = lineItem.Name;
            retVal.PriceId               = lineItem.PriceId;
            retVal.ProductId             = lineItem.ProductId;
            retVal.ProductType           = lineItem.ProductType;
            retVal.Quantity              = lineItem.Quantity;
            retVal.Sku                   = lineItem.Sku;
            retVal.TaxPercentRate        = lineItem.TaxPercentRate;
            retVal.TaxType               = lineItem.TaxType;
            retVal.Weight                = lineItem.Weight;
            retVal.WeightUnit            = lineItem.WeightUnit;
            retVal.Width                 = lineItem.Width;
            retVal.FulfillmentCenterId   = lineItem.FulfillmentCenterId;
            retVal.FulfillmentCenterName = lineItem.FulfillmentCenterName;

            retVal.DiscountAmount = lineItem.DiscountAmount;
            retVal.Price          = lineItem.ListPrice;

            retVal.FulfillmentLocationCode = lineItem.FulfillmentLocationCode;

            if (lineItem.DynamicProperties != null)
            {
                retVal.DynamicProperties = lineItem.DynamicProperties.Select(ToOrderModel).ToList();
            }

            if (lineItem.Discounts != null)
            {
                retVal.Discounts = lineItem.Discounts.Select(ToOrderModel).ToList();
            }
            retVal.TaxDetails = lineItem.TaxDetails;
            return(retVal);
        }