public IActionResult Adicionar([FromBody] Correntista correntista) { try { if (_correntistaRepository.Existe(correntista.Identificador)) { return(StatusCode(409, "Já existe um cadastro com esse numero de Identificador.")); } _correntistaRepository.Adicionar(correntista); return(Ok($"Correntista {correntista.Nome} com código identificador {correntista.Identificador} adicionado com sucesso.")); } catch (Exception ex) { return(StatusCode(500, $"Erro interno no servidor: {ex.Message.ToString()}")); } }
public IActionResult Adicionar([FromBody] Transferencia transferencia) { if (transferencia.Valor <= 0.00M) { return(StatusCode(404, $"Transferência não realizada, valor da transferência deve ser maior que R$ 0,00.")); } if (transferencia.IdentificadorOrigem == transferencia.IdentificadorDestino) { return(StatusCode(404, $"Transferência não realizada, o identificador origem e destino não pode ser o mesmo {transferencia.IdentificadorOrigem}.")); } if (!_correntistaRepository.Existe(transferencia.IdentificadorOrigem)) { return(StatusCode(404, $"Transferência não realizada, favor verificar se existe o identificador origem {transferencia.IdentificadorOrigem} cadastrado.")); } if (!_correntistaRepository.Existe(transferencia.IdentificadorDestino)) { return(StatusCode(404, $"Transferência não realizada, favor verificar se existe o identificador destino {transferencia.IdentificadorDestino} cadastrado.")); } try { var saldoAtual = _contaRepository.BuscaSaldoConta(transferencia.IdentificadorOrigem); if (saldoAtual < transferencia.Valor) { return(StatusCode(404, $"Transferência não realizada, saldo insuficiente para realizar a transação. Saldo conta origem R$ {saldoAtual}.")); } _transferenciaRepository.Adicionar(transferencia); _contaRepository.AtualizarSaldoConta(transferencia.IdentificadorOrigem); _contaRepository.AtualizarSaldoConta(transferencia.IdentificadorDestino); return(Ok($"Transferência da conta de origem {transferencia.IdentificadorOrigem} para conta destino {transferencia.IdentificadorDestino} com o valor de R$ {transferencia.Valor}, foi realizada com sucesso.")); } catch (Exception ex) { return(StatusCode(500, $"Erro interno no servidor: {ex.Message.ToString()}")); } }
public IActionResult Adicionar([FromBody] Deposito deposito) { try { if (!_correntistaRepository.Existe(deposito.Identificador)) { return(StatusCode(404, $"Depósito não realizado, favor verificar se existe o identificador {deposito.Identificador} cadastrado.")); } _depositoRepository.Adicionar(deposito); _depositoRepository.AtualizarSaldo(deposito); return(Ok($"Depósito com o valor de R$ {deposito.Valor} para o código identificador {deposito.Identificador} realizado com sucesso.")); } catch (Exception ex) { return(StatusCode(500, $"Erro interno no servidor: {ex.Message.ToString()}")); } }