Exemple #1
0
        public void Deactivate(DeactivatePaymentGatewaySettingsData model)
        {
            var setting = _repository.PaymentGatewaySettings
                          .Single(x => x.Id == model.Id);

            setting.Status          = Status.Inactive;
            setting.DateDeactivated = _paymentQueries.GetBrandDateTimeOffset(setting.BrandId);
            setting.DeactivatedBy   = _actorInfoProvider.Actor.UserName;

            using (var scope = CustomTransactionScope.GetTransactionScope())
            {
                _repository.SaveChanges();

                _eventBus.Publish(new PaymentGatewaySettingDeactivated
                {
                    Id                      = setting.Id,
                    DeactivatedBy           = setting.DeactivatedBy,
                    DeactivatedDate         = setting.DateDeactivated.GetValueOrDefault(),
                    OnlinePaymentMethodName = setting.OnlinePaymentMethodName,
                    PaymentGatewayName      = setting.PaymentGatewayName,
                    Channel                 = setting.Channel,
                    EntryPoint              = setting.EntryPoint,
                    BrandId                 = setting.BrandId,
                    Remarks                 = model.Remarks
                });

                scope.Complete();
            }
        }
Exemple #2
0
        public ValidationResult ValidateThatPaymentGatewaySettingsCanBeDeactivated(DeactivatePaymentGatewaySettingsData model)
        {
            var validator = new DeactivatePaymentGatewaySettingsValidator(_repository);

            return(validator.Validate(model));
        }