public void Deactivate(AvcChangeStatusCommand command) { var avcToUpdate = _fraudRepository .AutoVerificationCheckConfigurations .FirstOrDefault(avc => avc.Id == command.Id); if (avcToUpdate == null) { return; } avcToUpdate.Status = AutoVerificationCheckStatus.Inactive; avcToUpdate.DeactivatedBy = _actorInfoProvider.Actor.UserName;; avcToUpdate.DateDeactivated = DateTime.UtcNow; using (var scope = CustomTransactionScope.GetTransactionScope()) { _fraudRepository.AutoVerificationCheckConfigurations.AddOrUpdate(avcToUpdate); _fraudRepository.SaveChanges(); scope.Complete(); } _eventBus.Publish(new AutoVerificationCheckDeactivated() { DeactivatedBy = _actorInfoProvider.Actor.UserName, DateDeactivated = avcToUpdate.DateDeactivated }); }
public void Can_activate_Avc_configuration() { var id = Guid.NewGuid(); Container.Resolve <BrandTestHelper>().CreateBrand(isActive: true); var avcConfiguration = new AVCConfigurationDTO { Id = id, Brand = _brandQueries.GetBrands().First().Id, }; _avcConfigurationCommands.Create(avcConfiguration); var latestAutoVerificationCheckCriteria = _avcConfigurationQueries .GetAutoVerificationCheckConfiguration(id); //The default state of criteria at the moment of creation must be Inactive Assert.AreEqual(AutoVerificationCheckStatus.Inactive, latestAutoVerificationCheckCriteria.Status); //We activate the newly created AVC var activationCommand = new AvcChangeStatusCommand() { Id = avcConfiguration.Id }; _avcConfigurationCommands.Activate(activationCommand); var latestAutoVerificationCheckCriteriaActivated = _avcConfigurationQueries .GetAutoVerificationCheckConfiguration(id); Assert.AreEqual(AutoVerificationCheckStatus.Active, latestAutoVerificationCheckCriteriaActivated.Status); }
public void Can_deactivated_Avc_configuration() { //Here we create AVC with status of Active var id = Guid.NewGuid(); Container.Resolve <BrandTestHelper>().CreateBrand(isActive: true); var avcConfiguration = new AVCConfigurationDTO { Id = id, Status = AutoVerificationCheckStatus.Active, Brand = _brandQueries.GetBrands().First().Id }; _avcConfigurationCommands.Create(avcConfiguration); var latestAutoVerificationCheckCriteria = _avcConfigurationQueries .GetAutoVerificationCheckConfiguration(id); Assert.AreEqual(AutoVerificationCheckStatus.Active, latestAutoVerificationCheckCriteria.Status); //We deactivate the newly created AVC var activationCommand = new AvcChangeStatusCommand() { Id = avcConfiguration.Id }; _avcConfigurationCommands.Deactivate(activationCommand); var latestAutoVerificationCheckCriteriaActivated = _avcConfigurationQueries .GetAutoVerificationCheckConfiguration(id); Assert.AreEqual(AutoVerificationCheckStatus.Inactive, latestAutoVerificationCheckCriteriaActivated.Status); }
public ActionResult Activate(AvcChangeStatusCommand model) { var validationResult = _avcConfigurationQueries .GetValidationResult(model, AutoVerificationCheckStatus.Inactive); if (validationResult.IsValid == false) { return(ValidationErrorResponse(validationResult)); } _avcConfigurationCommands.Activate(model); return(Json(new { Success = true })); }
//Validation calls public ValidationResult GetValidationResult(AvcChangeStatusCommand model, AutoVerificationCheckStatus status) { return(new AVCStatusValidator(_fraudRepository, status).Validate(model)); }