public PaymentMapper(IStorefrontSettingsProvider storefrontSettingsProvider)
        {
            Assert.ArgumentNotNull(storefrontSettingsProvider, nameof(storefrontSettingsProvider));

            var configuration = new MapperConfiguration(
                cfg =>
            {
                cfg.AddProfile <AddressProfile>();
                cfg.AddProfile(new PaymentProfile(storefrontSettingsProvider));
            });

            this.InnerMapper = new AutoMapper.Mapper(configuration);
        }
Пример #2
0
        public CartMapper(ICurrencyProvider currencyProvider, IStorefrontSettingsProvider storefrontSettingsProvider)
        {
            Assert.ArgumentNotNull(currencyProvider, nameof(currencyProvider));
            Assert.ArgumentNotNull(storefrontSettingsProvider, nameof(storefrontSettingsProvider));

            var mapperConfiguration = new MapperConfiguration(
                cfg =>
            {
                cfg.AddProfile(new CartProfile(currencyProvider));
                cfg.AddProfile <AddressProfile>();
                cfg.AddProfile <ShippingProfile>();
                cfg.AddProfile(new PaymentProfile(storefrontSettingsProvider));
            });

            this.InnerMapper = new AutoMapper.Mapper(mapperConfiguration);
        }
        public PaymentProfile(IStorefrontSettingsProvider storefrontSettingsProvider)
        {
            Assert.ArgumentNotNull(storefrontSettingsProvider, nameof(storefrontSettingsProvider));

            this.CreateMap <FederatedPaymentInfo, Sitecore.Commerce.Entities.Carts.FederatedPaymentInfo>()
            .ForMember(
                dest => dest.PaymentMethodID,
                opt => opt.MapFrom(
                    src => storefrontSettingsProvider.GetPaymentOptionId(
                        Constants.StorefrontSettings.FederatedPaymentOptionTitle)))
            .ForMember(dest => dest.Amount, opt => opt.Ignore())
            .ForMember(dest => dest.AuthorizationResult, opt => opt.Ignore())
            .ForMember(dest => dest.ExternalId, opt => opt.Ignore())
            .ForMember(dest => dest.LineIDs, opt => opt.Ignore())
            .ForMember(dest => dest.PaymentProviderID, opt => opt.Ignore());

            this.CreateMap <PaymentOption, Models.Entities.Payment.PaymentOption>();

            this.CreateMap <PaymentMethod, Models.Entities.Payment.PaymentMethod>();

            this.CreateMap <PaymentInfo, FederatedPaymentInfo>()
            .ForMember(dest => dest.CardToken, opt => opt.Ignore())
            .ReverseMap();
        }