public void Cadastrar(Lancamentos obj)
        {
            //método para impedir o cadastro quando o saldo está menor ou igual a -20000
            if (ColsultarSaldoDia() <= -20000)
            {
                throw new ArgumentException("Não é possível cadastrar o lancamento.  Saldo negativo!");
            }
            else if (obj.DataLancamento < DateTime.Now)
            {
                throw new ArgumentException("Data de lancamento não pode ser do dia anterior");
            }

            //verificar se o lancamento colocado vai exceder os - 20000, mesmo com o saldo acima de 0 ou
            //com o desconto do encargo do dia
            var     _saldoTotal = ColsultarSaldoDia();
            decimal _saldo      = 0;

            if (obj.Tipo.Contains("entrada"))
            {
                _saldo = _saldoTotal + obj.ValorLancamento;
            }
            else
            {
                _saldo = _saldoTotal - obj.ValorLancamento;
            }



            if (_saldo < -20000)
            {
                throw new ArgumentException("Não é possível cadastrar o lancamento. Saldo negativo!");
            }
            else
            {
                repository.Insert(obj);
            }


            //verificar se depois do saldo incluso ele ficou negativo
            if (ColsultarSaldoDia() < 0 && ColsultarSaldoDia() > -20000)
            {
                if (encargosDomain.SelectOne(DateTime.Now) == null)
                {
                    encargosUtilidades.EncargosDia(obj);                    //inclui encargos e o lancamento na tabela lancamento com tipo "saida"
                    obj.Tipo = "saida";

                    repository.Insert(obj);
                }
            }
        }