public IActionResult IncluiNegociacao([FromBody] NegociacaoDto negociacao)
        {
            if (ModelState.IsValid)
            {
                decimal somaParcelas   = negociacao.Parcelas.Sum(p => p.Valor);
                var     valorPrincipal = somaParcelas.ToString("C");
                var     juros          = 0.0;
                var     desconto       = (double)somaParcelas * 0.1;
                var     valorPago      = (double)somaParcelas - desconto;
                var     idNeg          = Guid.NewGuid().ToString();

                var obj = new
                {
                    Acordo     = idNeg,
                    Contrato   = negociacao.Contrato,
                    Vencimento = negociacao.Data,
                    Desconto   = desconto.ToString("C"),
                    Valor      = valorPago.ToString("C"),
                };

                var neg = new Negociacao
                {
                    Numero = idNeg,
                    Dados  = JsonConvert.SerializeObject(obj)
                };

                _repo.Incluir(neg);

                return(Ok(obj));
            }
            return(BadRequest());
        }
示例#2
0
        public async Task <RetornoDto> NegociacaoAsync(string token, NegociacaoDto negociacao)
        {
            _httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
            var response = await _httpClient.PostAsJsonAsync(_configuration.GetSection(Path.NEGOCIACAO.ToString()).Value, negociacao);

            response.EnsureSuccessStatusCode();

            return(await RetornoExtension.ToRetornoDtoAsync(response));
        }
        public async Task <IActionResult> GetToken([FromQuery][Required] string token, [FromBody][Required] NegociacaoDto negociacao)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            var value = ModelState.Values;

            var retornoDto = await _api.NegociacaoAsync(token, negociacao);

            if (retornoDto.Sussesso)
            {
                return(Ok(retornoDto.Conteudo));
            }

            return(BadRequest(retornoDto));
        }