protected override void DeleteRelatedItem(CommerceDeleteRelatedItem deleteRelatedItemOperation)
        {
            string shipmentId = GetSearchModelId(deleteRelatedItemOperation, MetadataDefinitions.Shipment.EntityName, true);

            if (!String.IsNullOrEmpty(shipmentId))
            {
                Shipment deletingShipment = GetShipmentFromCachedOrderGroup(shipmentId);
                CachedOrderGroup.GetDefaultOrderForm().Shipments.Remove(deletingShipment);
            }
            else
            {
                CachedOrderGroup.GetDefaultOrderForm().Shipments.Clear();
            }
        }
Exemplo n.º 2
0
        public void DeleteItem(Guid userId, Guid cartId, Guid itemId, bool runPipelines = false)
        {
            var updateOrder = new CommerceUpdate <Basket,
                                                  CommerceModelSearch <Basket>,
                                                  CommerceBasketUpdateOptionsBuilder>();

            updateOrder.SearchCriteria.Model.UserId     = userId.ToString();
            updateOrder.SearchCriteria.Model.BasketType = 0;
            updateOrder.SearchCriteria.Model.Id         = cartId.ToCommerceServerFormat();
            updateOrder.UpdateOptions.RefreshBasket     = runPipelines;

            var lineItemUpdate = new CommerceDeleteRelatedItem <LineItem>(Basket.RelationshipName.LineItems);

            lineItemUpdate.SearchCriteria.Model.Id = itemId.ToCommerceServerFormat();
            updateOrder.RelatedOperations.Add(lineItemUpdate);

            FoundationService.ExecuteRequest(updateOrder.ToRequest());
        }