public DepositoViewModel Depositar(DepositoViewModel depositoViewModel) { var conta = _contaRepository.ObterPorId(depositoViewModel.Id); Transacoes transacoes = new Transacoes(depositoViewModel.ValorDeposito, TipoTransacao.Deposito, conta.Id); var contaRet = _contaService.Depositar(conta, transacoes); if (contaRet.ValidationResult.IsValid) { _transacaoService.Adicionar(transacoes); } else { contaRet.ValidationResult.Message = "Ocorreu um erro ao depositar!"; return(Mapper.Map <DepositoViewModel>(contaRet)); } if (transacoes.ValidationResult.IsValid) { Commit(); contaRet.ValidationResult.Message = "Deposito realizado com sucesso!"; } depositoViewModel = Mapper.Map <DepositoViewModel>(contaRet); return(depositoViewModel); }
private static async Task Depositar() { var conta = await BuscarConta(); Console.Write("Digite o valor a ser depositado: "); double valorDeposito = double.Parse(Console.ReadLine()); await contaService.Depositar(conta, valorDeposito); }
public void Dado_uma_ContaValida_e_ValorValido_Quando_EfetuarDeposito_Entao_deve_Aumentar_Saldo() { // ARRANGE var valorDeposito = 200; var numeroConta = 2; var saldoAnterior = _service.ObterSaldo(2); // ACT var saldo = _service.Depositar(numeroConta, valorDeposito); // ASSERT saldo.Should().BeGreaterThan(saldoAnterior); }
public ActionResult <ContaViewModel> Depositar([FromBody] ContaOperacaoViewModel contaOperacaoView) { if (!ModelState.IsValid) { return(BadRequest(ModelError.GetErrorModelState(ModelState))); } ContaCorrente contaCorrente = (ContaCorrente)_contaCorrenteService.Depositar(contaOperacaoView.Id, contaOperacaoView.Valor); if (contaCorrente == null) { return(BadRequest(ModelError.GetErrorValidacao(_notificador))); } var contaCorrenteViewModel = _mapper.Map <ContaViewModel>(contaCorrente); return(Ok(contaCorrenteViewModel)); }
public IActionResult Depositar([FromBody] MovBancarioVM movimento) { try { var conta = _contaService.ObterConta(Convert.ToInt32(_authenticatedUser.Id), movimento.Agencia, movimento.NumConta); _contaService.Depositar(conta.Id, movimento.Valor); return(Ok(new { Mensagem = "Depósito efetuado com sucesso!" })); } catch (Exception ex) { return(BadRequest(new ErroVM { Excecao = ex.Message, Mensagem = "Não foi possível efetuar o depósito!" })); } }
public ActionResult <decimal> Post([FromRoute] int numero, [FromBody] DepositarRequest model) { try { var saldo = _service.Depositar(numero, model.Valor); var response = new DepositarResponse(numero, saldo); return(new OkObjectResult(response)); } catch (ValorInvalidoValidationException e) { return(new BadRequestObjectResult(e.Message)); } catch (ContaInvalidaValidationException e) { return(new NotFoundObjectResult(e.Message)); } catch (Exception e) { Console.WriteLine(e); throw; } }
public BancoDigitalMutation(IContaService contaService) { Name = "Mutation"; Field <ContaType>("depositar", arguments: new QueryArguments( new QueryArgument <IntGraphType> { Name = "conta" }, new QueryArgument <DecimalGraphType> { Name = "valor" } ), resolve: context => { var numeroConta = context.GetArgument <int>("conta"); var valor = context.GetArgument <decimal>("valor"); var resultado = contaService.Depositar(numeroConta, double.Parse(valor.ToString())); return(resultado.Resultado == ResultadoOperacao.enResultado.Sucesso ? resultado.Conta : throw new ExecutionError(resultado.Mensagem)); }); Field <ContaType>("sacar", arguments: new QueryArguments( new QueryArgument <IntGraphType> { Name = "conta" }, new QueryArgument <DecimalGraphType> { Name = "valor" } ), resolve: context => { var numeroConta = context.GetArgument <int>("conta"); var valor = context.GetArgument <decimal>("valor"); var resultado = contaService.Sacar(numeroConta, double.Parse(valor.ToString())); return(resultado.Resultado == ResultadoOperacao.enResultado.Sucesso ? resultado.Conta : throw new ExecutionError(resultado.Mensagem)); }); }