public ActionResult SaveProvider(ProviderViewModel viewModel)
        {
            var response = _adminMediator.SaveProvider(viewModel);

            ModelState.Clear();

            SetUserMessage(response.Message);

            switch (response.Code)
            {
            case AdminMediatorCodes.SaveProvider.FailedValidation:
                response.ValidationResult.AddToModelState(ModelState, "SearchViewModel");
                return(View("Provider", response.ViewModel));

            case AdminMediatorCodes.SaveProvider.Error:
                return(RedirectToRoute(ManagementRouteNames.AdminViewProvider, new { viewModel.ProviderId }));

            case AdminMediatorCodes.SaveProvider.Ok:
                return(RedirectToRoute(ManagementRouteNames.AdminViewProvider, new { viewModel.ProviderId }));

            default:
                throw new InvalidMediatorCodeException(response.Code);
            }
        }