private async Task <UpdateOperationViewModel> GetViewModel(OperationRouteValue routeValue) { var query = new GetAccountProviderLegalEntityQuery(routeValue.AccountId.Value, routeValue.AccountProviderId.Value, routeValue.AccountLegalEntityId.Value); var result = await _mediator.Send(query); return(_mapper.Map <UpdateOperationViewModel>(result)); }
public async Task <ActionResult> Update(OperationRouteValue routeValue) { var model = await GetViewModel(routeValue); var helper = new OperationsHelper(routeValue, TempData, Url); helper.Update(model); if (!helper.IsValid()) { ModelState.AddModelError("Operation", $"Select yes if you give {model.ProviderName} permission to {model.Operation.GetDescription().ToLower()}"); return(View("Set", model)); } var next = helper.Next(); if (next == Operation.NotSet) { return(RedirectToAction("Confirm", new OperationRouteValue { AccountProviderId = routeValue.AccountProviderId.Value, AccountLegalEntityId = routeValue.AccountLegalEntityId.Value })); } return(RedirectToAction("Set", "Operations", new OperationRouteValue { OperationId = (short)next, AccountProviderId = routeValue.AccountProviderId.Value, AccountLegalEntityId = routeValue.AccountLegalEntityId.Value })); }
public Task <ActionResult> Set(Operation operation) { OperationRouteValue = new OperationRouteValue { AccountId = 1, AccountProviderId = 2, AccountLegalEntityId = 3, OperationId = (short)operation }; GetAccountProviderLegalEntityQueryResult = new GetAccountProviderLegalEntityQueryResult( new Application.Queries.GetAccountProviderLegalEntity.Dtos.AccountProviderDto(), new Application.Queries.GetAccountProviderLegalEntity.Dtos.AccountLegalEntityDto(), new Application.Queries.GetAccountProviderLegalEntity.Dtos.AccountProviderLegalEntityDto(), 0, false); Mediator.Setup(m => m.Send( It.Is <GetAccountProviderLegalEntityQuery>(q => q.AccountId == OperationRouteValue.AccountId && q.AccountProviderId == OperationRouteValue.AccountProviderId && q.AccountLegalEntityId == OperationRouteValue.AccountLegalEntityId), CancellationToken.None)) .ReturnsAsync(GetAccountProviderLegalEntityQueryResult); return(OperationsController.Set(OperationRouteValue)); }
public async Task <ActionResult> Set(OperationRouteValue routeValue) { var model = await GetViewModel(routeValue); var helper = new OperationsHelper(routeValue, TempData, Url); helper.Set(model); return(View(model)); }
public OperationsHelper(OperationRouteValue routeValue, TempDataDictionary tempData, UrlHelper urlHelper) { _routeValue = routeValue; _tempData = tempData; _urlHelper = urlHelper; Changes = tempData.Get <List <OperationViewModel> >() ?? new List <OperationViewModel>(); CurrentOperation = (Operation)Enum.Parse(typeof(Operation), _routeValue.OperationId.ToString()); if (CurrentOperation.Equals(Operation.NotSet)) { _tempData.Clear(); CurrentOperation = AllowedOperations().First(); } }
public async Task <ActionResult> Confirm(OperationRouteValue routeValue) { var helper = new OperationsHelper(routeValue, TempData, Url); if (helper.Changes == null) { return(RedirectToAction("Get", new GetAccountProviderLegalEntityRouteValues { AccountProviderId = routeValue.AccountProviderId.Value, AccountLegalEntityId = routeValue.AccountLegalEntityId.Value })); } var model = await GetConfirmViewModel(routeValue); helper.Confirm(model); ; return(View(model)); }