public async Task <IComandoResultado> ManipuladorAsync(DelPaginaComando comando) { //Validar se pode excluir a pagina if (await _repositorio.CheckPermissaoAsync(comando.PaginaId, 0)) { AddNotification("Pagina", $"Pagina informada possui regras de permissao vinculada. " + $" Exclua as permissoes e tente novamente"); } //Validar Comando comando.Valido(); AddNotifications(comando.Notifications); if (Invalid) { return(new ComandoResultado(false, "Por favor, corrija os campos abaixo", Notifications)); } //Persistir Dados if (!await _repositorio.DeletarPaginaAsync(comando.PaginaId)) { throw new Exception("Sistema não conseguiu processar esta solicitação"); } // Retornar o resultado para tela return(new ComandoResultado(true, "Página excluida com sucesso.", new { Id = 0, Nome = "OK", Status = true })); }
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 })); }