/// <summary> /// Método responsável por cumprir o requisito de Autorizar Usuários Cadastrados em Aplicativos /// previamente cadastrados. /// Quando chamado em GET - Retorna a tela de Autorizar Usuário /// Quando chamado em POST - Retorna a tela de Cadastrar /// </summary> /// <returns>A tela de Cadastrar Aplicativo (GET) ou A tela de Index /// podendo ou não conter uma mensamge de erro (Post)</returns> public ActionResult AutorizarUsuario(AutorizarUsuarioViewModel dados) { #region Decidir se deve proseguir com a requisição AutorizarUsuarioViewModel model = new AutorizarUsuarioViewModel(); ActionResult urlRetorno = DecideUrlFormulários("/Autorizacao/AutorizarUsuario", model); if (urlRetorno != null) { if (usuario != null) // Usuario preenchido com os dados da seção na superclasse { model = PreencheModel(model); } return(urlRetorno); // ação que deve ser retornada para o browser } #endregion IList <Autorizacao> autorizacoes = new List <Autorizacao>(); dados.UsuarioLiberacao = usuario; autorizacoes = dados.CriarModelo(); IFachada <Autorizacao> fachada = new FachadaAdmWeb <Autorizacao>(); string retorno; if (Request["Salvar"] != null) { retorno = fachada.SalvarTodos(autorizacoes); } else if (Request["Alterar"] != null) { retorno = fachada.AlterarTodos(autorizacoes); } else if (Request["Inativar"] != null) { Autorizacao auxiliar = new Autorizacao(); auxiliar.OrgaoAutorizado = autorizacoes[0].OrgaoAutorizado; auxiliar.Usuario = autorizacoes[0].Usuario; retorno = fachada.Excluir(autorizacoes[0]); } else { retorno = "Opção Inválida"; } if (retorno != null) // se retornar null, é porque ocorreu tudo bem { ViewBag.Mensagem = retorno; model = PreencheModel(autorizacoes, model); return(View(model)); } ViewBag.Mensagem = "Autorizado com sucesso!"; return(View("../Home/Index")); } // AutorizarUsuario