Exemplo n.º 1
0
        public void Edit(EditBankData data)
        {
            var validationResult = _bankQueries.ValidateCanEdit(data);

            if (!validationResult.IsValid)
                throw new RegoValidationException(validationResult);

            using (var scope = CustomTransactionScope.GetTransactionScope())
            {
                var bank = _repository.Banks.Single(x => x.Id == data.Id);
                bank = Mapper.Map(data, bank);
                bank.Updated = DateTime.Now;
                bank.UpdatedBy = _actorInfoProvider.Actor.UserName;

                _repository.SaveChanges();

                var bankAdded = new BankEdited
                {
                    Id = bank.Id,
                    BankId = bank.BankId,
                    BankName = bank.BankName,
                    BrandId = bank.BrandId,
                    UpdatedDate = bank.Updated.GetValueOrDefault()
                };

                _eventBus.Publish(bankAdded);

                scope.Complete();
            }
        }
Exemplo n.º 2
0
 public ValidationResult ValidateCanEdit(EditBankData data)
 {
     return(new EditBankValidator(_paymentRepository).Validate(data));
 }