Exemple #1
0
        public void CrudClienteComErro()
        {
            RequisicaoEntidadeDto <ClienteDto> requisicaoDto = new RequisicaoEntidadeDto <ClienteDto>()
            {
                EntidadeDto = RetornarNovoCliente()
            };

            Assert.IsTrue(Utilidades.RetornarAutenticacaoRequisicaoPreenchida(requisicaoDto));
            ClienteBll clienteBll = new ClienteBll(true);

            // Incluir
            requisicaoDto.EntidadeDto.Nome = "";
            RetornoDto retornoDto = new RetornoDto();

            clienteBll.Incluir(requisicaoDto, ref retornoDto);
            Assert.AreEqual(false, retornoDto.Retorno);
            Assert.AreEqual("O nome do cliente é obrigatório! Por favor, informe o nome do cliente " +
                            "no campo indicado para continuar. ", retornoDto.Mensagem);

            requisicaoDto.EntidadeDto.Nome = "Te";
            retornoDto = new RetornoDto();
            clienteBll.Incluir(requisicaoDto, ref retornoDto);
            Assert.AreEqual(false, retornoDto.Retorno);
            Assert.AreEqual("O nome do cliente deve ter, ao menos, 3 caracteres! Por favor, informe um nome " +
                            "válido para continuar. ", retornoDto.Mensagem);

            requisicaoDto.EntidadeDto.Nome = "Testes";
            retornoDto = new RetornoDto();
            clienteBll.Incluir(requisicaoDto, ref retornoDto);
            Assert.AreEqual(true, retornoDto.Retorno);

            // Editar
            requisicaoDto.EntidadeDto.Nome = "";
            clienteBll.Editar(requisicaoDto, ref retornoDto);
            Assert.AreEqual(false, retornoDto.Retorno);
            Assert.AreEqual("O nome do cliente é obrigatório! Por favor, informe o nome do cliente " +
                            "no campo indicado para continuar. ", retornoDto.Mensagem);

            // Obter
            RetornoObterDto <ClienteDto> retornoObterDto    = new RetornoObterDto <ClienteDto>();
            RequisicaoObterDto           requisicaoObterDto = new RequisicaoObterDto()
            {
                Id            = Guid.Empty,
                IdUsuario     = requisicaoDto.IdUsuario,
                Identificacao = requisicaoDto.Identificacao
            };

            clienteBll.Obter(requisicaoObterDto, ref retornoObterDto);
            Assert.AreEqual(false, retornoObterDto.Retorno);

            // Excluir
            clienteBll.Excluir(requisicaoObterDto, ref retornoDto);
            Assert.AreEqual(false, retornoObterDto.Retorno);
        }
        public ActionResult Incluir(ClienteModel model)
        {
            //Se não tiver login, encaminhar para a tela de login
            if (string.IsNullOrWhiteSpace(SessaoUsuario.SessaoLogin.Identificacao))
            {
                return(RedirectToAction("Login", "Usuario"));
            }

            //Validar a model recebida
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            //Converter para DTO
            ClienteDto clienteDto   = new ClienteDto();
            string     mensagemErro = "";

            if (!model.ConverterModelParaDto(ref clienteDto, ref mensagemErro))
            {
                ModelState.AddModelError("", $"Erro ao converter para Dto: {mensagemErro}");
                return(View(model));
            }

            clienteDto.Id = Guid.NewGuid();

            //Preparar requisição e retorno
            RetornoDto retorno = new RetornoDto();
            RequisicaoEntidadeDto <ClienteDto> requisicaoDto = new RequisicaoEntidadeDto <ClienteDto>()
            {
                EntidadeDto   = clienteDto,
                Identificacao = SessaoUsuario.SessaoLogin.Identificacao,
                IdUsuario     = SessaoUsuario.SessaoLogin.IdUsuario
            };

            //Consumir o serviço
            ClienteBll clienteBll = new ClienteBll(true);

            clienteBll.Incluir(requisicaoDto, ref retorno);

            //Verificar o retorno
            if (retorno.Retorno == false)
            {
                //Se houver erro, exibir na tela de inclusão
                ModelState.AddModelError("", retorno.Mensagem);
                return(View(model));
            }

            TempData["Retorno"] = "INCLUIDO";

            //Retornar para index
            return(RedirectToAction("Index"));
        }
Exemple #3
0
        public void CrudCliente()
        {
            RequisicaoEntidadeDto <ClienteDto> requisicaoDto = new RequisicaoEntidadeDto <ClienteDto>()
            {
                EntidadeDto = RetornarNovoCliente()
            };

            Assert.IsTrue(Utilidades.RetornarAutenticacaoRequisicaoPreenchida(requisicaoDto));
            ClienteBll clienteBll = new ClienteBll(true);

            // Incluir
            RetornoDto retornoDto = new RetornoDto();

            clienteBll.Incluir(requisicaoDto, ref retornoDto);
            Assert.AreEqual(true, retornoDto.Retorno);

            // Editar
            requisicaoDto.EntidadeDto.Nome = "Cliente atualizado " + DateTime.Now;
            clienteBll.Editar(requisicaoDto, ref retornoDto);
            Assert.AreEqual(true, retornoDto.Retorno);

            // Obter
            RetornoObterDto <ClienteDto> retornoObterDto    = new RetornoObterDto <ClienteDto>();
            RequisicaoObterDto           requisicaoObterDto = new RequisicaoObterDto()
            {
                Id            = requisicaoDto.EntidadeDto.Id,
                IdUsuario     = requisicaoDto.IdUsuario,
                Identificacao = requisicaoDto.Identificacao
            };

            clienteBll.Obter(requisicaoObterDto, ref retornoObterDto);
            Assert.AreEqual(true, retornoObterDto.Retorno);

            // Excluir
            clienteBll.Excluir(requisicaoObterDto, ref retornoDto);
            Assert.AreEqual(true, retornoObterDto.Retorno);
        }