コード例 #1
0
        public async Task AddShipmentTokens(LiquidObject liquidObject, Shipment shipment, Order order, Store store, Language language)
        {
            var liquidShipment = new LiquidShipment(shipment, order, store, language);
            var productService = _serviceProvider.GetRequiredService <IProductService>();

            foreach (var shipmentItem in shipment.ShipmentItems)
            {
                var orderitem = order.OrderItems.FirstOrDefault(x => x.Id == shipmentItem.OrderItemId);
                var product   = await productService.GetProductById(shipmentItem.ProductId);

                var liquidshipmentItems = new LiquidShipmentItem(shipmentItem, shipment, order, orderitem, product, language);
                liquidshipmentItems.ShowSkuOnProductDetailsPage = _catalogSettings.ShowSkuOnProductDetailsPage;
                string sku = "";
                if (product != null)
                {
                    sku = product.FormatSku(orderitem.AttributesXml, _productAttributeParser);
                }

                liquidshipmentItems.ProductSku = WebUtility.HtmlEncode(sku);

                liquidShipment.ShipmentItems.Add(liquidshipmentItems);
            }
            liquidObject.Shipment = liquidShipment;
            await _mediator.EntityTokensAdded(shipment, liquidShipment, liquidObject);
        }
コード例 #2
0
        public async Task <LiquidShipment> Handle(GetShipmentTokensCommand request, CancellationToken cancellationToken)
        {
            var liquidShipment = new LiquidShipment(request.Shipment, request.Order, request.Store, request.Language);

            foreach (var shipmentItem in request.Shipment.ShipmentItems)
            {
                var orderitem = request.Order.OrderItems.FirstOrDefault(x => x.Id == shipmentItem.OrderItemId);
                var product   = await _productService.GetProductById(shipmentItem.ProductId);

                var liquidshipmentItems = new LiquidShipmentItem(shipmentItem, request.Shipment, request.Order, orderitem, product, request.Language);
                liquidShipment.ShipmentItems.Add(liquidshipmentItems);
            }
            return(liquidShipment);
        }
コード例 #3
0
        public async Task <LiquidShipment> Handle(GetShipmentTokensCommand request, CancellationToken cancellationToken)
        {
            var liquidShipment = new LiquidShipment(request.Shipment, request.Order, request.Store, request.Language);

            foreach (var shipmentItem in request.Shipment.ShipmentItems)
            {
                var orderitem = request.Order.OrderItems.FirstOrDefault(x => x.Id == shipmentItem.OrderItemId);
                var product   = await _productService.GetProductById(shipmentItem.ProductId);

                var    liquidshipmentItems = new LiquidShipmentItem(shipmentItem, request.Shipment, request.Order, orderitem, product, request.Language);
                string sku = "";
                if (product != null)
                {
                    sku = product.FormatSku(orderitem.AttributesXml, _productAttributeParser);
                }

                liquidshipmentItems.ProductSku = WebUtility.HtmlEncode(sku);

                liquidShipment.ShipmentItems.Add(liquidshipmentItems);
            }
            return(liquidShipment);
        }