コード例 #1
0
        public async Task <IComandoResultado> ManipuladorAsync(AddPermissaoComando comando)
        {
            //Obter id pagina pela constante
            comando.PaginaId = await _repositorio.ObterIdPorConstante(comando.Constante);

            //Criar Entidade
            var permissao = new Permissao(comando.PaginaId, comando.PerfilId, comando.Criar, comando.Editar, comando.Ler, comando.Excluir);


            //Validar Turma/Aluno Unico
            if (await _repositorio.CheckPermissaoAsync(permissao.PaginaId, permissao.PerfilId))
            {
                AddNotification("Permissão", "Permissão já cadastrado no sistema");
            }

            //Validar Comando
            comando.Valido();
            if (Invalid)
            {
                return(new ComandoResultado(false, "Por favor, corrija os campos abaixo", Notifications));
            }
            //Persistir Dados
            var id = await _repositorio.SalvarPermissaoAsync(permissao);

            // Retornar o resultado para tela
            return(new ComandoResultado(true, "Perfil cadastrado com sucesso", new
            {
                Id = id,
                Nome = "OK",
                Status = true
            }));
        }