private void btnConfirmar_Click(object sender, EventArgs e) { try { if (!ValidaCampos()) { return; } Conta ContaDestino = DaoConta.CarregaUnicaConta(Convert.ToInt32(cboContaDestino.SelectedValue)); var valor = Convert.ToDecimal(txtValor.Text); if (ContaOrigem.Id == ContaDestino.Id) { throw new Exception("Selecione como destino uma Conta diferente da Conta de origem"); } if (ContaOrigem.Saldo < valor) { throw new Exception("O valor a ser debitado da conta origem excede o saldo disponível"); } if (MessageBox.Show("Deseja realmente efetuar a transferência?", "Confirmação", MessageBoxButtons.YesNo) == DialogResult.Yes) { ContaOrigem.Saque(valor); ContaDestino.Deposito(valor); DaoConta.AtualizaConta(ContaOrigem); DaoConta.AtualizaConta(ContaDestino); MessageBox.Show("Transferência realizada com sucesso!", "Aviso", MessageBoxButtons.OK, MessageBoxIcon.Information); Close(); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public frmDeposito(int Id) { InitializeComponent(); DaoConta = new DaoConta(); Conta = DaoConta.CarregaUnicaConta(Id); }
public frmTransferencia(int Id) { InitializeComponent(); DaoConta = new DaoConta(); ContaOrigem = DaoConta.CarregaUnicaConta(Id); }