public async Task <IRetorno> IncluirDivida(DividaDTO dto)
        {
            try
            {
                dto.Validate();

                if (dto.Invalid)
                {
                    return(new RetornoDTO(false, "Erro na requisição, verificar parametros de entrar", dto.Notifications));
                }

                var divida = new Divida(dto.ValorOriginal, dto.DataVencimento, dto.DocumentoDevedor, dto.UsuarioId);

                var dividaCriada = await _repository.CriarAsync(divida);

                if (dividaCriada)
                {
                    return(new RetornoDTO(true, "Divida incluida com sucesso", divida));
                }

                return(new RetornoDTO(false, "Erro ao tentar salvar os dados na base", null));
            }catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 2
0
        public async Task Que_Seja_Possivel_Incluir_Divida()
        {
            var usuario = await CriarUsuario();

            _dividaDTO = new DividaDTO(3000.00, new DateTime(2019, 3, 10), "27001802085", usuario.Id);
            var retorno = await _service.IncluirDivida(_dividaDTO);

            Assert.AreEqual(true, retorno.Sucesso);
        }
Exemplo n.º 3
0
        public async Task Que_Seja_Possivel_Listar_Dividas_De_Devedor_Especifico_Por_Documento()
        {
            var usuario = await CriarUsuario();

            var parametrizacao = await CriarParametrizacao();

            _dividaDTO = new DividaDTO(3000.00, new DateTime(2020, 9, 16), "27001802085", usuario.Id);
            var retorno = await _service.IncluirDivida(_dividaDTO);

            var retornoDividas = await _service.ListarDivida("27001802085");

            Assert.AreEqual(true, retornoDividas.Sucesso);
        }
Exemplo n.º 4
0
        public async Task <IActionResult> IncluirDivida([FromBody] DividaDTO dto)
        {
            try
            {
                var retorno = await _service.IncluirDivida(dto);

                if (retorno.Sucesso)
                {
                    return(Ok(retorno));
                }

                return(BadRequest(retorno));
            }
            catch
            {
                return(StatusCode(StatusCodes.Status500InternalServerError, new { Mensagem = "Erro Interno do Servidor, entre em contato com o administrador" }));
            }
        }
        public async Task <IHttpActionResult> PostDivida(Divida Divida)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.Dividas.Add(Divida);
            await db.SaveChangesAsync();

            // Load author name
            db.Entry(Divida).Reference(x => x.Cliente).Load();

            var dto = new DividaDTO()
            {
                Id          = Divida.Id,
                Descricao   = Divida.Descricao,
                ClienteNome = Divida.Cliente.Nome
            };

            return(CreatedAtRoute("DefaultApi", new { id = Divida.Id }, dto));
        }