public void CrudFuncionario() { RequisicaoEntidadeDto <FuncionarioDto> requisicaoDto = new RequisicaoEntidadeDto <FuncionarioDto>() { EntidadeDto = RetornarNovoFuncionario() }; Assert.IsTrue(Utilidades.RetornarAutenticacaoRequisicaoPreenchida(requisicaoDto)); FuncionarioBll funcionarioBll = new FuncionarioBll(true); // Incluir RetornoDto retornoDto = new RetornoDto(); funcionarioBll.Incluir(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); // Editar requisicaoDto.EntidadeDto.Nome = "Funcionario atualizado " + DateTime.Now; funcionarioBll.Editar(requisicaoDto, ref retornoDto); Assert.AreEqual(true, retornoDto.Retorno); // Obter RetornoObterDto <FuncionarioDto> retornoObterDto = new RetornoObterDto <FuncionarioDto>(); RequisicaoObterDto requisicaoObterDto = new RequisicaoObterDto() { Id = requisicaoDto.EntidadeDto.Id, IdUsuario = requisicaoDto.IdUsuario, Identificacao = requisicaoDto.Identificacao }; funcionarioBll.Obter(requisicaoObterDto, ref retornoObterDto); Assert.AreEqual(true, retornoObterDto.Retorno); // Obter lista RequisicaoObterListaDto requisicaoObterListaDto = new RequisicaoObterListaDto() { CampoOrdem = "DESCRICAO", IdUsuario = requisicaoDto.IdUsuario, Identificacao = requisicaoDto.Identificacao, NumeroItensPorPagina = 2, Pagina = 1 }; RetornoObterListaDto <FuncionarioDto> retornoObterListaDto = new RetornoObterListaDto <FuncionarioDto>(); funcionarioBll.ObterListaFiltrada(requisicaoObterListaDto, ref retornoObterListaDto); Assert.AreEqual(true, retornoObterDto.Retorno); // Excluir funcionarioBll.Excluir(requisicaoObterDto, ref retornoDto); Assert.AreEqual(true, retornoObterDto.Retorno); }
public ActionResult ExcluirFuncionario(ExclusaoModel model) { //Se não tiver login, encaminhar para a tela de login if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao)) { return(RedirectToAction("Login", "Usuario")); } if (!SessaoUsuario.SessaoLogin.Administrador) { ViewBag.MensagemErro = "Para excluir um funcionario é necessário " + $"logar com um funcionario administrador."; return(View("SemPermissao")); } if (!SessaoUsuario.SessaoLogin.Administrador) { ViewBag.Mensagem = "Este funcionario não tem permissão para excluir outros funcionarios."; return(View("Erro")); } //Preparar requisição e retorno RetornoDto retorno = new RetornoDto(); RequisicaoObterDto requisicaoDto = new RequisicaoObterDto() { Id = model.Id, Identificacao = SessaoUsuario.SessaoLogin.Identificacao, IdUsuario = SessaoUsuario.SessaoLogin.IdUsuario }; //Consumir o serviço FuncionarioBll funcionarioBll = new FuncionarioBll(true); funcionarioBll.Excluir(requisicaoDto, ref retorno); //Tratar o retorno if (retorno.Retorno == false) { ModelState.AddModelError("", retorno.Mensagem); return(View("Excluir", model)); } TempData["Retorno"] = "EXCLUIDO"; //Voltar para a index de funcionario return(RedirectToAction("Index")); }