示例#1
0
        public virtual void MergePatch(IMergePatchProduct c)
        {
            IProductStateMergePatched e = Map(c);

            Apply(e);
        }
 public virtual void When(IMergePatchProduct c)
 {
     Update(c, ar => ar.MergePatch(c));
 }
示例#3
0
        protected virtual IProductStateMergePatched Map(IMergePatchProduct c)
        {
            var stateEventId            = new ProductEventId(c.ProductId, c.Version);
            IProductStateMergePatched e = NewProductStateMergePatched(stateEventId);

            e.ProductTypeId            = c.ProductTypeId;
            e.PrimaryProductCategoryId = c.PrimaryProductCategoryId;
            e.ManufacturerPartyId      = c.ManufacturerPartyId;
            e.FacilityId                 = c.FacilityId;
            e.IntroductionDate           = c.IntroductionDate;
            e.ReleaseDate                = c.ReleaseDate;
            e.SupportDiscontinuationDate = c.SupportDiscontinuationDate;
            e.SalesDiscontinuationDate   = c.SalesDiscontinuationDate;
            e.SalesDiscWhenNotAvail      = c.SalesDiscWhenNotAvail;
            e.InternalName               = c.InternalName;
            e.BrandName                = c.BrandName;
            e.Comments                 = c.Comments;
            e.ProductName              = c.ProductName;
            e.Description              = c.Description;
            e.PriceDetailText          = c.PriceDetailText;
            e.SmallImageUrl            = c.SmallImageUrl;
            e.MediumImageUrl           = c.MediumImageUrl;
            e.LargeImageUrl            = c.LargeImageUrl;
            e.DetailImageUrl           = c.DetailImageUrl;
            e.OriginalImageUrl         = c.OriginalImageUrl;
            e.DetailScreen             = c.DetailScreen;
            e.InventoryMessage         = c.InventoryMessage;
            e.InventoryItemTypeId      = c.InventoryItemTypeId;
            e.RequireInventory         = c.RequireInventory;
            e.QuantityUomId            = c.QuantityUomId;
            e.QuantityIncluded         = c.QuantityIncluded;
            e.PiecesIncluded           = c.PiecesIncluded;
            e.RequireAmount            = c.RequireAmount;
            e.FixedAmount              = c.FixedAmount;
            e.AmountUomTypeId          = c.AmountUomTypeId;
            e.WeightUomId              = c.WeightUomId;
            e.ShippingWeight           = c.ShippingWeight;
            e.ProductWeight            = c.ProductWeight;
            e.HeightUomId              = c.HeightUomId;
            e.ProductHeight            = c.ProductHeight;
            e.ShippingHeight           = c.ShippingHeight;
            e.WidthUomId               = c.WidthUomId;
            e.ProductWidth             = c.ProductWidth;
            e.ShippingWidth            = c.ShippingWidth;
            e.DepthUomId               = c.DepthUomId;
            e.ProductDepth             = c.ProductDepth;
            e.ShippingDepth            = c.ShippingDepth;
            e.DiameterUomId            = c.DiameterUomId;
            e.ProductDiameter          = c.ProductDiameter;
            e.ProductRating            = c.ProductRating;
            e.RatingTypeEnum           = c.RatingTypeEnum;
            e.Returnable               = c.Returnable;
            e.Taxable                  = c.Taxable;
            e.ChargeShipping           = c.ChargeShipping;
            e.AutoCreateKeywords       = c.AutoCreateKeywords;
            e.IncludeInPromotions      = c.IncludeInPromotions;
            e.IsVirtual                = c.IsVirtual;
            e.IsVariant                = c.IsVariant;
            e.VirtualVariantMethodEnum = c.VirtualVariantMethodEnum;
            e.InShippingBox            = c.InShippingBox;
            e.DefaultShipmentBoxTypeId = c.DefaultShipmentBoxTypeId;
            e.IsSerialNumbered         = c.IsSerialNumbered;
            e.IsManagedByLot           = c.IsManagedByLot;
            e.AttributeSetId           = c.AttributeSetId;
            e.AttributeSetInstanceId   = c.AttributeSetInstanceId;
            e.Active = c.Active;
            e.IsPropertyProductTypeIdRemoved            = c.IsPropertyProductTypeIdRemoved;
            e.IsPropertyPrimaryProductCategoryIdRemoved = c.IsPropertyPrimaryProductCategoryIdRemoved;
            e.IsPropertyManufacturerPartyIdRemoved      = c.IsPropertyManufacturerPartyIdRemoved;
            e.IsPropertyFacilityIdRemoved                 = c.IsPropertyFacilityIdRemoved;
            e.IsPropertyIntroductionDateRemoved           = c.IsPropertyIntroductionDateRemoved;
            e.IsPropertyReleaseDateRemoved                = c.IsPropertyReleaseDateRemoved;
            e.IsPropertySupportDiscontinuationDateRemoved = c.IsPropertySupportDiscontinuationDateRemoved;
            e.IsPropertySalesDiscontinuationDateRemoved   = c.IsPropertySalesDiscontinuationDateRemoved;
            e.IsPropertySalesDiscWhenNotAvailRemoved      = c.IsPropertySalesDiscWhenNotAvailRemoved;
            e.IsPropertyInternalNameRemoved               = c.IsPropertyInternalNameRemoved;
            e.IsPropertyBrandNameRemoved                = c.IsPropertyBrandNameRemoved;
            e.IsPropertyCommentsRemoved                 = c.IsPropertyCommentsRemoved;
            e.IsPropertyProductNameRemoved              = c.IsPropertyProductNameRemoved;
            e.IsPropertyDescriptionRemoved              = c.IsPropertyDescriptionRemoved;
            e.IsPropertyPriceDetailTextRemoved          = c.IsPropertyPriceDetailTextRemoved;
            e.IsPropertySmallImageUrlRemoved            = c.IsPropertySmallImageUrlRemoved;
            e.IsPropertyMediumImageUrlRemoved           = c.IsPropertyMediumImageUrlRemoved;
            e.IsPropertyLargeImageUrlRemoved            = c.IsPropertyLargeImageUrlRemoved;
            e.IsPropertyDetailImageUrlRemoved           = c.IsPropertyDetailImageUrlRemoved;
            e.IsPropertyOriginalImageUrlRemoved         = c.IsPropertyOriginalImageUrlRemoved;
            e.IsPropertyDetailScreenRemoved             = c.IsPropertyDetailScreenRemoved;
            e.IsPropertyInventoryMessageRemoved         = c.IsPropertyInventoryMessageRemoved;
            e.IsPropertyInventoryItemTypeIdRemoved      = c.IsPropertyInventoryItemTypeIdRemoved;
            e.IsPropertyRequireInventoryRemoved         = c.IsPropertyRequireInventoryRemoved;
            e.IsPropertyQuantityUomIdRemoved            = c.IsPropertyQuantityUomIdRemoved;
            e.IsPropertyQuantityIncludedRemoved         = c.IsPropertyQuantityIncludedRemoved;
            e.IsPropertyPiecesIncludedRemoved           = c.IsPropertyPiecesIncludedRemoved;
            e.IsPropertyRequireAmountRemoved            = c.IsPropertyRequireAmountRemoved;
            e.IsPropertyFixedAmountRemoved              = c.IsPropertyFixedAmountRemoved;
            e.IsPropertyAmountUomTypeIdRemoved          = c.IsPropertyAmountUomTypeIdRemoved;
            e.IsPropertyWeightUomIdRemoved              = c.IsPropertyWeightUomIdRemoved;
            e.IsPropertyShippingWeightRemoved           = c.IsPropertyShippingWeightRemoved;
            e.IsPropertyProductWeightRemoved            = c.IsPropertyProductWeightRemoved;
            e.IsPropertyHeightUomIdRemoved              = c.IsPropertyHeightUomIdRemoved;
            e.IsPropertyProductHeightRemoved            = c.IsPropertyProductHeightRemoved;
            e.IsPropertyShippingHeightRemoved           = c.IsPropertyShippingHeightRemoved;
            e.IsPropertyWidthUomIdRemoved               = c.IsPropertyWidthUomIdRemoved;
            e.IsPropertyProductWidthRemoved             = c.IsPropertyProductWidthRemoved;
            e.IsPropertyShippingWidthRemoved            = c.IsPropertyShippingWidthRemoved;
            e.IsPropertyDepthUomIdRemoved               = c.IsPropertyDepthUomIdRemoved;
            e.IsPropertyProductDepthRemoved             = c.IsPropertyProductDepthRemoved;
            e.IsPropertyShippingDepthRemoved            = c.IsPropertyShippingDepthRemoved;
            e.IsPropertyDiameterUomIdRemoved            = c.IsPropertyDiameterUomIdRemoved;
            e.IsPropertyProductDiameterRemoved          = c.IsPropertyProductDiameterRemoved;
            e.IsPropertyProductRatingRemoved            = c.IsPropertyProductRatingRemoved;
            e.IsPropertyRatingTypeEnumRemoved           = c.IsPropertyRatingTypeEnumRemoved;
            e.IsPropertyReturnableRemoved               = c.IsPropertyReturnableRemoved;
            e.IsPropertyTaxableRemoved                  = c.IsPropertyTaxableRemoved;
            e.IsPropertyChargeShippingRemoved           = c.IsPropertyChargeShippingRemoved;
            e.IsPropertyAutoCreateKeywordsRemoved       = c.IsPropertyAutoCreateKeywordsRemoved;
            e.IsPropertyIncludeInPromotionsRemoved      = c.IsPropertyIncludeInPromotionsRemoved;
            e.IsPropertyIsVirtualRemoved                = c.IsPropertyIsVirtualRemoved;
            e.IsPropertyIsVariantRemoved                = c.IsPropertyIsVariantRemoved;
            e.IsPropertyVirtualVariantMethodEnumRemoved = c.IsPropertyVirtualVariantMethodEnumRemoved;
            e.IsPropertyInShippingBoxRemoved            = c.IsPropertyInShippingBoxRemoved;
            e.IsPropertyDefaultShipmentBoxTypeIdRemoved = c.IsPropertyDefaultShipmentBoxTypeIdRemoved;
            e.IsPropertyIsSerialNumberedRemoved         = c.IsPropertyIsSerialNumberedRemoved;
            e.IsPropertyIsManagedByLotRemoved           = c.IsPropertyIsManagedByLotRemoved;
            e.IsPropertyAttributeSetIdRemoved           = c.IsPropertyAttributeSetIdRemoved;
            e.IsPropertyAttributeSetInstanceIdRemoved   = c.IsPropertyAttributeSetInstanceIdRemoved;
            e.IsPropertyActiveRemoved = c.IsPropertyActiveRemoved;

            e.CommandId = c.CommandId;


            e.CreatedBy = (string)c.RequesterId;
            e.CreatedAt = ApplicationContext.Current.TimestampService.Now <DateTime>();

            var version = c.Version;

            foreach (IGoodIdentificationCommand innerCommand in c.GoodIdentificationCommands)
            {
                ThrowOnInconsistentCommands(c, innerCommand);

                IGoodIdentificationEvent innerEvent = Map(innerCommand, c, version, _state);
                e.AddGoodIdentificationEvent(innerEvent);
            }


            return(e);
        }
示例#4
0
 void IProductApplicationService.When(IMergePatchProduct c)
 {
     this.When((MergePatchProductDto)c);
 }