public ActionResult SaveProviderSite(ProviderSiteViewModel viewModel)
        {
            var response = _adminMediator.SaveProviderSite(viewModel);

            ModelState.Clear();

            SetUserMessage(response.Message);

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

            case AdminMediatorCodes.SaveProviderSite.Error:
                return(RedirectToRoute(ManagementRouteNames.AdminViewProviderSite, new { viewModel.ProviderSiteId }));

            case AdminMediatorCodes.SaveProviderSite.Ok:
                return(RedirectToRoute(ManagementRouteNames.AdminViewProviderSite, new { viewModel.ProviderSiteId }));

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