public async Task <IActionResult> Create([Bind("Enviado,Retorno,CampoAplicacao,FundamentosInvencao,EstadoTecnica,Problemas,Solucaoinvencao,Vantagens,DescricaoDesenhos,DescricaoInvencao,Id,Nome")] FormularioDto formulario)
        {
            UserDto usuario = Session.GetObject <UserDto>("usuario");

            ViewBag.Admin = usuario.Perfil == 1 ? true : false;

            if (ModelState.IsValid)
            {
                formulario.Id          = null;
                formulario.Responsavel = usuario;
                formulario.Enviado     = DateTime.Now;
                formulario.Solicitacao = int.Parse(RouteData.Values["id"].ToString());
                RetornaAcaoDto result = await new APIFormulario(bool.Parse(AppSettings.Get("ambienteTeste"))).Add(formulario);
                if (result.Retorno)
                {
                    return(RedirectToAction("Index", "Solicitacao"));
                }
                else
                {
                    ModelState.AddModelError("Retorno", result.Mensagem);
                }
            }

            return(View(formulario));
        }
        private void SetViewbagPermisosValidosFormulario(FormularioDto formulario)
        {
            var listaPermisosValidos =
                formulario.PermisoList.Select(p => (TipoPermiso)Enum.Parse(typeof(TipoPermiso), p.TipoPermiso.ToString()));

            _controllerActual.ViewBag.PermisosValidos = listaPermisosValidos;
        }